Ubuntu 16.04
Sponsored Link

論理ボリュームの操作
2016/09/12
 
論理ボリュームの基本的な操作方法です。
事前にボリュームグループを作成しておく必要があります
[1] 論理ボリュームを作成する。
# 論理ボリューム「lv_data」を ボリュームグループ「vg_dlp」に 50G の容量で作成

root@dlp:~#
lvcreate -L 50G -n lv_data vg_dlp

  Logical volume "lv_data" created
# 空き容量を全て割り当てる場合は以下のように指定

root@dlp:~#
lvcreate -l 100%FREE -n lv_data vg_dlp

  Logical volume "lv_data" created
[2] 論理ボリュームを表示する。
root@dlp:~#
lvdisplay /dev/vg_dlp/lv_data

  --- Logical volume ---
  LV Path                /dev/vg_dlp/lv_data
  LV Name                lv_data
  VG Name                vg_dlp
  LV UUID                nlTuzs-T9nC-hRIC-4Vgh-Bm9G-t4EI-kTu2NU
  LV Write Access        read/write
  LV Creation host, time dlp.srv.world, 2015-07-20 09:23:36 +0900
  LV Status              available
  # open                 0
  LV Size                80.00 GiB
  Current LE             20479
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2
[3] 論理ボリュームの名前を変更する。
# lv_data から lv_storage に変更

root@dlp:~#
lvrename vg_dlp lv_data lv_storage

  Renamed "lv_data" to "lv_storage" in volume group "vg_dlp"
root@dlp:~#
lvdisplay /dev/vg_dlp/lv_storage

  --- Logical volume ---
  LV Path                /dev/vg_dlp/lv_storage
  LV Name                lv_storage
  VG Name                vg_dlp
  LV UUID                nlTuzs-T9nC-hRIC-4Vgh-Bm9G-t4EI-kTu2NU
  LV Write Access        read/write
  LV Creation host, time dlp.srv.world, 2015-07-20 09:23:36 +0900
  LV Status              available
  # open                 0
  LV Size                80.00 GiB
  Current LE             20479
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2
[4] 論理ボリュームのレポートを出力する。
root@dlp:~#
lvs

  LV         VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root       centos -wi-ao---- 45.62g
  swap       centos -wi-ao----  3.89g
  lv_storage vg_dlp -wi-a----- 80.00g
[5] 論理ボリュームをスキャンする。
root@dlp:~#
lvscan

  ACTIVE            '/dev/centos/swap' [3.89 GiB] inherit
  ACTIVE            '/dev/centos/root' [45.62 GiB] inherit
  ACTIVE            '/dev/vg_dlp/lv_storage' [80.00 GiB] inherit
[6] 論理ボリュームのスナップショットを取得する。
# 「lv_storage」のスナップショットを「snap-lv_storage」という名前で作成

root@dlp:~#
lvcreate -s -L 50G -n snap-lv_storage /dev/vg_dlp/lv_storage

  Logical volume "snap-lv_storage" created.
root@dlp:~#
lvdisplay /dev/vg_dlp/lv_storage /dev/vg_dlp/snap-lv_storage

  --- Logical volume ---
  LV Path                /dev/vg_dlp/lv_storage
  LV Name                lv_storage
  VG Name                vg_dlp
  LV UUID                M7mPAd-e2BU-XIVY-z7tN-5SBS-eEiX-biB90f
  LV Write Access        read/write
  LV Creation host, time dlp.srv.world, 2015-07-20 09:33:33 +0900
  LV snapshot status     source of
                         snap-lv_storage [active]
  LV Status              available
  # open                 0
  LV Size                30.00 GiB
  Current LE             7680
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2

  --- Logical volume ---
  LV Path                /dev/vg_dlp/snap-lv_storage
  LV Name                snap-lv_storage
  VG Name                vg_dlp
  LV UUID                YjbZR4-Snih-3KEE-O26y-vbQb-sLBq-Uv1CIJ
  LV Write Access        read/write
  LV Creation host, time dlp.srv.world, 2015-07-20 09:34:21 +0900
  LV snapshot status     active destination for lv_storage
  LV Status              available
  # open                 0
  LV Size                30.00 GiB
  Current LE             7680
  COW-table size         30.00 GiB
  COW-table LE           7680
  Allocated to snapshot  0.00%
  Snapshot chunk size    4.00 KiB
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:5
[7] 論理ボリュームを拡張する。
運用中にマウントしたまま実行可能です。
root@dlp:~#
lvextend -L 70G /dev/vg_dlp/lv_storage

  Size of logical volume vg_dlp/lv_storage changed from 30.00 GiB (7680 extents) to 50.00 GiB (12800 extents).
  Logical volume lv_storage successfully resized
root@dlp:~#
lvdisplay /dev/vg_dlp/lv_storage

  --- Logical volume ---
  LV Path                /dev/vg_dlp/lv_storage
  LV Name                lv_storage
  VG Name                vg_dlp
  LV UUID                M7mPAd-e2BU-XIVY-z7tN-5SBS-eEiX-biB90f
  LV Write Access        read/write
  LV Creation host, time dlp.srv.world, 2015-07-20 09:33:33 +0900
  LV Status              available
  # open                 1
  LV Size                70.00 GiB
  Current LE             17920
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2

# xfs ファイルシステムのサイズ拡張 (マウントポイントを指定)

root@dlp:~#
xfs_growfs /mnt

meta-data=/dev/mapper/vg_dlp-lv_storage isize=256    agcount=4, agsize=3276800 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=13107200, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               bsize=4096   blocks=6400, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 13107200 to 18350080

# ext4 ファイルシステムのサイズ拡張

root@dlp:~#
resize2fs /dev/vg_dlp/lv_storage

resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg_dlp/lv_storage is mounted on /mnt; on-line resizing required
old_desc_blocks = 7, new_desc_blocks = 9
[ 2296.232115] EXT4-fs (dm-2): resizing filesystem from 13107200 to 18350080 blocks
[ 2296.258785] EXT4-fs (dm-2): resized filesystem to 18350080
The filesystem on /dev/vg_dlp/lv_storage is now 18350080 blocks long.
[8] 論理ボリュームを縮小する。
対象デバイスをマウントしている場合は事前にマウント解除しておく。
xfs ファイルシステムの縮小は不可。
# ext4 の場合はファイルシステムをチェック

root@dlp:~#
e2fsck -f /dev/vg_dlp/lv_storage 50G

e2fsck 1.42.9 (28-Dec-2013)
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/vg_dlp/lv_storage: 11/4587520 files (0.0% non-contiguous), 334056/18350080 blocks
# ext4 の場合はファイルシステムを縮小

root@dlp:~#
resize2fs /dev/vg_dlp/lv_storage 50G

resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg_dlp/lv_storage to 13107200 (4k) blocks.
The filesystem on /dev/vg_dlp/lv_storage is now 13107200 blocks long.
# 論理ボリュームを縮小

root@dlp:~#
lvreduce -L 50G /dev/vg_dlp/lv_storage

  WARNING: Reducing active logical volume to 50.00 GiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
  Do you really want to reduce lv_storage? [y/n]:
y

  Size of logical volume vg_dlp/lv_storage changed from 70.00 GiB (17920 extents) to 50.00 GiB (12800 extents).
  Logical volume lv_storage successfully resized
[9] 論理ボリュームを削除する。
マウント解除 ⇒ 対象論理ボリューム停止 ⇒ 削除 の流れで実行する。
root@dlp:~#
lvchange -an /dev/vg_dlp/lv_storage

root@dlp:~#
lvremove /dev/vg_dlp/lv_storage

  Logical volume "lv_storage" successfully removed
 
Tweet