Manage Logical Volumes2023/07/18 |
This is the basic operation of managing Logical Volumes.
It needs to create Volume Group first. |
|
[1] | Create Logical Volume. |
# 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 9yHHMf-mzcp-yEl0-4Mk5-GZIQ-oPty-EY5SIJ LV Write Access read/write LV Creation host, time dlp.srv.world, 2023-07-17 20:04:08 -0500 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 9yHHMf-mzcp-yEl0-4Mk5-GZIQ-oPty-EY5SIJ LV Write Access read/write LV Creation host, time dlp.srv.world, 2023-07-17 20:04:08 -0500 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 debian-vg -wi-ao---- 78.56g swap_1 debian-vg -wi-ao---- 980.00m 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/debian-vg/root' [78.56 GiB] inherit ACTIVE '/dev/debian-vg/swap_1' [980.00 MiB] 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 9yHHMf-mzcp-yEl0-4Mk5-GZIQ-oPty-EY5SIJ LV Write Access read/write LV Creation host, time dlp.srv.world, 2023-07-17 20:04:08 -0500 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 PYeL3q-u6r3-HaCE-CTao-Cx5n-8c7T-K5F3D6 LV Write Access read/write LV Creation host, time dlp.srv.world, 2023-07-17 20:09:10 -0500 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. |
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 70.00 GiB (17920 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 9yHHMf-mzcp-yEl0-4Mk5-GZIQ-oPty-EY5SIJ LV Write Access read/write LV Creation host, time dlp.srv.world, 2023-07-17 20:04:08 -0500 LV Status available # open 0 LV Size 70.00 GiB Current LE 17920 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 # for the case of extending ext4 filesystem root@dlp:~# resize2fs /dev/vg_dlp/lv_storage resize2fs 1.47.0 (5-Feb-2023) Filesystem at /dev/vg_dlp/lv_storage is mounted on /mnt; on-line resizing required old_desc_blocks = 4, new_desc_blocks = 9 The filesystem on /dev/vg_dlp/lv_storage is now 18350080 (4k) blocks long. |
[8] | Reduce Logical Volume. Unmount target device first. It's impossible to reduce xfs filesystem. |
# for ext4, check it first root@dlp:~# e2fsck -f /dev/vg_dlp/lv_storage e2fsck 1.47.0 (5-Feb-2023) 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), 432360/18350080 blocks # for ext4, reduce filesystem root@dlp:~# resize2fs /dev/vg_dlp/lv_storage 50G resize2fs 1.47.0 (5-Feb-2023) Resizing the filesystem on /dev/vg_dlp/lv_storage to 13107200 (4k) blocks. The filesystem on /dev/vg_dlp/lv_storage is now 13107200 (4k) blocks long. # reduce logical volume at last 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 vg_dlp/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 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
Do you really want to remove and DISCARD logical volume vg_dlp/lv_storage? [y/n]: y
Logical volume "lv_storage" successfully removed
|
Sponsored Link |