lvm邏輯卷管理

2021-09-01 02:30:16 字數 3897 閱讀 8384

1.邏輯卷的原理

1.1 lvm 定義

物理分割槽或磁碟是 lvm 的第一構建塊。這些可以是分割槽、完整磁碟、 raid 集或 san 磁碟。

物理卷是 lvm 所使用的基礎 「物理 」儲存。這通常是塊裝置, 例如分割槽或完整磁碟。裝置必須初始化為 lvm 物理卷 , 才能與 lvm 結合使用。

捲組是儲存池 , 由乙個或多個物理卷組成。

物理區塊是物理卷中儲存的小型資料區塊 , 用作 lvm 儲存的

後端。邏輯區塊對映到物理區塊 , 構成 lvm 儲存的前端。預設情況下 , 每個邏輯區塊對映到乙個物理區塊。啟用某些選項將更改此對映。例如 , 映象會導致每個邏輯區塊對映到兩個物理區塊。

邏輯卷是邏輯區塊組。邏輯卷可以像硬碟驅動器分割槽一樣使用。

1.2 為什麼使用邏輯卷

邏輯卷和邏輯卷管理有助於更加輕鬆地管理磁碟空間。如果檔案系統需要更多的空間 , 可以將其卷組的可用空間分配給邏輯卷 ,並且可以調整檔案系統的大小。如果磁碟開始出現錯誤 , 可以通過捲組將替換磁碟註冊為物理卷 , 並且邏輯卷的範圍可遷移

到新磁碟。

1.3 邏輯卷的原理——水果榨汁原理

邏輯卷分割槽過程類似於水果榨汁過程。

1)首先,準備物理卷(相當於將水果榨成果汁的過程):

disk 用於建立與 lvm 結合使用的新分割槽。在要與 lvm 結合使用的分割槽上 , 始終將「 型別 」設定為「 0x8e linux lvm」。

pvcreate /dev/vdan 用於初始化分割槽 ( 或其他物理裝置 ),使其作為物理卷與 lvm 結合使用。直接在物理卷中建立用於儲存 lvm 配置資料的表頭。

2)接下來,建立捲組(相當於將現榨果汁倒入大杯子的過程):

建立捲組

vgcreate vgname /dev/vdan 將建立名為 vgname 且由物理卷 /dev/vdan 組成的捲組。
您可以在建立時指定其他物理卷 ( 以空格隔開 ), 也可以隨後使用 vgextend 新增新物理卷。

3)建立和使用新邏輯卷(相當於將大杯子中的果汁倒入小杯子的過程)

lvcreate -n lvname -l 2g vgname 從 vgname 上可用物理區塊建立名為 lvname 、容量為 2gb 的新邏輯卷

mkfs -t ext4 /dev/vgname/lvname 將在新邏輯卷上建立 ext4 檔案系統

mkdir /data 建立所需目錄作為掛載點

向 /etc/fstab 檔案中新增一下條目 :

執行 mount -a 可在 /etc/fstab 中掛載所有檔案系統 , 包括剛剛新增的條目。

pv ##物理卷

被lv命令處理過的物理分割槽

(水果榨汁)

vg ##物理捲組

(放到大杯子)

被組裝到一起的物理卷

pe ##物理擴充套件

lvm裝置的最小單位,lv時pe的整數倍

lvm ##邏輯卷

(從大杯子放到小杯子中)

直接使用的裝置,可以增大縮減並保持原有資料不變

2. lvm建立

2.1 分割槽並指定標籤為8e

pvcreate /dev/vdb1		##炸汁

vgcreate vg0 /dev/vdb1 ##倒大杯子

lvcreate -l 20m -n lv0 vg0 ##倒小杯子

mkfs.xfs /dev/vg0/lv0 ##格式化

mount /dev/vg0/lv0 /mnt/ ##掛載

df -h /mnt ##檢視

#lvm特點:可以拉伸可以縮減

2.2 lvm拉伸:lvm支援熱拉伸

1)當vg中的剩餘容量充足時

lvextend -l 80m /dev/vg0/lv0	##拉伸裝置

xfs_growfs /dev/vg0/lv0 ##拉伸檔案系統

2)當vg中剩餘容量不足時

pvcreate /dev/vdb2

vgextend vg0 /dev/vdb2 ##拉伸物理卷

lvextend -l 200m /dev/vg0/lv0 ##拉伸裝置

xfs_growfs /dev/vg0/lv0 ##拉伸檔案系統

3)針對ext檔案系統的裝置的拉伸和縮減

xfs :只能拉伸不能縮減

ext4 :能拉伸也能縮減(部支援熱縮減,需要先進行解除安裝)

umount /mnt

mkfs.ext4 /dev/vg0/lv0

mount /dev/vg0/lv0 /mnt

#拉伸

lvextend -l 250m /dev/vg0/lv0		##拉伸裝置

resize2fs /dev/vg0/lv0 ##拉伸系統

#縮減

umount /dev/vg0/lv0

e2fsck -f /dev/vg0/lv0 ##檢測檔案系統

resize2fs /dev/vg0/lv0 100m ##縮減系統

lvreduce -l 100m /dev/vg0/lv0 ##縮減裝置

mount /dev/vg0/lv0 /mnt
#縮減vg

vgreduce vg0 /dev/vdb2		##從vg0中將vdb2去掉

vgextend vg0 /dev/vdb2 ##將vdb2加入到vg0中

#資料遷移

pvmove /dev/vdb1 /dev/vdb2	##將vdb1中的資料轉移到vdb2中,此操作時不能[ctrl+c]強制退出,會毀壞資料

vgreduce vg0 /dev/vdb1 ##解除占用vdb1

pvremove /dev/vdb1 ##將vdb1移出

#lvm快照

lvcreate -l 40m -n lv0-backup -s /dev/vg0/lv0

mount /dev/vg0/lv0-backup /mnt/

如果擷取資料大於40m,會損壞裝置

dd if=/dev/zero of=/mnt/file bs=1m count=60

會自動解除安裝掉lv0-backup,再次掛載會報錯

#不再使用快照時 , 請解除掛載並刪除它

umount /mnt

lvremove /dev/vg0/lv0-backup

lvcreate -l 40m -n lv0-backup -s /dev/vg0/lv0 ##相當於裝置的reset

再次掛載可以檢視到原裝置的資料

檢視lvm狀態資訊

執行 mount -a 可在 /etc/fstab 中掛載所有檔案系統 , 包括剛剛新增的條目

pvdisplay /dev/vdan 	#將顯示有關特定物理卷的資訊

vgdisplay vgname #將顯示有關特定捲組的資訊

lvdisplay /dev/vgname/lvname #將顯示有關特定邏輯卷的資訊

擴充套件邏輯卷和 xfs 檔案系統:

df -h /data	#驗證已掛載檔案系統 /data 的當前大小

vgdisplay vgname #驗證 「可用物理區塊 」是否夠用

lvextend -l 128 /dev/vgname/lvname #使用部分或全部可用區塊擴充套件邏輯卷

xfs_growfs /dev/vgname/lvname #擴充套件在 /data 上掛載的關聯檔案系統

lvm邏輯卷管理

1 前言 2 lvm組成和概念 3 如何使用lvm,建立邏輯卷的流程和例項 4 如何動態放大 縮小乙個邏輯卷 邏輯捲組 5 如何刪除邏輯卷 邏輯捲組 6 lvm相關命令 1 前言 一直想寫乙個簡單的lvm方面的文章,可以作個背忘,主要以流程和例項為主,希望文章能起到拋磚引玉的 作用.lvm logi...

Lvm(邏輯卷管理)

lvm 邏輯卷管理 1.make lv 1 fdisk dev sdb 1 對sdb進行分割槽,三個主分割槽,乙個擴充套件分割槽,乙個邏輯分割槽,分別為sdb1,sdb2,sdb3,sdb4,sdb5 2 用fdisk dev sdb命令,對分好的磁碟檔案系統進行格式化。3 儲存好分割槽之後,進行p...

LVM 邏輯卷管理

顯示分割槽資訊 root centos7 fdisk l物理硬碟格式為物理卷 pv root centos7 pvcreate dev sda6檢視物理卷 pv 資訊 root centos7 pvs root centos7 pvdisplay 刪除物理卷 pv root centos7 pvre...