PV(Physical Volume)實體卷冊
一般指實體硬碟disk partition
VG(Volume Group)卷策群組
由數個PV組成
LV(Logical Volume)
由VG中劃分出來,可格式化並掛載(實際存放資料)
PE(Physical Extents)實體單位
建立VG時決定大小,預設為4M
一般指實體硬碟disk partition
VG(Volume Group)卷策群組
由數個PV組成
LV(Logical Volume)
由VG中劃分出來,可格式化並掛載(實際存放資料)
PE(Physical Extents)實體單位
建立VG時決定大小,預設為4M
開始建立LVM
先用fdisk指令建立LVM的分割區,如下如所示
PV規畫指令
pvcreate:將實體分割區建立成pv
pvscan:搜尋系統具有pv的磁碟
pvdisplay:顯示系統上的pv狀態
pvremove:移除分割區上的pv屬性
pvcreate:將實體分割區建立成pv
pvscan:搜尋系統具有pv的磁碟
pvdisplay:顯示系統上的pv狀態
pvremove:移除分割區上的pv屬性
先查看目前系統是否有pv磁碟,指令pvscan
建立分割區sda5和sdb5為pv,指令pvcreate /dev/sda5 /dev/sdb5
再查看系統pv磁碟,出現剛剛所建立的sda5與sdb5
查看目前系統的pv狀態,指令pvdisplay
移除pv,指令pvremove /dev/sda5
VG規劃
指令
vgcreate:建立系統上的vg
vgscan:搜尋系統上是否有vg存在
vgdisplay:顯示系統上的vg狀態
vgextend:在vg內增加額外pv
vgreduce:在vg內移除pv
vgchange:設定vg是否啟動
vgremove:刪除vg
指令
vgcreate:建立系統上的vg
vgscan:搜尋系統上是否有vg存在
vgdisplay:顯示系統上的vg狀態
vgextend:在vg內增加額外pv
vgreduce:在vg內移除pv
vgchange:設定vg是否啟動
vgremove:刪除vg
先建立系統的vg,指令:vgcreate -s 8m testvg /dev/sda5 /dev/sdb5
指令說明:-s後面指定pe的大小,若未指定大小預設為4MB,"testvg"是指vg的名稱可自行定義
sda5,sdb5為要加入vg的裝置
注意pe有最多數量限制,最高為65534個,如果預設pe大小為4MB,則最高上限為256GB
sda5,sdb5為要加入vg的裝置
注意pe有最多數量限制,最高為65534個,如果預設pe大小為4MB,則最高上限為256GB
查看系統上vg,指令:vgscan
查看系統pv磁碟狀態
查看vg狀態,指令:vgdisplay
將pv加入vg,指令:vgextend testvg /dev/sdc1
查看vg狀態
注意:若重開機後發現vg沒啟動可用指令:vgchang -a y啟動
LV規劃
指令
lvcreate:建立lv
lvscan:查詢系統上的lv
lvdisplay:顯示系統上的lv狀態
lvextend:增加lv容量
lvreduce:減少lv容量
lvremove:刪除一個lv
lvresize:調整lv容量大小
指令
lvcreate:建立lv
lvscan:查詢系統上的lv
lvdisplay:顯示系統上的lv狀態
lvextend:增加lv容量
lvreduce:減少lv容量
lvremove:刪除一個lv
lvresize:調整lv容量大小
建立lv,指令:lvcreate -L 5g -n testlv testvg
指令說明:
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
-n:後面接lv的名稱,可自行定義
最後面須指定要從哪個vg建立lv
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
-n:後面接lv的名稱,可自行定義
最後面須指定要從哪個vg建立lv
增加LV容量
指令:lvresize -L +7g /dev/testvg/testlv
指令說明:
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
最後面要指定lv的完整名稱路徑
注意-L後面要有"+"才是增加容量,如果沒有使用"+"則為修改lv容量
指令:lvresize -L +7g /dev/testvg/testlv
指令說明:
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
最後面要指定lv的完整名稱路徑
注意-L後面要有"+"才是增加容量,如果沒有使用"+"則為修改lv容量
此時使用lvdisplay指令查看lv的容量依然在12G,使用lvreduce指令減少lv的容量
指令:lvreduce -L 10g /dev/testvg/testlv
指令說明:
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
最後面要指定lv的完整名稱路徑
指令:lvreduce -L 10g /dev/testvg/testlv
指令說明:
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
最後面要指定lv的完整名稱路徑
建立快照
先用vgdisplay指令查看是否有足夠的pe和容量,因為快照占用vg的容量
使用lvcreate建立lvm的快照,指令:lvcreate -L 1g -s -n testsnap /dev/testvg/testlv
指令說明:
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
-s:建立快照
-n:建立名稱,可自行定義
最後面要指定lv的完整名稱路徑
如果在建立快照時無法建立出現以下訊息
表示snapshot模組沒有載入所造成,執行指令:modprobe dm-snapshot即可
先用vgdisplay指令查看是否有足夠的pe和容量,因為快照占用vg的容量
使用lvcreate建立lvm的快照,指令:lvcreate -L 1g -s -n testsnap /dev/testvg/testlv
指令說明:
-L:後面接容量,單位M,G,T,最小單位為PE,所以容量不是PE的倍數時,系統會計算最相近的容量
-l:後面加上PE的個數,如PE容量為8MB則"-l 256"的容量為8MB*256=2048MB(2G)
-s:建立快照
-n:建立名稱,可自行定義
最後面要指定lv的完整名稱路徑
如果在建立快照時無法建立出現以下訊息
表示snapshot模組沒有載入所造成,執行指令:modprobe dm-snapshot即可
系統重新安裝後要再加入原有LVM步驟如下打 fdisk -l 與 pvscan 應該要可以看到 pv 項目存在
vgscan 應該可以 scan 出 voulme group,若沒看到先 vgchange -ay 跑看看 active vg 項目
如果狀態變成exported請先打vgimport -a
若 vgchange -ay 成功後所有 lv 應該都會出現,那就可以進行一般的存取
vgscan 應該可以 scan 出 voulme group,若沒看到先 vgchange -ay 跑看看 active vg 項目
如果狀態變成exported請先打vgimport -a
若 vgchange -ay 成功後所有 lv 應該都會出現,那就可以進行一般的存取
出處: http://blog.xuite.net/m740138.m740138/blog/31793294-LVM%E5%AF%A6%E6%88%B0