LVM邏輯卷管理

1. 什麼是LVM?

LVM是邏輯盤卷管理(Logical Volume Manager)的簡稱,它是Linux環境下對磁盤分區進行管理的一種機制,LVM是建立在硬盤和分區之上的一個邏輯層,來提高磁盤分區管理的靈活性。
2.爲什麼要使用LVM?
在日常工作或者學習中,隨着電腦的不斷被使用,我們的磁盤空間可能會越來越小,這時候,我們不能直接更換大硬盤,因爲硬盤有價,數據無價,這時候我們就可以使用LVM,LVM將存儲虛擬化,使用邏輯卷,你不會受限於物理磁盤的大小,另外,和硬件相關的存儲設置被其隱藏,你能不用停止應用或卸載文件系統來調整卷大小或數據遷移.這樣能減少操作成本,LVM最大的特點就是可以對磁盤進行動態管理。因爲邏輯卷的大小是可以動態調整的,而且不會丟失現有的數據。如果我們新增加了硬盤,其也不會改變現有上層的邏輯卷。作爲一個動態磁盤管理機制,邏輯卷技術大大提高了磁盤管理的靈活性。
3.LVM工作機制?
LVM就是通過將底層的物理硬盤抽象的封裝起來,然後以邏輯卷的方式呈現給上層應用。在傳統的磁盤管理機制中,我們的上層應用是直接訪問文件系統,從而對底層的物理硬盤進行讀取,而在LVM中,其通過對底層的硬盤進行封裝,當我們對底層的物理硬盤進行操作時,其不再是針對於分區進行操作,而是通過一個叫做邏輯卷的東西來對其進行底層的磁盤管理操作。
4.幾個專業名詞
物理卷(PV, Physical Volume)
物理卷就是指磁盤,磁盤分區或從邏輯上和磁盤分區具有同樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有和LVM相關的管理參數。當前LVM允許你在每個物理捲上保存這個物理卷的0至2份元數據拷貝.默認爲1,保存在設備的開始處.爲2時,在設備結束處保存第二份備份.

卷組(VG, Volume Group)
LVM卷組類似於非LVM系統中的物理硬盤,其由物理卷組成。能在卷組上創建一個或多個“LVM分區”(邏輯卷),LVM卷組由一個或多個物理卷組成。

邏輯卷(LV, Logical Volume)
LVM的邏輯卷類似於非LVM系統中的硬盤分區,在邏輯卷之上能建立文件系統(比如/home或/usr等)

LVM邏輯卷管理
LVM邏輯卷管理

*實戰案例一: LVM的製作***

0). 打開一個Shell監控設備信息
watch -n 1 'pvs; echo =====; vgs; echo ======; lvs'
LVM邏輯卷管理
1). 創建三個物理分區並把分區id修改爲8e
2). 創建物理卷
pvcreate /dev/vdb{1..3}
LVM邏輯卷管理
3). 創建物理卷組
vgcreate hhh /dev/vdb{1..3}
LVM邏輯卷管理
4). 創建邏輯卷
在物理卷組中提取一部分空間, 生成邏輯卷lv0。 -L指定邏輯卷的大小, -n指定邏輯卷的名稱
lvcreate -n lv0 -L 1.5G ii
LVM邏輯卷管理
邏輯卷創建成功之後, 會產生一個虛擬設備文件;
[root@server0 ~]# ll /dev/mapper/hhh-ii
lrwxrwxrwx. 1 root root 7 Nov 8 20:38 /dev/mapper/hhh-ii -> ../dm-0
[root@server0 ~]# ll /dev/hhh/ii
lrwxrwxrwx. 1 root root 7 Nov 8 20:38 /dev/hhh/ii -> ../dm-0

***實戰案例二: 邏輯卷的應用 ****

1). 格式化邏輯卷設備
mkfs.ext4 /dev/westos/lv0

2). 掛載設備到文件系統上
mkdir /lvm
mount /dev/westos/lv0 /lvm/

3). 編輯開機自動掛載
mount | tail -1
vim /etc/fstab
"""
/dev/mapper/westos-lv0 /lvm ext4 defaults 0 0
"""

*實戰案例三: ext格式邏輯卷的拉伸與縮減*****

LVM的強大之處在於可以支持在線擴容(拉伸), 但不支持在線縮減。ext2/ext3/ext4文件系統的調整命令是resize2fs(增大和減小都支持)
常用命令:lvextend、resize2fs
3.1 拉伸邏輯卷
目標: 將邏輯卷拉伸到1.8G如何實現?

1). 確定卷組是否有足夠的空間可以拉伸?
vgs
2). 邏輯卷拉伸命令
lvextend -L 1.8G /dev/westos/lv0
lvextend -L +300M /dev/westos/lv0

3). 查看拉伸後的空間大小
lvs # 查看邏輯卷設備的大小是否拉伸成功
df -h # 查看文件系統的大小是否拉伸成功

4). 更新文件系統
resize2fs /dev/westos/lv0

5). 查看更新後的文件系統
df -h
LVM邏輯卷管理

3.2 拉伸物理卷組
目標: 將邏輯卷拉伸到3.5G如何實現?

0). 確定卷組是否有足夠的空間可以拉伸?
vgs

1). 創建一個物理卷
pvcreate /dev/vdb5

2). 將新的物理卷添加/拉伸到物理卷組中
vgextend westos /dev/vdb5

3). 查看拉伸後的物理卷組大小
vgs

4). 拉伸邏輯卷,執行3.1實驗的內容
lvextend -L 3.5G /dev/westos/lv0
df -h
resize2fs /dev/westos/lv0
df -h
man resize2fs

3.3 縮小邏輯卷
1). 卸載正在掛載的邏輯卷
umount /lvm

2). 對文件系統進行校驗
e2fsck -fv /dev/westos/lv0
LVM邏輯卷管理
3). 縮小文件系統到1G
resize2fs /dev/westos/lv0 1G

4). 縮小邏輯卷
lvreduce -L 1G /dev/westos/lv0

重新掛載設備, 查看縮減是否生效?

5). 查看卷組中是否有空閒的分區?如果有,則移除空閒分區。
vgreduce westos /dev/vdb{3,5}
pvremove /dev/vdb{3,5}

*實戰案例四: xfs格式邏輯卷的拉伸(不能縮減)*****

目標: 將邏輯卷拉伸到1.8G如何實現?

1). 確定卷組是否有足夠的空間可以拉伸?
vgs
2). 邏輯卷拉伸命令
lvextend -L 1.8G /dev/westos/lv0
lvextend -L +300M /dev/westos/lv0

3). 查看拉伸後的空間大小
lvs # 查看邏輯卷設備的大小是否拉伸成功
df -h # 查看文件系統的大小是否拉伸成功

4). 更新文件系統
xfs_growfs /dev/westos/lv0

5). 查看更新後的文件系統
df -h

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章