linux中的lvm

二、Logical Volume Manager,邏輯卷管理
1、LVM機制的基本概念:
PV(物理卷)
VG(卷組)
LV(邏輯卷)
在這裏插入圖片描述

(1)pv 物理卷:
在這裏插入圖片描述

物理卷是LVM機制的基本存儲設備,通常對應爲一個普通分區或整個硬盤。
創建物理卷時,會在分區或硬盤的頭部創建一個保留區塊,用於記錄LVM的屬性,並把存儲空間分割成默認大小爲4MB的基本單元(Physical Extent,PE),從而構成物理卷
物理卷一般直接使用設備文件名稱,如/dev/sdb1 , /dev/sdb1, /dev/sdd等
對於轉換成物理卷的普通分區,建議先使用fdisk工具將分區類型的ID標記號改爲“8e”(8e表示LVM邏輯卷),若是整塊硬盤,可以將所有磁盤空間劃分爲一個主分區後再做相對應調整
(2)VG(Volume Group,卷組)
在這裏插入圖片描述

卷組: 由一個或多個物理卷組成一個整體
在卷組中可以動態的添加或移除物理卷
許多個物理卷可以分別組成不同的卷組,卷組的名稱由用戶自定義
(3)LV(Logical Volume,邏輯卷)
在這裏插入圖片描述
邏輯卷: 邏輯卷建立在卷組之上,與物理卷沒有直接關係
對於邏輯捲來說,每一個卷組就是一個整體,從這個整體中“切出”一小塊空間,作爲用戶創建文件系統的基礎,這一小塊空間就稱爲邏輯卷
使用mkfs等工具在邏輯捲上創建文件系統以後,就可以掛載到Linux系統中的目錄下使用
在這裏插入圖片描述
2、LVM機制的管理:
(1)pvcreate命令——PV物理卷管理
pvcreate用於將分區或整個硬盤轉換爲物理卷,主要是添加LVM屬性並劃分PE存儲單元
例:[root@localhost ~]# pvcreate /dev/sdd1
(2)pvscan命令——掃描系統中的所有物理卷,並輸出相關信息
例:[root@localhost ~]# pvscan
(3)pvdisplay命令——用於顯示物理卷的詳細信息
例:[root@localhost ~]# pvdisplay /dev/sdd1
(4)pvremove命令——將物理卷還原成普通分區或磁盤,不再用於LVM體系
例:[root@localhost ~]# pvremove /dev/sd[b-c]1
(5)vgcreate命令——用於將一個或多個物理卷創建爲一個卷組
例:[root@localhost ~]# vgcreate 123 /dev/sdb1 /dev/sdd1
(6)vgscan命令——用於掃描系統中已建立的LVM卷組及相關信息
(7)vgdisplay命令——用於顯示系統中各卷組的詳細信息
(8)vgremove命令——用於刪除指定的卷組,指定卷組名稱作爲參數即可
例:vgremove 123
(8)vgextend命令——用於擴展卷組的磁盤空間
當建立了新的物理卷,並需要將其添加到已有的卷組中時,就可以使用vgextend命令
vgextend命令第一個參數爲需要擴展容量的卷組名稱,其後爲需要添加到該卷組中的各物理卷
(9)vgreduce命令——從卷組中刪除物理卷
vgreduce指令通過刪除LVM卷組中的物理捲來減少卷組容量。
刪除刪除卷組中丟失的物理卷,使卷組恢復正常狀態
(10)lvcreate命令——從指定的卷組中分割空間,以創建新的邏輯卷
需要指定邏輯卷大小,名稱和所在的卷組名稱作爲參數
邏輯卷創建好以後,可以通過“/dev/卷組名/邏輯卷名”形式的設備文件進行訪問(或/dev/mapper/卷組名-邏輯卷名)
例:lvcreate -L 10G -n 111 123
(11)lvscan命令——掃描系統中已建立的邏輯卷及相關信息
(12)lvdisplay命令——顯示邏輯卷的詳細信息
需要指定邏輯卷的設備文件作爲參數,也可以使用卷組名作爲參數(顯示該卷組中的所有邏輯卷信息)
不指定參數則顯示所有,同pvdisplay和vgdisplay
(13)lvextend命令——動態擴展邏輯卷的空間,當目前使用的邏輯卷空間不足時,可以從所在卷組中分割額外的空間進行擴展。
需要指定增加的容量大小和邏輯卷文件位置
前提是該卷組中還有尚未分配的磁盤空間,否則需要先擴展卷組容量
掛載文件系統後擴容,需要執行以下命令才能被系統識別
例:[root@localhost ~]# lvextend -L +10G /dev/123/111
(14)lvremove命令——刪除指定的邏輯卷
直接使用邏輯卷的設備文件作爲參數即可
例:[root@localhost ~]# lvremove /dev/123/111
(15)lvreduce命令——減少LVM邏輯卷佔用的空間大小
例:[root@localhost ~]# lvreduce -L -5G /dev/123/111 xfs 只支持擴容,不支持減少

實驗:

1、實驗準備:
 (1)先在虛擬機上添加3塊大小爲20G的硬盤。重啓虛擬機,使得剛加的硬盤能夠被識別。
 (2)[root@localhost ~]# fdisk -l                                                    #########查看添加的硬盤是否被系統識別?  沒有的話重新啓動虛擬機
 (3)將每個實體硬盤分區以及轉換格式爲後期建虛擬卷做準備。
       1、 fdisk /dev/sdb                                             
              命令(輸入m獲取幫助):n
              Select (default p) :p                                                            #########一路默認設置
              命令(輸入m獲取幫助):t                                                  #########進入設置硬盤類型模式
              Hex代碼(輸入L列出所有代碼):8e                                     ########將硬盤分區的類型設置爲LVM
              命令(輸入m獲取幫助):p                                                  ########查看上面的設置是否正確,有誤立即回頭修改
              命令(輸入m獲取幫助):w                                                 #########將上面的設置保存  
       2、 fdisk /dev/sdc                                              
              命令(輸入m獲取幫助):n
              Select (default p) :p                                                            #########一路默認設置
              命令(輸入m獲取幫助):t                                                  #########進入設置硬盤類型模式
              Hex代碼(輸入L列出所有代碼):8e                                     ########將硬盤分區的類型設置爲LVM
              命令(輸入m獲取幫助):p                                                 ########查看上面的設置是否正確,有誤立即回頭修改
              命令(輸入m獲取幫助):w                                                #########將上面的設置保存
       3、 fdisk /dev/sdd                                                 
              命令(輸入m獲取幫助):n
              Select (default p) :p                                                            #########一路默認設置
              命令(輸入m獲取幫助):t                                                    #########進入設置硬盤類型模式
              Hex代碼(輸入L列出所有代碼):8e                                     ########將硬盤分區的類型設置爲LVM
              命令(輸入m獲取幫助):p                                                   ########查看上面的設置是否正確,有誤立即回頭修改
              命令(輸入m獲取幫助):w                                                   #########將上面的設置保存    
       4、[root@localhost ~]# fdisk -l                                                    #########查看上面的設置是否正確,有誤立即回頭修改
2、實驗過程:
   (1) 建立物理卷:
         1、[root@localhost ~]# pvcreate /dev/sd{b..d}1                      ##########將sdb、sdc、sdd變成pv模式,後面有1可以回頭看,在上面設置後sdb後面自動加上了
         2、pvscan                                                                              ###########查看上面設置情況
   (2)建立卷組:
         1、[root@localhost ~]#vgcreate mailbox /dev/sd{b..d}1           ##########建立卷組mailbox
         2、vgscan                                                                               ##############發現目前還沒有任何狀況  ***沒有創建邏輯卷
         3、vgdisplay                                                                            #########查看卷組的詳細信息      每個pe大小爲4M
   (3)建立邏輯卷:
         1、[root@localhost ~]#lvcreate -L 25G -n mbox01 mailbox     ##########建立第一個邏輯卷mbox01,大小爲25G,***此時文件夾可以看到邏輯卷:/dev/mailbox/mbox01
         2、[root@localhost ~]#lvcreate -L 15G -n mbox02 mailbox     ##########建立第一個邏輯卷mbox02,大小爲15G.
         3、lvdisplay                                                                             ##########查看上面設置兩個邏輯卷的情況
   (3·1)在未掛載的情況下拓展邏輯卷的大小:
         1、[root@localhost ~]#lvextend -L +10G /dev/mailbox/mbox01   #########給mbox01的空間拓展10G
         2、lvdisplay                                                                                  ##########查看拓展是否成功?(mbox01的空間是否增加10G)
   (4)格式化邏輯卷:
        1、[root@localhost ~]#mkfs -t xfs /dev/mailbox/mbox01             ##########將前面設置好的邏輯卷1號格式化,爲後面的掛載做準備。(要掛載就必須先格式化)
        2、[root@localhost ~]#mkfs -t xfs /dev/mailbox/mbox02             ##########將前面設置好的邏輯卷2號格式化,爲後面的掛載做準備。
   (5)邏輯卷掛載:
        1、[root@localhost ~]#mkdir /opt/mbox{1..2}                                ##########在/opt目錄下建立邏輯卷的掛載點 **mbox1**    邏輯卷文件是mbox01
        2、[root@localhost ~]#ls /opt/                                                      ##########查 看掛載點創建是否成功?
        3、[root@localhost ~]#vim /etc/fstab                                            ##########打開掛載文件系統的配置文件
        4、/dev/mailbox/mbox01      /opt/mbox1      xfs   defaults    0  0    ##########將邏輯卷文件mbox01*永久*掛載到mbox1下
             /dev/mailbox/mbox02      /opt/mbox2      xfs   defaults    0  0    ##########將邏輯卷文件mbox02*永久*掛載到mbox2下
        4·1、df-Th                                                                                      ##########尚未發現掛載文件系統的出現
        5、[root@localhost ~]#mount -a                                                    ##########刷新所有掛載文件系統
        6、df -Th                                                                                        ##########即可發現前面的掛載文件系統已實現掛載
3、實驗拓展:
   (1)在已掛載的情況下,再次拓展邏輯卷:
       1、[root@localhost ~]#lvextend -L +5G /dev/mailbox/mbox01         ##########和前面的一樣照常增加空間
       2、df -Th                                                                                         ##########發現目標邏輯卷並沒有拓展空間
       3、[root@localhost ~]#xfs_growfs /dev/mapper/mailbox-mbox01    ##########重新刷新邏輯卷的文件系統
   (2)實現Swap分區拓展:
       1、[root@localhost ~]# fdisk /dev/sdd                                             ##########進入sdd的交互模式
       2、設備 Boot         Start         End        Blocks         Id       System      ##########將sdd分成sdd1的主分區(83),sdd2的拓展分區(5),再在sdd2裏面分出sdd5、sdd6的邏輯分區
            /dev/sdd1          2048    20973567    10485760      83    Linux
           /dev/sdd2        20973568    41943039    10484736    5  Extended
           /dev/sdd5        20975616    31461375     5242880   83  Linux
           /dev/sdd6        31463424    41943039     5239808   83  Linux
      3、命令(輸入 m 獲取幫助):t                                                              ##########將sdd5的邏輯分區變爲Swap分區
          分區號 (1,2,5,6,默認 6):5
          Hex 代碼(輸入 L 列出所有代碼):82
          已將分區“Linux”的類型更改爲“Linux swap / Solaris”
     4、命令(輸入 m 獲取幫助):w                                                             ############保存後退出
         The partition table has been altered!
     5、查看swap分區是否得以拓展:
         [root@localhost ~]# cat /proc/meminfo |grep Sw*                        










發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章