web-dev-qa-db-ja.com

ベストプラクティスは、lvmボリュームでファイルシステムチェックを実行しますか?

多くのシステムがext4を直接ブロックデバイスに、他のシステムをlvmに配置します。私は日常的に、ブロックデバイス上で直接ext4を使用して新しいシステムを作成し、tune2fsを使用して自動ファイルシステムチェックを行っています。 CentOSの古いバージョン(4、5、6など)では、LVMのextファイルシステムでも同じことができますが、新しいバージョンではできません。ファイルシステムがLVM上にあるときにチェックされることを確認するためのコマンドのベストプラクティスセットは何ですか?

LVMボリュームが破損していないことを確認する最良の方法は何ですか? LVMファイルシステムに対してfsckを実行する方法は? fsを自動的にチェックするためにlvmに組み込まれているものはありますか?もしそうなら、どのログファイルエントリが実際にチェックが行われたことを証明しますか?

  1. シングルユーザーモードで起動し、diskmapperサービスを停止してmountを実行し、すべてのlvmボリュームが[〜#〜] not [〜#〜]マウントされていることを確認します。 fsck /dev/mapper/vg0どのパラメータを使用しますか?
  2. または、LiveCDから起動します/ LVMを自動的にマウントせず、そこからfsckを実行しませんか?

LVMのextファイルシステムにtune2fsを使用する方法はありますか?ファイルシステムチェックを実行する最も頻繁な方法は、起動時にtune2fsを介して定期的な間隔でOSに自動的に実行させることです:tunefs -c 5 -i 7days /dev/sda1ですが、lvmでは機能しません。

Fsckがその方法である場合、どのスイッチがそれに渡すのですか? lvmがない場合、i fsck -c -c -D -C0 /dev/sda1画像から不良ブロックを取得し、フォルダ構造を最適化します。 fsckを実行する前に、どのlvmコマンドを実行する必要がありますか?

過去に参照したドキュメントのほとんどは入手できません。

2
rjt

LVMファイルシステムに対してfsckを実行する方法

最初にドライブのスナップショットまたはバックアップを作成することをお勧めします。
1。 2.修正するドライブに応じて。
grub行にsystemd.unit=emergency.targetを追加して緊急モードで起動するのがよいスタートです。 /はまだマウントされています。

fsckを使用する場合、どのスイッチがそれに渡すのですか?

ルートパーティションを予行演習(fsck -N)でチェックして、エラーが存在するかどうかを確認できます。これを実際に修正するには、外部デバイスから起動する必要があります。 (fsck -yは、修正することがたくさんある場合に役立ちます。検出されたエラーごとに煩わしい「修正(y)?」の質問をスキップします。)

fsを自動的にチェックするためにlvmに組み込まれているものはありますか?
(ファイルシステムがLVM上にあるときにチェックされることを確認するためのコマンドのベストプラクティスセットは何ですか?)

いいえ。AFAIK/etc/fstab-6番目のフィールドでこれを設定しています。 (man fstabを参照)

6番目のフィールド(fs_passno)は、fsck(8)プログラムが再起動時にファイルシステムチェックを行う順序を決定するために使用されます。ルートファイルシステムはfs_passnoを1に指定し、他のファイルシステムはfs_passnoを2に指定する必要があります。ドライブ内のファイルシステムは順次チェックされますが、異なるドライブ上のファイルシステムは同時にチェックされ、ハードウェアで利用可能な並列処理を利用します。 6番目のフィールドが存在しないかゼロの場合、ゼロの値が返され、fsckはファイルシステムをチェックする必要がないと想定します。

もしそうなら、どのログファイルエントリが実際にチェックが行われたことを証明しますか?

これはファイルシステムに保存されます。 ext2/ext3/ext4の場合、次のようになります(13のfsckで、マウント数は0に設定されます。tune2fs -C <n>マウント数を手動で設定)

Sudo tune2fs -l /dev/mapper/vg0-lv0 | grep -i "mount count" 

Mount count:              17
Maximum mount count:      30

(XFS、btrfsなどの他のファイルシステムは動作が異なりますが、アイデアはわかります)

fsckを実行する前にどのlvmコマンドを実行する必要がありますか?

none

1
Michael D.

fsckはファイルシステムチェッカーです。 LVMはストレージボリュームマネージャーであり、ファイルシステムではありません。ファイルシステムが存在するディスクパーティションでファイルシステムを実行するのと同じ方法で、ファイルシステムが存在するLVM論理ボリュームでfsckを使用します。

LVMメタデータは破損している可能性がありますが、通常、LVMは複数の場所に保存されているバックアップから自動的に修正し、/ etc/lvm/backup /(外部からバックアップする)のコピーも使用できます。大災害の事例。

1
jsbillings