それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

LVMの物理HDDを交換するときの手順

LVMでディスクを交換するときは最初にやるのはこれ

新しいディスクをLVMに接続し LVに割り当てる。
pvmove でディスク交換
vg から取り外し
物理的に取り出し

vgから古いディスクの取り外し( VG容量に余裕があるとき、容量を拡張するとき)

vg からディスクを外す前に pvmoveコマンドを先に実行する必要がある。

pvmove は物理ディスクにかきこまれたlvmが使っている領域をべつのlvm/ lv の割り当てディスクに移動させて、物理ディスクを安全に解放してくれる。

なんて便利な機能。

しかし、よくミスる。 「取り外しー>容量減らすー>ディスク減らす」と考えて、ついついvgreduce を打ってしまいまがち

pvmove /dev/sdX
vgreduce vg-name /dev/sdX
pvremove /dev/sdX
resize2fs /dev/mapper/vg-name-lvname

この順番が大事

ついつい vgreduce をやlvextend先にやろうとしてしまう。

pvmove は本当に便利なのにね。

容量の大きなディスクに入れ替えるとき( VG容量が満杯の余裕がないとき)

pvcreate /dev/sdX
vgextent  VGNAME /dev/sdX
pvmove /dev/sdY /dev/sdX
vgreduce VGNAME /dev/sdY
pvremove /dev/sdY
  1. 新しいディスクを pvcreate
  2. vg に新HDDを追加
  3. pvmove で旧HDD→新HDDへ
  4. vgreduce でVGの旧HDDを削減
  5. pvcremove で旧HDDを削除

こちらも順番が大事。

もし、pvmove をやめたいとき

pvmove 中に再起動が必要になったとか。pvmove 中に端末がおちちゃって経過がわからないとか、time コマンドをつけたかったとか。そういときに一旦中止する時にどうするのか。

pvmove --abort

これでpvmoveをキャンセルできます。

縮小するとき

LVMを必要以上に確保ししていて別のディスクに移したいとときは、

sudo mv /mnt/cryptDisk01/SOME_DATA /mnt/newDISK # 必要に応じ容量確保
sudo lvreduce -L -8T data/video --resizefs # 必要に応じて適当にLVを調整
sudo pvmove /dev/mapper/cryptDisk01
sudo vgreduce data /dev/mapper/cryptDisk01
sudo pvremove /dev/mapper/cryptDisk01
sudo lvextend -l 100%FREE  data/video
sudo resize2fs  /dev/mapper/data-video

適宜やれば確実に終わる。8TBは数日かかった・・・

2020-07-17

記述を変更