web-dev-qa-db-ja.com

リムーバブルLVM2デバイスを適切に取り外し/接続する方法は?

LVM2が搭載されたリムーバブル(ホットプラグ、USBなど)ストレージデバイスを適切に取り外し(削除)し、後でプラグ(挿入)する方法

見つかりました このメモ

削除(取り外し、取り外し):

lvchange -an /dev/your_volume_group_name
vgexport -a

挿入(プラグ):

vgimport -a
lvchange -ay /dev/your_volume_group_name

「すべて」のオプションを使用しているかどうかはわかりません-aはありませんか?

もう1つ、状況によっては、このようなシナリオでvgscanpvscanを使用する必要があるのでしょうか。自動化ソリューションを考えています。

15

VGをエクスポートする必要はありません。VGをあるシステムから別のシステムに移行するために使用されます。

単にvgchange -an vgname取り外したいボリュームグループのすべての論理ボリュームを非アクティブ化します。

その後、デバイスを再び接続した後、vgchange -ay vgnameは、vgname VG内のすべての論理ボリュームを再アクティブ化し、LVをマウントして使用できます。

デバイスの認識は、ハードウェアやカーネルモジュールなどに依存しますが、これは最新のキットで機能するはずです。

13
bsd

次のようなスクリプトを使用します。

  • ボリュームグループ内のすべてのファイルシステムをマウント解除しますvg_name
  • vg_name内のすべてのファイルシステムがマウント解除されている場合は、VGを利用不可に設定します
  • メモリバッファをディスクに同期することを忘れないでください...
  • sispmctlを使用して外部ディスクの電源をオフにします
#!/ bin/bash 
 echo "Unmounting filesystem" 
 mount | grep vg_name && {
 mount | grep vg_name |カット-d '' -f3 | xargs umount -v 
} 
 
 mount | grep vg_name || {
 echo "Set VG unavailable" 
/sbin/vgchange -an/dev/vg_name && {
 echo "同期ディスク" 
 sync; sync && {
 echo "ディスクの電源を切る" 
/usr/local/bin/sispmctl -D 01:01:4b:54:e5 -f 1 
} 
} 
} 

ディスクが接続されると、システムで適切なモジュールが使用可能になると、カーネルが自動的にディスクを見つけます(これは通常、メインストリームディストリビューションの場合です)。

エクスポート/インポートは、PV/VG/LVが変更され、VGが異なるシステムに接続されている場合にのみ必要です。その場合、vgexportはvgchangeの後に移動します。

1
jippie