// 顯示所有 LV 使用狀況 #> lvdisplay -C // 新增 LV #> lvcreate -L 10G -n LV_name VG_name // 刪除 LV #> lvremove /dev/VG_name>/LV_name // 擴充 LV 使用空間 #> lvextend -L +2G /dev/vg/lv #> ext2online /dev/vg/lv (RHEL v4) #> resize2fs /dev/vg/lv (RHEL v5) // 縮小 LV 空間 (RHEL v4) 說明:445GB -> 2GB #> umount /worktmp #> e2fck -f /dev/rootVG/worktmpLV #> resize2fs /dev/rootVG/worktmpLV 1843M #> lvreduce -L 2GB /dev/rootVG/worktmpLV #> resize2fs /dev/rootVG/worktmpLV #> mount /worktmp 註:1843MB 大約是要 2GB 的 90%,這裡的指令也能使用單位 GB
// 顯示 VG 使用狀況 #>vgdisplay -C // 啟動/關閉 VG #>vgchange -a y VG_name #>vgchange -a n VG_name 註:關閉後,執行 vgdisplay 仍會顯示,但 /dev/*** 已不存在。 // 新建 VG #>vgcreate VG_name /dev/pv1 /dev/pv2 // 刪除 VG #>vgremove VG_name // 增加 PV 到 VG #>vgextend VG_name /dev/pv3 // 從 VG 中移除 PV NOTE: PV 必須沒有任何資料(檢查指令 pvs -o+pv_used) #> vgreduce VG_name /dev/mypv
// 顯示 PV 使用狀況 #>pvdisplay -C // 檢查所有 PV 的空間使用狀況 #> pvs -o+pv_used // 新增 PV #>pvcreate /dev/hdd1 // 刪除 PV #>pvremove /dev/hdd1
Q: 使用 USB 掛載包含有 LVM 的硬碟,出現錯誤訊息
fax:~# mount -t ext3 /dev/VolGroup00/LogVol00 /mnt/lvm00
mount: wrong fs type, bad option, bad superblock on /dev/mapper/VolGroup00-LogVol00,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
解決:
# vgchange -an VolGroup00 # vgchange -ay VolGroup00 # mount -t ext3 /dev/VolGroup00/LogVol00 /mnt/lvm00
Q: 從一個現有 LV 中移除正在使用的一個 PV Disk (/dev/sdb1)
NOTE: 這個 LV 的所屬 VG 必須要有足夠的可用空間
https://access.redhat.com/site/docum...disk_remove_ex
# pvs -o+pv_used PV VG Fmt Attr PSize PFree Used /dev/sda1 myvg lvm2 a- 17.15G 12.15G 5.00G /dev/sdb1 myvg lvm2 a- 17.15G 12.15G 5.00G /dev/sdc1 myvg lvm2 a- 17.15G 12.15G 5.00G /dev/sdd1 myvg lvm2 a- 17.15G 2.15G 15.00G
# pvmove /dev/sdb1 /dev/sdb1: Moved: 2.0% ... /dev/sdb1: Moved: 79.2% ... /dev/sdb1: Moved: 100.0%
# pvs -o+pv_used PV VG Fmt Attr PSize PFree Used /dev/sda1 myvg lvm2 a- 17.15G 7.15G 10.00G /dev/sdb1 myvg lvm2 a- 17.15G 17.15G 0 /dev/sdc1 myvg lvm2 a- 17.15G 12.15G 5.00G /dev/sdd1 myvg lvm2 a- 17.15G 2.15G 15.00G
# vgreduce myvg /dev/sdb1 Removed "/dev/sdb1" from volume group "myvg" [root@tng3-1 ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda1 myvg lvm2 a- 17.15G 7.15G /dev/sdb1 lvm2 -- 17.15G 17.15G /dev/sdc1 myvg lvm2 a- 17.15G 12.15G /dev/sdd1 myvg lvm2 a- 17.15G 2.15G
Q: 搬移現有 PV Disk (/dev/sdb1) 內的所有資料至一個新的 PV Disk (/dev/sdd1)
# pvs -o+pv_used PV VG Fmt Attr PSize PFree Used /dev/sda1 myvg lvm2 a- 17.15G 7.15G 10.00G /dev/sdb1 myvg lvm2 a- 17.15G 15.15G 2.00G /dev/sdc1 myvg lvm2 a- 17.15G 15.15G 2.00G
# pvcreate /dev/sdd1 Physical volume "/dev/sdd1" successfully created
# vgextend myvg /dev/sdd1 Volume group "myvg" successfully extended [root@tng3-1]# pvs -o+pv_used PV VG Fmt Attr PSize PFree Used /dev/sda1 myvg lvm2 a- 17.15G 7.15G 10.00G /dev/sdb1 myvg lvm2 a- 17.15G 15.15G 2.00G /dev/sdc1 myvg lvm2 a- 17.15G 15.15G 2.00G /dev/sdd1 myvg lvm2 a- 17.15G 17.15G 0
# pvmove /dev/sdb1 /dev/sdd1 /dev/sdb1: Moved: 10.0% ... /dev/sdb1: Moved: 79.7% ... /dev/sdb1: Moved: 100.0% [root@tng3-1]# pvs -o+pv_used PV VG Fmt Attr PSize PFree Used /dev/sda1 myvg lvm2 a- 17.15G 7.15G 10.00G /dev/sdb1 myvg lvm2 a- 17.15G 17.15G 0 /dev/sdc1 myvg lvm2 a- 17.15G 15.15G 2.00G /dev/sdd1 myvg lvm2 a- 17.15G 15.15G 2.00G
# vgreduce myvg /dev/sdb1 Removed "/dev/sdb1" from volume group "myvg"
Q: 建立與回復 Mirrored LV