Si vous essayez d'exécuter xfs_repair , en obtenant le message d'erreur qui suggère de monter le système de fichiers pour relire le journal, et après avoir toujours reçu le même message d'erreur, vous devrez peut-être effectuer une réparation forcée (en utilisant l' -L
indicateur avec xfs_repair
). Cette option devrait être un dernier recours.
Par exemple, je vais utiliser un cas où j'avais une partition racine corrompue sur mon installation CentOS 7. Lors de la tentative de montage de la partition, j'ai toujours reçu le message d'erreur ci-dessous:
montage: échec du montage / dev / mapper / centos-root sur / mnt / centos-root: la structure doit être nettoyée
Malheureusement, forcer une réparation impliquerait de mettre à zéro (détruire) le journal avant de tenter une réparation. Lorsque vous utilisez cette méthode, il existe un potentiel de se retrouver avec plus de données corrompues que prévu initialement; cependant, nous pouvons utiliser les outils xfs appropriés pour voir quels types de dommages peuvent être causés avant d'apporter des modifications permanentes.
À l'aide de xfs_metadump et xfs_mdrestore , vous pouvez créer une image de métadonnées de la partition affectée et effectuer la réparation forcée sur l'image plutôt que sur la partition elle-même. Les avantages de ceci sont la possibilité de voir les dommages qui accompagnent une réparation forcée avant de l'exécuter sur la partition.
Pour ce faire, vous aurez besoin d'un disque dur USB ou externe de taille décente. Commencez par monter la clé USB - mon clé USB se trouvait à /dev/sdb1
, la vôtre peut être nommée différemment.
mkdir -p /mnt/usb
mount /dev/sdb1 /mnt/usb
Une fois monté, exécutez xfs_metadump
pour créer une copie des métadonnées de partition sur l'USB - encore une fois, votre partition affectée peut être différente. Dans ce cas, j'avais une partition racine corrompue située à /dev/mapper/centos-root
:
xfs_metadump /dev/mapper/centos-root /mnt/usb/centos-root.metadump
Ensuite, vous souhaiterez restaurer les métadonnées dans une image afin que nous puissions effectuer une réparation et mesurer les dommages.
xfs_mdrestore /mnt/usb/centos-root.metadump /mnt/usb/centos-root.img
J'ai trouvé qu'en mode de secours xfs_mdrestore
n'est pas disponible, et à la place, vous devrez être en mode de secours d'un CD CentOS en direct.
Enfin, nous pouvons effectuer la réparation sur l'image:
xfs_repair -L /mnt/usb/centos-root.img
Une fois la réparation terminée et après avoir évalué la sortie et les dommages potentiels, vous pouvez déterminer si vous souhaitez effectuer la réparation sur la partition.
Pour exécuter la réparation sur la partition, exécutez simplement:
xfs_repair -L /dev/mapper/centos-root
N'oubliez pas de vérifier également les autres partitions. Après les réparations, redémarrez le système et vous devriez pouvoir démarrer avec succès.
N'oubliez pas que le -L
drapeau doit être utilisé en dernier recours lorsqu'il n'y a aucune autre option possible à réparer.
J'ai trouvé que ces articles en ligne ont aidé:
J'ai eu cette erreur quand le centos 7 s'est arrêté à l'intérieur d'une machine virtuelle kvm:
corruption de métadonnées détectée chez xfs ...
lorsque j'utilise le journal avec «journalctl -xe», j'ai trouvé une erreur de montage:
/ dev / mapper / root / sysroot
Je le résous en utilisant:
xfs_repair / dev / mapper / root
Ensuite, le système complète les sept phases, puis redémarre à l'aide de
./fermer
Et puis la machine virtuelle centos 7 fonctionne bien…
Cordialement
Remarque: peut-être que vous / dev / mapper / root avez un autre nom, veuillez regarder votre journal d'erreurs avec journalctl -xe pour trouver le nom de votre unité mal montée
la source