LVM : Manage Logical Volumes |
This is the basic operation of managing Logical Volumes. It needs to create Volume Groups first. | |
| [1] | Create Logical Volumes. |
# create logical volume [lv_data] in volume group [vg_dlp] with [30G] [root@dlp ~]# lvcreate -L 30G -n lv_data vg_dlp Logical volume "lv_data" created. # specify like follows if you use all free area [root@dlp ~]# lvcreate -l 100%FREE -n lv_data vg_dlp Logical volume "lv_data" created |
| [2] | Display Logical Volumes. |
| [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 Rg03lO-7bcA-RwPd-XsYB-iC0R-bhYe-xLsJoP LV Write Access read/write LV Creation host, time dlp.srv.world, 2022-07-07 14:53:31 +0900 LV Status available # open 0 LV Size 30.00 GiB Current LE 7680 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 |
| [3] | Rename Logical Volume. |
# rename from [lv_data] to [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 Rg03lO-7bcA-RwPd-XsYB-iC0R-bhYe-xLsJoP LV Write Access read/write LV Creation host, time dlp.srv.world, 2022-07-07 14:53:31 +0900 LV Status available # open 0 LV Size 30.00 GiB Current LE 7680 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 |
| [4] | Display reports of Logical Volumes. |
| [root@dlp ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root cs -wi-ao---- 71.00g swap cs -wi-ao---- 7.88g lv_storage vg_dlp -wi-a----- 30.00g |
| [5] | Scan Logical Volumes. |
| [root@dlp ~]# lvscan ACTIVE '/dev/vg_dlp/lv_storage' [30.00 GiB] inherit ACTIVE '/dev/cs/swap' [7.88 GiB] inherit ACTIVE '/dev/cs/root' [71.00 GiB] inherit |
| [6] | Take snapshot of Logical Volume. |
# create snapshot [snap-lv_storage] from [lv_storage] [root@dlp ~]# lvcreate -s -L 30G -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 Rg03lO-7bcA-RwPd-XsYB-iC0R-bhYe-xLsJoP
LV Write Access read/write
LV Creation host, time dlp.srv.world, 2022-07-07 14:53:31 +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 256
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 GCUvOq-eJb8-1V1g-sIvg-cd7B-W0Sj-XdLX99
LV Write Access read/write
LV Creation host, time dlp.srv.world, 2022-07-07 15:00:56 +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 256
Block device 253:5
|
| [7] | Extend Logical Volume. It's possible to do with mounted state. |
| [root@dlp ~]# lvextend -L 50G /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 vg_dlp/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 Rg03lO-7bcA-RwPd-XsYB-iC0R-bhYe-xLsJoP LV Write Access read/write LV Creation host, time dlp.srv.world, 2022-07-07 14:53:31 +0900 LV Status available # open 0 LV Size 50.00 GiB Current LE 12800 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 # if filesystem exists, extend it (specify mount point) # for the case of [xfs] filesystem [root@dlp ~]# xfs_growfs /mnt meta-data=/dev/mapper/vg_dlp-lv_storage isize=512 agcount=4, agsize=1966080 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=7864320, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=3840, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 7864320 to 13107200
|
| [8] | Reduce Logical Volume. Unmount target device first. If [xfs] filesystem exists on the target Logical Volume, it's impossible to reduce [xfs] filesystem. |
# for [ext4] filesystem, check filesystem before reduce [root@dlp ~]# e2fsck -f /dev/vg_dlp/lv_storage e2fsck 1.44.6 (5-Mar-2019) 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/3276800 files (0.0% non-contiguous), 284558/13107200 blocks # for [ext4] filesystem, possible to reduce [root@dlp ~]# resize2fs /dev/vg_dlp/lv_storage 30G resize2fs 1.44.6 (5-Mar-2019) Resizing the filesystem on /dev/vg_dlp/lv_storage to 7864320 (4k) blocks. The filesystem on /dev/vg_dlp/lv_storage is now 7864320 (4k) blocks long. # reduce logical volume [root@dlp ~]# lvreduce -L 30G /dev/vg_dlp/lv_storage WARNING: Reducing active logical volume to 30.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce vg_dlp/lv_storage? [y/n]: y
Size of logical volume vg_dlp/lv_storage changed from 50.00 GiB (12800 extents) to 30.00 GiB (7680 extents).
Logical volume vg_dlp/lv_storage successfully resized.
|
| [9] | Delete Logical Volume. unmount ⇒ stop logical volume ⇒ delete logical volume |
| [root@dlp ~]# lvchange -an /dev/vg_dlp/lv_storage [root@dlp ~]# lvremove /dev/vg_dlp/lv_storage Logical volume "lv_storage" successfully removed |
No comments:
Post a Comment