LVM介紹及安裝使用


LVM簡介

  LVM是邏輯盤卷管理(Logical Volume Manager)的簡稱,它是一種磁盤管理工具,最主要的功能就是可以隨時在線調整分區的大小,解決了安裝Linux系統時需要評估分區大小的煩惱。

LVM相關術語

  物理存儲介質(The physical media):LVM存儲介質,可以是硬盤分區、整個硬盤、raid陣列或SAN硬盤。設備必須初始化為LVM物理卷,才能與LVM結合使用。

  物理卷PV(physical volume):物理卷就是LVM的基本存儲邏輯塊,但和基本的物理存儲介質比較卻包含與LVM相關的管理參數,創建物理卷可以用硬盤分區,也可以用硬盤本身。

  卷組VG(Volume Group):LVM卷組類似於非LVM系統中的物理硬盤,一個卷組VG由一個或多個物理卷PV組成。可以在卷組VG上建立邏輯卷LV。卷組VG可以使多個硬盤空間看起來像是一個大硬盤。

  邏輯卷LV(logical volume):類似於非LVM系統中的硬盤分區,邏輯卷LV建立在卷組VG之上。在邏輯卷LV之上建立文件系統。邏輯卷LV可以創建跨多個硬盤空間的分區。

  物理塊PE(physical Extent):物理卷PV中可以分配的最小存儲單元,PE的大小可以指定,默認為4MB

  邏輯塊LE(Logical Extent):邏輯卷LV中可以分配的最小存儲單元,在同一卷組VG中LE的大小和PE是相同的,並且一一相對。

  可以在線對卷組VG、邏輯卷LV進行創建、刪除、調整大小等操作。但LVM上的文件系統也需要重新調整大小。

一、LVM常用命令

  安裝:apt install lvm2

  1、(pv、vg、lv)scan  掃描

  2、(pv、vg、lv)create  創建

  3、(pv、vg、lv)display  顯示詳細信息

  4、(pv、vg、lv)remove  移除

  5、(vg、lv)extend 擴展

  6、(vg、lv)reduce  減少

  7、(pvs、vgs、lvs)s是簡單查看對應卷信息

二、創建物理卷PV

   1、格式化分區或者硬盤為8e,及Linux LVM格式。

   2、使用pvcreate創建物理卷PV。

    

    3、pvs查看創建好的物理卷。

    

 三、創建卷組VG

    使用vgcreate創建卷組VG,並且此處可以-s選項指定PE(LE)的大小,(默認PE大小4M)。創建完成后使用vgs查看結果。

    

四、創建邏輯卷LV

        使用lvcreate創建LV。lvcreate -n lvname -L lvsize(M,G)|-l LEnumber vgname。(-L分配內存M、G)(-l 按照PE[物理卷基本單元]單元大小4MB分配,4MB*16=64M),所以vg1和vg2是大小相等的。

    

五、格式化與掛載

  1、 mkfs.ext4 /dev/vg1/lv1  //將lv1格式化成ext4

  2、 mkdir /lv1

  3、 mount /dev/vg1/lv1 /lv1   //掛載到/lv1下
  4、 echo  "/dev/vg1/lv1 /lv1 ext4 defaults 0 0"  >> /etc/fstab     //追加到開機掛載

    

 六、邏輯卷LV擴容(動態擴容)

  1、首先需要確認是否有可用的擴容空間,邏輯卷LV是從卷組VG中創建的,所有在邏輯卷LV擴容前需要查看卷組VG的空間使用情況。

     (1)lvextend -L +100M /dev/vg1/lv1  // +100M是增加100M

     (2)lvextend -L 100M /dev/vg1/lv2  //直接使用100M是增加到100M

     (3)resize2fs /dev/vg1/lv1  //ext4文件系統在線擴容

    

     

 七、卷組VG擴容

    卷組的擴容相當簡單,一般是LVM空間不夠時,添加一塊新硬盤時使用。

    vgs、pvs 查看當前卷組和物理卷分區信息

    vgextend vg1 /dev/sdb3   擴展卷組vg1,增加lvm分區物理卷  /dev/sdb3

    

 八、邏輯卷LV縮小 

    邏輯卷LV縮小命令lvreduce與擴容命令類似,縮減邏輯卷LV請謹慎操作!   

    lvreduce命令使用-L選項減少空間,-r選項減少文件系統空間,實現動態調整(這是ext4文件系統)

    lvreduce -L 200M -r /dev/vg1/lv1   減少到200M

    如果不使用-r選項,那么需要卸載掛載點再使用resize2fs調整,但這已經不是動態調整了

    xfs文件系統真的只能增大,不能減小。

    

九、卷組VG縮小

    卷組VG的縮小,要查看物理卷PV是否被使用,因為無法縮減一個正在使用的物理卷PV

    使用pvs或者pvdisplay查看當前卷組VG所使用的物理卷是否是否存在數據。(/dev/sdb1當前存有數據,/dev/sdb3不存在數據)

    

    此時想要將/dev/sdb1移出vg1,可以使用pvmove命令移動數據,但必須有足夠的空間。

    pvmove /dev/sdb1 /dev/sdb3  移動數據

    

    此時,已經將   /dev/sdb1中數據移動到    /dev/sdb3

     

     vgreduce vg1 /dev/sdb1  減小卷組vg1 ,去掉 /dev/sdb1 物理卷

    

十、刪除LVM

    umount /lv1  //卸載掛載點

    lvremove /dev/vg1/lv1  //移除邏輯卷

    vgremove vg1  //移除卷組

    pvremove /dev/sdb1  //移除物理卷

    

      

     


   

lvm創建(新建)
1、添加硬盤sdb,創建主分區。
ls /dev/sd*
fdisk /dev/sdb
設置主分區大小和類型(Linux或者是Linux lvm)
2、創建物理卷pv
pvcreate /dev/sdb1 /dev/sdb2 /dev/sdc1...或者 pvcreate /dev/sdb{1,2,3,4,...}
查看創建好的物理卷pvs、PVdisplay
3、創建卷組vg
vgcreate vg1 /dev/sdb1 /dev/sdb2 ....
vgcreate -s 16M vg2 /dev/sdb3 ... 指定最小PE為16M,默認為4M
查看創建好的卷組vgs、vgdisplay
4、創建邏輯卷lv
lvcreate -n lv1 -L 64M vg1 指定固定大小64M
lvcreate -n lv2 -l 16 vg1 16*4M=64M,16個PE
5、格式化
mkfs.ext4 /dev/vg1/lv1 將LV1格式化成ext4
6、掛載使用
mkdir /lv1
mount /dev/vg1/lv1 /lv1
ceho "/dev/vg1/lv1 /lv1 ext4 defaults 0 0" >> /etc/fstab 開機自動掛載


lvm擴展(擴容、減小、移動、移除)
1、邏輯卷lv擴容
vgs 查看當前LV所在卷組是否有剩余空間
lvextend -L +400M -r /dev/vg1/lv1
若沒有-r,沒有實時同步文件系統,需要同步
resize2fs /dev/vg1/lv1
2、卷組vg擴容(卷組的擴容相當簡單,一般是LVM空間不夠時,添加一塊新硬盤時使用。)
vgextend vg1 /dev/sdc1
3、邏輯卷lv減小(lvreduce命令使用-L選項減少空間,-r選項減少文件系統空間,實現動態調整(這是ext4文件系統))
lvreduce -L -100M -r /dev/vg1/lv1
如果不使用-r,需要卸載掛載點再使用resize2f調整
resize2fs /dev/vg1/lv1
4、卷組vg減小。(更換舊硬盤)
卷組減小,要查看 物理卷pv是否被占用pvs
通過pvs看到 /dev/sdb1 在vg1卷組,而且pfree <psize,說明 /dev/sdb1 有數據
需要將 /dev/sdb1 數據移動到其他vg1卷組的物理卷上/dev/sdb3
pvmove /dev/sdb1 /dev/sdb3
vgreduce vg1 /dev/sdb1
5、刪除lvm
umount /lv1
lvremove /dev/vg1/lv1 移除卷組
pvremove /dev/sdb1 移除物理卷

  


    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM