15 votes

Un disque Btrfs défaillant dans un RAID-1 peut-il être remplacé en direct ?

J'essaie de me décider pour un système de fichiers et j'aimerais savoir s'il est possible de remplacer un disque défaillant dans un RAID btrfs sans temps d'arrêt.

  1. Supposons que je crée un nouveau système de fichiers btrfs en utilisant la commande

    mkfs.btrfs -d raid1 /dev/sdb /dev/sdc
  2. Supposons maintenant qu'un jour /dev/sdc échoue. Il y a deux possibilités : il peut tomber en panne progressivement, en affichant des erreurs S.M.A.R.T. - dans cette situation, je peux ajouter un nouveau périphérique avec btrfs device add /dev/sde /mnt; btrfs filesystem balance /mnt et ensuite supprimer l'ancien avec btrfs device delete /dev/sdc /mnt .

  3. Mais s'il échoue soudainement, devenant illisible... Une recherche sur le web indique que dans cette situation, je dois d'abord démonter le système de fichiers, le monter en mode dégradé, ajouter un nouveau périphérique, puis supprimer le périphérique manquant.

    umount /mnt
    mount -o degraded /dev/sdb /mnt
    btrfs device add /dev/sdf /mnt 
    btrfs device delete missing /mnt

Un démontage est évidemment une opération perturbatrice et il y aurait donc un temps d'arrêt - toute application utilisant le système de fichiers obtiendrait une erreur d'entrée/sortie. Mais ce genre de "tutoriels" sur btrfs semble dépassé, étant donné que btrfs est en plein développement.

La question est la suivante : compte tenu de l'état actuel de btrfs, est-il possible de faire cela en ligne, c'est-à-dire sans démonter ?

Sinon, existe-t-il une solution uniquement logicielle qui peut répondre à ce besoin ?

11voto

Brian Points 8766

Dans Linux 3.8, btrfs replace mountpoint old_disk new_disk a été ajouté. Si vous utilisez un noyau récent, il fournira la fonctionnalité que vous recherchez.

1voto

Volker Points 11

Petite correction, la syntaxe actuelle est :

btrfs replace start OLDDEV NEWDEV MOUNTPOINT

qui s'inscrit alors en arrière-plan.

Vous pouvez vérifier le statut avec

btrfs replace status MOUNTPOINT

qui vous montrera un statut continuellement mis à jour de l'opération de remplacement.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X