Shoken Startup Blog

KitchHike Founder/CTO

CentOSでLVM上のルートパーティション(/)をリサイズ

開発用に、ディスク全容量でLVMの論理ボリューム(LV)1つを作成してルートパーティション(/)作ったけど、後から別パーティションを追加したい。環境はCentOS 5.4です。

LVMの構成を変更するにはパーティションをアンマウントしなければならないが、ルートパーティション(/)なのでknoppixなどLive CDで作業を行います。


この2つのサイトを参考に行いました。
KnoppixでLVMをマウントする - しょうこりもなくブログる
論理ボリュームを縮小するには − @IT

今回はKnoppix 6.7.1 を使いました。入手はこちらから。
KNOPPIX Japanese edition

KnoppixからLVMをマウントする

Knoppix起動直後はLVMを認識していないので、vgscanしてActive化する。

[root@dev ~]# lvm vgscan
Reading all physical volumes.  This may take a while...
Found volume group "VolGroup00" using metadata type lvm2
[root@dev ~]# lvm vgchange -a y
4 logical volume(s) in volume group "VolGroup00" now active

ファイルシステムのリサイズ

e2fsck を実行した後、resize2fsを実行。
いきなりresize2fsしようとしても、e2fsckが終わってないと怒られる。
e2fsckは250GBのHDDで1時間くらいかかりました。

[root@dev ~]# e2fsck -f /dev/VolGroup00/LogVol00
e2fsck 1.39 (29-May-2006)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/VolGroup00/LogVol00: 124944/60522496 files (1.0% non-contiguous), 2676448/60506112 blocks

[root@dev ~]# resize2fs /dev/VolGroup00/LogVol00 64G # ファイルサイズを64Gにリサイズ

LVのリサイズ

lvreduceを使って論理ボリューム(LV)をリサイズする。

[root@dev ~]# lvreduce -L 64G /dev/VolGroup00/LogVol00 # LVのサイズを64Gbytesにリサイズ

リサイズ後の情報はlvdisplayで確認。

[root@dev ~]# lvdisplay
  --- Logical volume ---
  LV Name                /dev/VolGroup00/LogVol00
  VG Name                VolGroup00
  LV UUID                gdsbTg-q1L5-aykJ-sFlj-bsZz-JPRC-2JThYa
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                64.00 GB # 64GBになっていることを確認する
  Current LE             2048
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0