一、可以使用圖形界面來管理lvm
# yum -y install system-config-lvm
# system-config-lvm
或者:系統--〉管理--〉邏輯卷管理
二、建議使用終端來管理lvm
一. 建立實體的磁盤分區
# fdisk /dev/sda
…
# partx -a /dev/sda
[同步核心資訊]
二. 建立LVM
1. 先轉成實體卷 physical volumes
# pvcreate /dev/sda6 /dev/sda7
2. 組成一個大的卷組,一個邏輯的大硬碟 volume group
# vgcreate vg0 /dev/sda6 /dev/sda7 –s 4
[-s是指定pe的大小.可選]
3. 邏輯卷[分區] logical volumes
# lvcreate -L 500m -n lv01 vg0
[-L直接指定大小]
# lvcreate -l 125 -n lv01 vg0
[-l是指定pe的個數]
4. 格式化lv
# mkfs.ext4 /dev/vg0/lv01
# blkid
[檢視所屬的檔案系統的UUID]
5. 挂載lv
# mkdir /mnt/lvm01
[建立挂載點]
# mount /dev/vg0/lv01 /mnt/lvm01
vim /etc/fstab
寫入挂載表中,保證永久生效。請用UUID挂載
6. 添加資料測試
# dd if=/dev/zero of=/mnt/lvm01/test bs=1M count=300
還有一部分寫不進資料了,因為有5%是保留數。
三. 增加LV的容量: 如何拉升LVM?
LVM可以動态線上調整分區,沒有任何風險。線上的,立即生效。
1. 先增加一個實體卷 /dev/sda8
# pvcreate /dev/sda8
2. 把實體卷加入到邏輯卷組中
# vgextend vg0 /dev/sda8
Volume group "vg0" successfully extended
3. 擴充邏輯卷[分區] logical volumes
# lvextend -L +300M /dev/vg0/lv01 [增加300M]
Extending logical volume lv01 to 800.00 MB
Logical volume lv01 successfully resized
4. 增加到檔案系統 [重新開機計算機也沒有用,隻能用以下指令]
# resize2fs /dev/vg0/lv01
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/vg0/lv01 is mounted on /mnt/lvm01; on-line resizing required
Performing an on-line resize of /dev/vg0/lv01 to 819200 (1k) blocks.
The filesystem on /dev/vg0/lv01 is now 819200 blocks long.
三. 減小LV容量 [注意看提示,執行不成,都會有報錯]
1. 必須離線
# umount /mnt/lvm01
注意了:可能出現以下情況,細心謹慎
無法umount /home
可能是檔案自動挂載的原因
如果停止檔案自動挂載服務,umount /home也不成,就檢視vim /etc/fstab
原來/home下還挂載/rhome,是以要先 umount /home/rhome,再停止自動挂載服務。
還有一種辦法:
# fuser -v /mnt
# kill -9 pid
成了
2. 強制掃描檔案系統,這是必須的
# e2fsck -f /dev/vg0/lv01
3. 減小檔案系統
# resize2fs /dev/vg0/lv01 500M
4. 減小邏輯卷
# mount /dev/vg0/lv01 /mnt/lvm01
# lvreduce -L -500M /dev/vg0/lv01 [注意有警告],或者
# lvreduce -L 500M /dev/vg0/lv01
# lvdisplay
5. 檢查資料
# cd /mnt/lvm01
四.還原實體卷
# umount /mnt/lvm01
# lvremove /dev/vg0/lv01
# vgreduce vg0 /dev/sda8
# pvremove /dev/sda8
五.快照
# lvcreate -L 52M -s -n lv01snap /dev/vg0/lv01
# lvdisplay
# mkdir /mnt/snap
# mount -o ro /dev/vg0/lv01snap /mnt/snap
# df -h
# umount /mnt/snap
# lvremove /dev/vg0/lv01snap