pvs、vgsなどのlvmコマンドの出力にリストされているroot_disk LVMを取得できません。 lvm.confファイルには、次のようにglobal_filterがあります。
global_filter = [ "a|^/dev/mapper/96005076307ffc6a60000000000001501.*|", "r/.*/" ]
96005076307ffc6a60000000000001501は私のroot_diskで、ディスクは1つだけです。 root_diskの末尾に "$"シンボルを追加するなど、global_filterで他のオプションを試してみましたが(例:/dev/mapper/96005076307ffc6a60000000000001501p2)、私は役に立ちませんでした。
lvm.confのPreferred_namesエントリは次のとおりです。
preferred_names = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/[hs]d" ]
グローバルフィルタに「/dev/dm-0」を含めると、たとえば「pvs」コマンドの出力でroot_lvmが検出されます。ただし、「/dev/dm -N」は名前が一定ではなく、オペレーティングシステムで内部的に使用されるため、使用しないことをお勧めします。
これは、global_filterの一部が期待どおりに検出された場合、root_lvmおよび他のディスクに対してのみ発生します。
理由がわからない。 "pvs"コマンドの出力からroot_diskの/ dev / mapperエントリを取得する必要があります。
答え1
デバイスマッパーマルチパスを使用していますか?
デバイス名は に/dev/mapper/<WWID>
ありません。 (RedHatはデフォルトでinを使用します。)preferred_names
lvm.conf
user_friendly_names yes
/etc/multipath.conf
Preferred_namesをこのように変更するとどうなりますか?
preferred_names = [ "^/dev/mpath/", "^/dev/mapper/[0-9][0-9a-fp]*", "^/dev/mapper/mpath", "/dev/[hs]d" ]
また、ルートファイルシステムを含むLVMボリュームグループを有効にする前に、マルチパスを有効にするようにinitramfsが設定されていることを確認する必要があります。 RHEL 5以下では、ルートファイルシステムがマルチパスディスクにある場合は、/etc/sysconfig/mkinitrd/multipath
このファイルが含まれていることを確認してください。MULTIPATH=yes
この問題を解決する必要がある場合は、RHEL 5以下の手順は次のとおりです。
MULTIPATH=yes
追加する/etc/sysconfig/mkinitrd/multipath
- initramfsを更新してください
- 別のファイルシステムの場合は、
/boot
一時的にコメントアウトする/etc/fstab
- 再起動
- 次に、LVMがマルチパスデバイスを介してルートVGにアクセスしていることを確認します。
- /etc/fstab のコメントを外してマウント
/boot
し、マルチパスデバイスを使用してマウントされていることを確認します。
マルチパスデバイスが開かれると、マルチパスサブシステムはマルチパスデバイスのコンポーネントデバイスに排他ロックを適用します。これは、LVMがコンポーネントデバイスを防ぐのに十分である必要があります。ただし、マルチパスサブシステムがそのロックを取得できない場合、これはコンポーネントデバイスの1つがすでに別のコンポーネントで使用されていることを意味します。これは、通常、マルチパスサブシステムがシステムの起動順序で遅すぎて開始されたことを意味します。結果は通常、あなたが経験したものと似ています。
私が間違って推測した場合、出力はvgscan -vvvv
それを理解するのに役立ちます。