天天看點

linux-lvm

一、劃分

       pv    實體卷

       pe    實體單元

       vg    實體卷組

       lvm   邏輯卷     

<a href="https://s3.51cto.com/oss/201711/08/7612ea22bca6acb5f8986c3118f586e5.jpg-wh_500x0-wm_3-wmp_4-s_1633784714.jpg" target="_blank"></a>

二.LVM的建立

劃分實體分區并把分區id修改為8e如下

<a href="https://s2.51cto.com/oss/201711/08/fba2e0b3c1bf2e6c514ea168886797f3.png-wh_500x0-wm_3-wmp_4-s_3945865008.png" target="_blank"></a>

用監控指令友善觀察

watch -n 1 'pvs;echo=====;vgs;echo=====;lvs;echo=====;df -h /mnt'

<a href="https://s1.51cto.com/oss/201711/08/4d617b6bb7cb923ffd289dde32562b88.png-wh_500x0-wm_3-wmp_4-s_3115536441.png" target="_blank"></a>

pvcreate /dev/vdb1        建立實體卷

vgcreate vg0 /dev/vdb1  建立實體卷組

lvcreate  -L 100M -n  lv0 vg0 建立邏輯卷

<a href="https://s5.51cto.com/oss/201711/08/6a348842fab396d47e9974bec581b9fc.png-wh_500x0-wm_3-wmp_4-s_1298247898.png" target="_blank"></a>

mkfs.xfs  /dev/vg0/lv0  格式化裝置

mount  /dev/vg0/lv0  /lh   挂載

三、擴容

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

可做lvm的拉伸

lvextend  -L  300M  /dev/vg0/lv0  (檔案)

xfs_growfs  /dev/vg0/lv0    (裝置)

<a href="https://s4.51cto.com/oss/201711/08/1a817b87a545d81ee950fa09ef6ed5f8.png-wh_500x0-wm_3-wmp_4-s_1174562843.png" target="_blank"></a>

2.容量不足

當拉伸至500M 時  發現容量不足

<a href="https://s5.51cto.com/oss/201711/08/afd0ea3e46bd3e49ad774725b9251a20.png-wh_500x0-wm_3-wmp_4-s_637219032.png" target="_blank"></a>

可如下操作

建立分區

pvcrtate  /dev/vdb2      建立實體卷

vgextend  vg0  /dev/vdb2   擴大實體卷組

lvextend  -L 700M  /dev/vg0/lv0  

xfs_growfs /dev/vg0/lv0

<a href="https://s3.51cto.com/oss/201711/08/04880f6e8c933f911290f05ac250c9fc.png-wh_500x0-wm_3-wmp_4-s_4075834753.png" target="_blank"></a>

3.在ext系統中:

先解除安裝  umount  /dev/vg0/lv0

mkfs.ext4  /dev/vg0/lv0   格式化裝置,在裝置上安裝檔案系統 ext4

<a href="https://s1.51cto.com/oss/201711/08/f7ca20617ca062ff2fc942cfa5571acd.png-wh_500x0-wm_3-wmp_4-s_279162811.png" target="_blank"></a>

blkid 檢視被格式化的裝置

<a href="https://s1.51cto.com/oss/201711/08/11b04437a9e414ff7a83df38884a7418.png-wh_500x0-wm_3-wmp_4-s_606655543.png" target="_blank"></a>

拉伸  lvextend  -L  800M  /dev/vg0/lv0

<a href="https://s2.51cto.com/oss/201711/08/56341999e44e9cfdaf8386d0a44a7371.png-wh_500x0-wm_3-wmp_4-s_3702633067.png" target="_blank"></a>

resize2fs  /dev/vg0/lv0 

<a href="https://s3.51cto.com/oss/201711/08/0487a3c04028e3bdcd8920daef83000b.png-wh_500x0-wm_3-wmp_4-s_4006399161.png" target="_blank"></a>

縮減      e2fsck  -f  /dev/vg0/lv0  進行掃描

<a href="https://s3.51cto.com/oss/201711/08/d02a4a2a5076705ec0006b6492162961.png-wh_500x0-wm_3-wmp_4-s_1902981979.png" target="_blank"></a>

resize2fs  /dev/vg0/lv0  200M

<a href="https://s5.51cto.com/oss/201711/08/d98a6d2d925f44145a007d0c6b9cc7d3.png-wh_500x0-wm_3-wmp_4-s_1576959773.png" target="_blank"></a>

lvreduce -L  80M /dev/vg0/lv0 

<a href="https://s4.51cto.com/oss/201711/08/9f90b790dab524caf96aac34b384392c.png-wh_500x0-wm_3-wmp_4-s_4104975761.png" target="_blank"></a>

4.對卷組  

當要移除的分區存在資料,那麼需要把資料遷移到其他PV中

pvmove  /dev/vdb1   /dev/vdb2  把實體卷1中的資料遷移至實體卷2中

vgreduce  vg0  /dev/vdb1  把實體卷1 從從實體卷組vg0移出

pvremove  /dev/vdb1      移除實體卷1

<a href="https://s4.51cto.com/oss/201711/08/2d1d37af57be1adf034fc7761d1ae2e6.png-wh_500x0-wm_3-wmp_4-s_3865241263.png" target="_blank"></a>

四、lvm 的快照

為了觀察現象明顯  touch file{1..3}

<a href="https://s3.51cto.com/oss/201711/08/7007e0f65df710e1d1416eaf4f01391d.png-wh_500x0-wm_3-wmp_4-s_191361184.png" target="_blank"></a>

解除安裝  umount /lh

做快照

lvcreate  -L  100M  -n  lhfile  -s  /dev/vg0/lv0

挂載

實驗  做删除 rm -fr *

<a href="https://s4.51cto.com/oss/201711/08/e0a073e3ce23775f9eb15e60776e608f.png-wh_500x0-wm_3-wmp_4-s_2330981641.png" target="_blank"></a>

如下 可看到 被删除的 通過快照恢複

<a href="https://s4.51cto.com/oss/201711/08/40118baedfd2818a5f2ed472562bca09.png-wh_500x0-wm_3-wmp_4-s_3710808762.png" target="_blank"></a>

 本文轉自 huanzi2017 51CTO部落格,原文連結:http://blog.51cto.com/13362895/1979899

下一篇: linux-mysql