LV拡張

LVM(logical volume manager:論理ボリュームマネージャ)を使用しているときに、LV(logical volume:論理ボリューム)を拡張する方法

  1. 拡張する前の[LV Size]を確認

    コマンド: lvdisplay LVPath

    ※LV[testlv]を確認
    # lvdisplay /dev/VolGroup00/lvtest 
      --- Logical volume ---
      LV Name                /dev/VolGroup00/lvtest
      VG Name                VolGroup00
      LV UUID                wvvKP2-Gi5y-xZDu-qT6W-kfkc-OTW9-4h01aD
      LV Write Access        read/write
      LV Status              available
      # open                 1
      LV Size                128.00 MB ←現在のLVサイズ
      Current LE             4
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     256
      Block device           253:2
  2. 拡張するLVが所属するVGのPE Sizeと空きを確認

    コマンド: vgdisplay VG名

    ※VG[VolGroup00]を確認
    # vgdisplay VolGroup00
      --- Volume group ---
      VG Name               VolGroup00
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  3
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                2
      Open LV               2
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               4.88 GB
      PE Size               32.00 MB ←ここの数値がPE size
      Total PE              171
      Alloc PE / Size       160 / 5.00 GB
      Free  PE / Size       11 / 352.00 MB  ←ここの数値がVGの空き
      VG UUID               327z1U-sD31-u5mb-otyC-ZgD0-Khb3-MVBe09
  3. lvを拡張

    コマンド: lvextend --extents=+LogicalExtentsNumber LVPath

    ※ LVPath[/dev/VolGroup00/lvtest]に128MB足したい場合
    # lvextend --extents=+4 /dev/VolGroup00/lvtest
      Extending logical volume lvtest to 256.00 MB
      Logical volume lvtest successfully resized
  4. 正常に拡張されているか[LV Size]を確認をする

    コマンド: lvdisplay LVPath

    ※LV[testlv]を確認
    # lvdisplay /dev/VolGroup00/lvtest
      --- Logical volume ---
      LV Name                /dev/VolGroup00/lvtest
      VG Name                VolGroup00
      LV UUID                wvvKP2-Gi5y-xZDu-qT6W-kfkc-OTW9-4h01aD
      LV Write Access        read/write
      LV Status              available
      # open                 1
      LV Size                256.00 MB ←LVサイズが128MBから256MBに拡張されている
      Current LE             8
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     256
      Block device           253:2
  5. ファイルシステムのリサイズを実行する(反映する)

    コマンド: resize2fs LVPath

    ※3の操作を反映
    # resize2fs /dev/VolGroup00/lvtest
    resize2fs 1.39 (29-May-2006)
    Filesystem at /dev/VolGroup00/lvtest is mounted on /test; on-line resizing required
    Performing an on-line resize of /dev/VolGroup00/lvtest to 262144 (1k) blocks.
    The filesystem on /dev/VolGroup00/lvtest is now 262144 blocks long.
    ※因みに、この操作をする前にファイルシステムのサイズを確認すると、拡張されていない
    # df -h
    Filesystem          サイズ  使用  残り 使用% マウント位置
    /dev/mapper/VolGroup00-LogVol00
                          4.3G  2.4G  1.7G  59% /
    /dev/sda1              99M   25M   70M  26% /boot
    tmpfs                 125M     0  125M   0% /dev/shm
    /dev/mapper/VolGroup00-lvtest
                          124M  5.6M  113M   5% /test ←resize2fsをする前は128MBのままになっている
  6. ファイルシステムのサイズを確認する
    コマンド: df -h
    # df -h
    Filesystem          サイズ  使用  残り 使用% マウント位置
    /dev/mapper/VolGroup00-LogVol00
                          4.3G  2.4G  1.7G  59% /
    /dev/sda1              99M   25M   70M  26% /boot
    tmpfs                 125M     0  125M   0% /dev/shm
    /dev/mapper/VolGroup00-lvtest
                          248M  6.1M  230M   3% /test ←サイズが256MBに拡張されている

※RHEL4 update3ではマウント状態で拡張できなかった為、手順が少々面倒でした。
あまり覚えてませんが、一度アンマウントしてe2fsck走らせてやるのだったかな・・・。
エラーに手順が出てくるのでそれでできますよ(汗
ログがあったら貼り付けておきますよ。