Sto cercando di decidere su un filesystem e vorrei sapere se è possibile sostituire un'unità guasta in RAID btrfs senza tempi di inattività.
Supponiamo che crei un nuovo filesystem btrfs usando il comando
mkfs.btrfs -d raid1 /dev/sdb /dev/sdc
Supponiamo ora che un giorno
/dev/sdc
fallisca. Ci sono due possibilità: può fallire gradualmente, mostrando errori SMART - in questa situazione posso aggiungere un nuovo dispositivo conbtrfs device add /dev/sde /mnt; btrfs filesystem balance /mnt
e quindi rimuovere quello vecchio conbtrfs device delete /dev/sdc /mnt
.Ma se all'improvviso fallisce, diventa illeggibile ... Una ricerca web dice in questa situazione che devo prima smontare il filesystem, montare in modalità degradata, aggiungere un nuovo dispositivo, quindi rimuovere il dispositivo mancante.
umount /mnt mount -o degraded /dev/sdb /mnt btrfs device add /dev/sdf /mnt btrfs device delete missing /mnt
Uno smontaggio è ovviamente un'operazione dirompente, quindi ci sarebbero tempi di inattività - qualsiasi applicazione che utilizza il filesystem otterrebbe un errore I / O. Ma questo tipo di "tutorial" su btrfs sembra obsoleto, considerando che btrfs è in forte sviluppo.
La domanda è: considerando l'attuale stato di btrfs, è possibile farlo online, cioè senza smontare?
In caso contrario, esiste una soluzione solo software in grado di soddisfare questa esigenza?
btrfs replace mountpoint old_disk new_disk
stato aggiunto 3.8 .