xfs_repairを実行しようとして、ログを再生するためにファイルシステムをマウントすることを示唆するエラーメッセージを取得し、マウントしても同じエラーメッセージが表示される場合、強制修復を実行する必要があります(の-L
フラグを使用xfs_repair
)。このオプションは最後の手段でなければなりません。
たとえば、CentOS 7インストールで破損したルートパーティションがあった場合を使用します。パーティションをマウントしようとすると、次のエラーメッセージが継続的に表示されます。
マウント:/ dev / mapper / centos-rootを/ mnt / centos-rootにマウントできませんでした:構造のクリーニングが必要です
残念ながら、修復を強制するには、修復を試みる前にログをゼロにする(破壊する)必要があります。この方法を使用する場合、最初に予想されていたよりも多くの破損データで終わる可能性があります。ただし、適切なxfsツールを使用して、永続的な変更を行う前にどのような損害が発生する可能性があるかを確認できます。
xfs_metadumpおよびxfs_mdrestoreを使用して、影響を受けるパーティションのメタデータイメージを作成し、パーティション自体ではなくイメージで強制修復を実行できます。これの利点は、パーティションで実行する前に強制修復に伴う損傷を確認できることです。
これを行うには、まともなサイズのUSBまたは外付けハードドライブが必要です。USBドライブをマウントすることから始めます-私のUSBはにありますが/dev/sdb1
、あなたの名前は違うかもしれません。
mkdir -p /mnt/usb
mount /dev/sdb1 /mnt/usb
マウントしたら、実行xfs_metadump
してパーティションメタデータのコピーをUSBに作成します-再度、影響を受けるパーティションは異なる場合があります。この場合、次の場所に破損したルートパーティションがありました/dev/mapper/centos-root
。
xfs_metadump /dev/mapper/centos-root /mnt/usb/centos-root.metadump
次に、修復を実行して損傷を測定できるように、メタデータをイメージに復元します。
xfs_mdrestore /mnt/usb/centos-root.metadump /mnt/usb/centos-root.img
レスキューモードxfs_mdrestore
では使用できないことがわかりました。代わりに、ライブCentOS CDのレスキューモードにする必要があります。
最後に、イメージの修復を実行できます。
xfs_repair -L /mnt/usb/centos-root.img
修復が完了し、出力と潜在的な損傷を評価したら、パーティションに対して修復を実行するかどうかを決定できます。
パーティションに対して修復を実行するには、単に次を実行します:
xfs_repair -L /dev/mapper/centos-root
他のパーティションの破損もチェックすることを忘れないでください。修復後、システムを再起動すると、正常に起動できるはずです。
ことを忘れないでください-L
フラグは、修理には他の可能な選択肢が存在しない最後の手段として使用する必要があります。
これらのオンライン記事が助けになったことがわかりました: