lvm領域の縮小

現在、ウインドウズとfedora9のデュアルブートでパソコンを使っているのだけれども、どうにもウインドウズの方の領域が足りなくなったので、Linuxのパーティションをちょっと切ってウインドウズの方に足すことにした。

とりあえず、gpartedを使ってみたけれども、linuxはlvmだったんだね、忘れてました。

んで、とりあえず、fedora9のliveCDから立ち上げて、fsckしてresize2fsして、lvreduceした。(後から知ったのだけど、e2fsadmというコマンドで一気にできるんだと。)

が、その後が問題。lvの物理的な位置を移動したり、pvのサイズを小さくするのはできなそうだ。なので、方針変更。

ddで、小さくしたパーティションを丸ごと外付けHDDに移してからパーティションをきりなおし、そこにddで戻すことにした。HDDはvfatだったので、4GB以上のファイルは置けない。だから、ちょっと工夫して、、、。

# dd if=/dev/vg/lv | gzip -c | split -b 2000m – /mnt/sdb1/backup.img.gz.

こんな感じ。別にgzipはしなくていいけど、容量がでかくなりがちなので、バックアップもついでにって時はこんな感じで。

その後、gpartedでパーティションを削除。別にきってあるbootパーティションを移動、windowsパーティションを広げる。で、次にfdiskでlvmパーティションを作成して、pvcreate、vgcreate、lvcreateする。元の構成はlvmの中にスワップを切ってあったので、それにあわせてmkswapでスワップ領域を確保。

次は、mkfs、、ではなくて、バックアップしておいたパーティションを元に戻す。これにもddコマンドでいいんだけれども、gzipしてsplitしていたので、、、

# cat /mnt/sdb1/backup.img.gz.* | gzip -dc | dd of=/dev/vg/lv

こんな感じ。

で、めでたしめでたしと思いきや、1年ぶりくらいにやったデフラグ、chkdsk後に起動しなくなる。

パーティションまわりのトラブルかと思って、とりあえずfedora9liveCDからたちあげ、testdiskを起動。(liveCDに入ってないので、yumで入れて、、、knoppixにははじめからtestdiskは言ってたと思う。)

とりあえずウィンドウズパーティションをブートパーティションにしてMBRの復旧。
これでなんとかウインドウズは起動できた。次に、grubをMBRにいれないといけないんだけど、grub-installがなぜか蹴られたので、grubを立ち上げて

# /sbin/grub
grub> device (hd0) /dev/sds
grub> root (hd0,1)    ←自分の環境では2番目がbootパーティションだった
grub> setup (hd0)
grub> quit

と、手動でインストール。
これでなんとか復旧して元通りになりました。

以下のURLを参考にどうぞ。自分で使ったり使わなかったりですが。

grubのセットアップ
http://www.xfield.org/wiki/?grub

lvmの操作
http://pantora.net/pages/linux/lvm/

パーティションのバックアップ(英語)
http://wiki.linuxquestions.org/wiki/Dd


1 thought on “lvm領域の縮小

コメントを残す