トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

LVMを使ってみる

Last-modified: 2013-08-24 (土) 02:14:21 (3899d)
Top / LVMを使ってみる

LVMを使ってみる

vgscanを実行

[root@localhost ~]# vgscan
  Reading all physical volumes.  This may take a while...
  No volume groups found
[root@localhost ~]#
[root@localhost ~]#

Physical Volumeを作成

[root@localhost ~]# fdisk -l

Disk /dev/sda: 80.0 GB, 80000000000 bytes
255 heads, 63 sectors/track, 9726 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14         395     3068415   83  Linux
/dev/sda3             396         428      265072+  82  Linux スワップ
/dev/sda4             429        9726    74686185    5  拡張領域
/dev/sda5             429         938     4096543+  83  Linux
/dev/sda6             939         946       64228+  83  Linux
/dev/sda7             947        1445     4008186   83  Linux
/dev/sda8            1446        1944     4008186   83  Linux
/dev/sda9            1945        2443     4008186   83  Linux
/dev/sda10           2444        2452       72261   82  Linux スワップ
/dev/sda11           2453        3449     8008371   8e  Linux LVM
/dev/sda12           3450        4446     8008371   8e  Linux LVM
/dev/sda13           4447        5443     8008371   8e  Linux LVM
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# pvcreate /dev/sda11
  Physical volume "/dev/sda11" successfully created
[root@localhost ~]# pvcreate /dev/sda12
  Physical volume "/dev/sda12" successfully created
[root@localhost ~]# pvcreate /dev/sda13
  Physical volume "/dev/sda13" successfully created
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# pvdisplay /dev/sda11
  --- NEW Physical volume ---
  PV Name               /dev/sda11
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               8mEVbj-JawU-v97L-GCGq-rPpR-G041-PQP6t9

[root@localhost ~]# pvdisplay /dev/sda12
  --- NEW Physical volume ---
  PV Name               /dev/sda12
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               jkZSaa-3Zi6-EWlf-gnqs-Mg63-Zwng-yjfmmr

[root@localhost ~]# pvdisplay /dev/sda13
  --- NEW Physical volume ---
  PV Name               /dev/sda13
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               YsBCQc-y76j-O5R7-uwTO-44L8-tuAD-Jp4IuR

Volume Group作成

[root@localhost ~]# vgcreate myvg /dev/sda11
  Volume group "myvg" successfully created
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# vgdisplay
  --- Volume group ---
  VG Name               myvg
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               7.64 GB
  PE Size               4.00 MB
  Total PE              1955
  Alloc PE / Size       0 / 0
  Free  PE / Size       1955 / 7.64 GB
  VG UUID               JF2qWp-V8IX-yT4k-bkho-Ww2F-NRjm-l94YY0 

[root@localhost ~]#
[root@localhost ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda11
  VG Name               myvg
  PV Size               7.64 GB / not usable 0
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              1955
  Free PE               1955
  Allocated PE          0
  PV UUID               iMzjbo-V3Ac-oNl6-q0uN-YBwa-1Z7Q-QWEfB6 

  --- NEW Physical volume ---
  PV Name               /dev/sda12
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               FgmLEa-2HnV-jMhW-OLjx-g7rq-wcoT-HFvFZm 

  --- NEW Physical volume ---
  PV Name               /dev/sda13
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               xFm5NB-DeJP-Y2zD-YD4M-52sn-QQoh-hePIMu

Logical Volume作成

[root@localhost ~]# lvcreate -L 10M -n swap myvg
  Rounding up size to full physical extent 12.00 MB
  Logical volume "swap" created
[root@localhost ~]#

PEサイズが4Mのため、オプションで指定している作成サイズは10Mであるが、作成されるLVのサイズは12Mとなる。

また、作成されたLVは以下のようにデバイスファイルが作成される。

[root@localhost ~]# ll /dev/myvg/swap
lrwxrwxrwx  1 root root 21  2月 23 16:14 /dev/myvg/swap -> /dev/mapper/myvg-swap
[root@localhost ~]#

さらにLVを追加

[root@localhost ~]# lvcreate -L 256M -n data /dev/myvg
  Logical volume "data" created
[root@localhost ~]#
[root@localhost ~]# lvdisplay
  --- Logical volume ---
  LV Name                /dev/myvg/swap
  VG Name                myvg
  LV UUID                w7LmUl-az3z-W9eH-QrWu-DeDU-SNw2-notAco
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                12.00 MB
  Current LE             3
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:0

  --- Logical volume ---
  LV Name                /dev/myvg/data
  VG Name                myvg
  LV UUID                ZD1Nv9-Ee7R-bWTH-2zXb-3znZ-RL1j-IBoBQw
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                256.00 MB
  Current LE             64
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:1 

ext3のファイルシステムを作成

[root@localhost ~]# mkfs -t ext3 -L myfs01 /dev/myvg/data
mke2fs 1.35 (28-Feb-2004)
Filesystem label=myfs01
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67371008
32 block groups
8192 blocks per group, 8192 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
        8193, 24577, 40961, 57345, 73729, 204801, 221185

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@localhost ~]#

ここで、VGを確認してみる

[root@localhost ~]# vgdisplay
  --- Volume group ---
  VG Name               myvg
  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               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               7.64 GB
  PE Size               4.00 MB
  Total PE              1955
  Alloc PE / Size       67 / 268.00 MB
  Free  PE / Size       1888 / 7.38 GB
  VG UUID               JF2qWp-V8IX-yT4k-bkho-Ww2F-NRjm-l94YY0

Alloc PE / Size が使用しているPE数/サイズで、268M使用されていることが確認できる。

また、このVGの空き容量が7.38GBであることが確認できる。

VGの拡張

[root@localhost ~]# vgdisplay
  --- Volume group ---
  VG Name               myvg
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                4
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               7.64 GB
  PE Size               4.00 MB
  Total PE              1955
  Alloc PE / Size       117 / 468.00 MB
  Free  PE / Size       1838 / 7.18 GB
  VG UUID               JF2qWp-V8IX-yT4k-bkho-Ww2F-NRjm-l94YY0 

[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda11
  VG Name               myvg
  PV Size               7.64 GB / not usable 0
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              1955
  Free PE               1838
  Allocated PE          117
  PV UUID               iMzjbo-V3Ac-oNl6-q0uN-YBwa-1Z7Q-QWEfB6 

  --- NEW Physical volume ---
  PV Name               /dev/sda12
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               FgmLEa-2HnV-jMhW-OLjx-g7rq-wcoT-HFvFZm 

  --- NEW Physical volume ---
  PV Name               /dev/sda13
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               xFm5NB-DeJP-Y2zD-YD4M-52sn-QQoh-hePIMu 

[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# pvcreate /dev/sda12
  Physical volume "/dev/sda12" successfully created
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# vgextend myvg /dev/sda12
  Volume group "myvg" successfully extended
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# vgdisplay
  --- Volume group ---
  VG Name               myvg
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  6
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                4
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               15.27 GB
  PE Size               4.00 MB
  Total PE              3910
  Alloc PE / Size       117 / 468.00 MB
  Free  PE / Size       3793 / 14.82 GB
  VG UUID               JF2qWp-V8IX-yT4k-bkho-Ww2F-NRjm-l94YY0 

[root@localhost ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda11
  VG Name               myvg
  PV Size               7.64 GB / not usable 0
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              1955
  Free PE               1838
  Allocated PE          117
  PV UUID               iMzjbo-V3Ac-oNl6-q0uN-YBwa-1Z7Q-QWEfB6 

  --- Physical volume ---
  PV Name               /dev/sda12
  VG Name               myvg
  PV Size               7.64 GB / not usable 0
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              1955
  Free PE               1955
  Allocated PE          0
  PV UUID               B5JBIn-PpdE-cQ6J-FZvf-YgCH-sznQ-377epH

  --- NEW Physical volume ---
  PV Name               /dev/sda13
  VG Name
  PV Size               7.64 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               xFm5NB-DeJP-Y2zD-YD4M-52sn-QQoh-hePIMu

[root@localhost ~]#

LVの拡張

[root@localhost ~]# lvdisplay /dev/myvg/mylv01
  --- Logical volume ---
  LV Name                /dev/myvg/mylv01
  VG Name                myvg
  LV UUID                gFzLBw-65R0-L59E-GFkh-HpYU-Scr9-BlIniQ
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                100.00 MB
  Current LE             25
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:3

[root@localhost ~]#
[root@localhost ~]# lvextend -L +128M /dev/myvg/mylv01
  Extending logical volume mylv01 to 228.00 MB
  Logical volume mylv01 successfully resized
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# lvdisplay /dev/myvg/mylv01
  --- Logical volume ---
  LV Name                /dev/myvg/mylv01
  VG Name                myvg
  LV UUID                gFzLBw-65R0-L59E-GFkh-HpYU-Scr9-BlIniQ
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                228.00 MB
  Current LE             57
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:3

[root@localhost ~]#

ファイルシステムのサイズ変更

まず、サイズ変更対象をアンマウントする。

[root@localhost ~]# umount /lvm/mylv01
[root@localhost ~]#

次に、リサイズのコマンドを実行

[root@localhost ~]# resize2fs -p /dev/myvg/mylv01
resize2fs 1.35 (28-Feb-2004)
Please run 'e2fsck -f /dev/myvg/mylv01' first.

[root@localhost ~]#

すると、e2fsckしろっておこられる。

おこられたのでやってみる。

[root@localhost ~]# e2fsck -f /dev/myvg/mylv01
e2fsck 1.35 (28-Feb-2004)
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/myvg/mylv01: 11/25688 files (9.1% non-contiguous), 8914/102400 blocks
[root@localhost ~]#

あらためてresize2fsを実行

[root@localhost ~]# resize2fs -p /dev/myvg/mylv01
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/myvg/mylv01 to 233472 (1k) blocks.
Begin pass 1 (max = 16)
Extending the inode table     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/myvg/mylv01 is now 233472 blocks long. 

[root@localhost ~]#

成功!

ちなみに、resize2fsコマンドは、引数の一番最後にサイズをとるが、指定しないとパーティションの最大サイズにファイルシステムのサイズを変更する。

ファイルシステムのサイズ変更(縮小)

まず、テスト用のファイルを作成

[root@localhost ~]# mount /dev/myvg/mylv01 /lvm/mylv01/
[root@localhost ~]#
[root@localhost ~]# echo test > /lvm/mylv01/a.txt
[root@localhost ~]#

サイズ変更対象をアンマウント

[root@localhost ~]# umount /lvm/mylv01
[root@localhost ~]#

e2fsckを実行

[root@localhost ~]# e2fsck -f /dev/myvg/mylv01
e2fsck 1.35 (28-Feb-2004)
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/myvg/mylv01: 12/57304 files (8.3% non-contiguous), 13415/233472 blocks
[root@localhost ~]#

resize2fsを実行。最後の引数に「100M」をしていすることで、100Mにサイズを変更すると言う意味になる。

[root@localhost ~]# resize2fs -p /dev/myvg/mylv01 100M
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/myvg/mylv01 to 102400 (1k) blocks.
Begin pass 3 (max = 29)
Scanning inode table          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/myvg/mylv01 is now 102400 blocks long. 

[root@localhost ~]#

変更後、マウントする。

[root@localhost ~]# mount /dev/myvg/mylv01
mount: /etc/fstab や /etc/mtab 内に /dev/mapper/myvg-mylv01 を見つけられません
[root@localhost ~]# mount /dev/myvg/mylv01 /lvm/mylv01
[root@localhost ~]#
[root@localhost ~]#

ファイル、及びサイズの確認

[root@localhost ~]# cat /lvm/mylv01/
a.txt       lost+found/
[root@localhost ~]# cat /lvm/mylv01/a.txt
test
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# df
Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
/dev/sda2              3020172    655432   2211320  23% /
/dev/sda1               101086     16965     78902  18% /boot
none                   1032660         0   1032660   0% /dev/shm
/dev/sda6                62193      5575     53407  10% /home
/dev/sda5              4032092   2224808   1602460  59% /usr
/dev/sda7              3945128    282312   3462408   8% /media/ext3
/dev/sda8              3945128      7832   3736888   1% /media/ext2
/dev/mapper/myvg-mylv02
                         99150      5664     88366   7% /lvm/mylv02
/dev/mapper/myvg-mylv01
                         99150      5665     89389   6% /lvm/mylv01
[root@localhost ~]#

成功!