LVM是邏輯盤卷管理
邏輯卷管理會根據物理存儲生成提取層,以便創建邏輯存儲卷。這樣就比直接使用物理存儲在很多方面提供了更大的靈活性。使用邏輯卷時不會受物理磁盤大小限制。
物理卷(Physical Volume,PV)
指磁盤分區或從邏輯上與磁盤分區具有同樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有與LVM相關的管理參數。
卷組(Volume Group,VG)
類似於非LVM系統中的物理磁盤,其由一個或多個物理卷PV組成。可以在卷組上創建一個或多個LV(邏輯卷)。
邏輯卷(Logical Volume,LV)
類似於非LVM系統中的磁盤分區,邏輯卷建立在卷組VG之上。在邏輯卷LV之上可以建立文件系統(比如/home或者/usr等)。
物理塊(Physical Extent,PE)
每一個物理卷PV被劃分為稱為PE(Physical Extents)的基本單元,具有唯一編號的PE是可以被LVM尋址的最小單元。PE的大小是可配置的,默認為4MB。所以物理卷(PV)由大小等同的基本單元PE組成。
*邏輯塊(Logical Extent,LE)
LVM抽象模型
LVM抽象模型
邏輯卷LV也被劃分為可被尋址的基本單位,稱為LE。在同一個卷組中,LE的大小和PE是相同的,並且一一對應。
創建物理卷PV(Physical Volumes)
pvcreate /dev/sd{b,c}
創建卷組VG(Volume Groups)
vgcreate myvg /dev/sd{b,c}
創建邏輯卷LV(Logical Volumes)
lvcreate -L 5G -n lv myvg
格式化
mkfs.ext4 /dev/mapper/myvg-lv
掛載
mount /dev/mapper/myvg-lv /mnt
LV擴展邏輯卷
物理邊界
lvextend -L +10G /dev/myvg/lv
Size of logical volume myvg/lv changed from 5.00 GiB (1280 extents) to 15.00 GiB (3840 extents).
邏輯邊界
resize2fs /dev/myvg/lv 25G
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/myvg/lv to 6553600 (4k) blocks.
The filesystem on /dev/myvg/lv is now 6553600 blocks long.
LV縮減邏輯卷
卸載
umount /mnt
強行檢查
e2fsck -f /dev/mapper/myvg-lv
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/mapper/myvg-lv: 11/1638400 files (0.0% non-contiguous), 146882/6553600 blocks
邏輯編輯縮減
resize2fs /dev/mapper/myvg-lv 10G
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/mapper/myvg-lv to 2621440 (4k) blocks.
The filesystem on /dev/mapper/myvg-lv is now 2621440 blocks long.
物理邊界縮減
lvreduce /dev/myvg/lv -L 10G
WARNING: Reducing active logical volume to 10.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce myvg/lv? [y/n]: y
Size of logical volume myvg/lv changed from 25.00 GiB (6400 extents) to 10.00 GiB (2560 extents).
Logical volume myvg/lv successfully resized.
創建快照
-s 關鍵選項,創建快照snap的意思
-l 後面跟快照包含多少個PE的數量
-n 後面跟創建的快照的名字
-p r 由於快照大多為只讀,改選項為為修改權限位只讀(r)
lvcreate -L 10G -n myvg-lv-snap -s -p r /dev/mapper/myvg-lv
掛載lv的快照
mount /dev/mapper/myvg-myvg--lv--snap /media/
查看新創建的快照區
lvdisplay /dev/myvg/myvg-lv-snap
LV Path /dev/myvg/myvg-lv-snap
LV Name myvg-lv-snap
VG Name myvg
LV UUID AGIXY8-ok2R-ekT9-2o53-gFGD-uz4B-EwlDL1
LV Write Access read only
LV Creation host, time node.tclking.com, 2019-01-02 17:03:47 +0800
LV snapshot status active destination for lv
LV Status available
open 1
LV Size 10.00 GiB
Current LE 2560
COW-table size 10.00 GiB
COW-table LE 2560
Allocated to snapshot 0.01%
Snapshot chunk size 4.00 KiB
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:6
LVM是邏輯盤卷管理