關于 LVM 邏輯卷管理

              邏輯卷管理 (LVM)
   
允許對卷進行方便操作的抽象層,包括從新設定文件系統的大小   

允許在多個設備間重新組織文件系統
將設備指定為物理卷
用一個或者多個物理卷來創建一個卷組
物理卷是用固定大小的物理區域(Physical
Extent PE) 來定義的
在物理卷上創建的邏輯卷是由物理區域(PE)組成
可以在邏輯卷上創建文件系統
下面看圖解    

 關于 LVM 邏輯卷管理  
   
 LVM:
Logical Volume Manager, Version: 2   
 dm: device
mapper:將一個或多個底層塊設備組織成一個邏輯設備的模塊
設備名:/dev/dm-#
軟鏈接:
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
/dev/vol0/root 

 
 
LVM可以彈性的更改LVM的容量
通過交換PE來進行資料的轉換,將原來LV內的PE轉移到其他的設備中以降低LV的容量,或將其他設備中的PE加到LV中以加大容量
 

下面看圖解

關于 LVM 邏輯卷管理  
  
  

pv(物理卷)管理工具
顯示pv信息:
           pvs 簡要pv信息顯示
           pvdisplay  
顯示目前系統上面的PV狀態
創建pv與PV相關的一些管理命令有:
           pvcreate /etc/設備   將實體設備創建成為PV
主要創建PV命令
           pvscan      搜尋目前系統里面任何具有PV的磁碟  
    
刪除pv:
           vremove    將PV屬性移除,讓該設備不具有PV屬性
        
     1 用fdisk
配置新的具有 8e 系統ID 的分區   
     # fdisk /dev/sdb
     n   新建分區
     p  
顯示磁盤分區表
     l   列表出所的系統ID號
     t   修改分區系統的ID
     8e  系統ID
    
w   保存并退出
     2 利用pvcreate 創建 PV
     [root@Compro ~]# pvcreate
/dev/sde{1,2}  
     Physical volume "/dev/sde1" successfully
created
     Physical volume "/dev/sde2" successfully created
  

       
                       
vg(卷組)管理工具
顯示vg信息:
         
vgs
          vgdisplay 顯示目前系統上面的VG狀態
創建vg與vg相關的一些管理命令有:
         
vgcreate 就是主要創建VG的命令
          vgscan   查找系統上是否有VG存在
          vgchange 
配置VG是否啟動(active活躍的)
          vgremove  刪除一個VG    

創建vg:
         vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName
PhysicalDevicePath [PhysicalDevicePath…]
         [root@Compro ~]# vgcreate
-s 10M makangbo /dev/sde{1,2}
         Volume group "makangbo" successfully
created  
   管理vg:
         vgextend  在VG內添加額外的PV
        
[root@Compro ~]# vgextend makangbo /dev/sde1
         vgrduce  
在VG內移除PV
         [root@Compro ~]# vgreduce makangbo /dev/sde1
        
Removed "/dev/sde1" from volume group "makangbo"
  刪除vg:
       
先做pvmove,再做vgremove                                  
 

lv(邏輯卷)管理工具
顯示lv信息:lvs
            lvdisplay  顯示系統上面LV
創建LV
與LV相關的一些管理命令有:
            lvscan    查詢系統上面LV
            lvextend 
在LV里面添加容量
            lvresize  對LV進行容量大小的調整          

 創建LV:
 lvcreate-L #[mMgGtT] -n NAME VolumeGroup  主要創建LV命令
 lvcreate
-L 10G -n xiaomaglv xiaomagvg
 刪除邏輯卷:
 vremove/dev/VG_NAME/LV_NAME  

   
重設文件系統大?。?br />fsadm[options] resize device
[new_size[BKMGTEP]]
resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]  

   
 文件系統階段:
 要想真正的使用lvm就必須對lv進行格式化掛載
 1 mkfs -t ext3
/dec/xiaomagvg/xiaomaglv
 2 mkdir /mnt/lvm
 3 mount
/dev/xiaomagvg/xiaomaglv /mnt/lvm
   
 擴展和縮減邏輯卷
擴展LV:
#ddisk
/dev/sdb                                  fdisk配置新的具有8e 文件系統ID的分區
# pvcreate
/dev/sde{1,2}                         利用pvcreate創建出來PV
# vgcreate -s 10M
makangbo /dev/sde{1,2}         利用vgextend 將 PV加入我門的xiaomagvg
# lvresize
#[mMgGtT] /dev/xiaomagvg/xiaomaglv    利用lvresize 將新加入的PV內的PE加入xiaomaglv中
#
resize2fs #[mMgGtT] /dev/xiaomagvg/xiaomaglv   透過resize2fs 將文件系統的容量確實添加。
 
xfs_growfs /mnt/mylv/               xfs系列  只能擴展 不能縮減
  lvextend -r -l
+100%FREE /dev/vg0/mylv  一步到位     
縮減LV:
建議先備份
# umount
/dev/xiaomagvg/xiaomaglv                先卸載已經掛載的LV
# e2fsck -f
/dev/xiaomagvg/xiaomaglv             強制進行磁盤檢測
# resize2fs #[mMgGtT]
/dev/xiaomagvg/xiaomaglv   重新設定文件系統大小
# lvreduce -L [-]#[mMgGtT] 
/dev/xiaomagvg/xiaomaglv  在LV里面減少容量
# mount /dev/xiaomagvg/xiaomaglv /mnt/lvm

      
    
   
邏輯卷管理器快照

快照是特殊的邏輯卷,它是在生成快照時存在的邏輯卷的準確拷貝
對于需要備份或者賦值的現有數據集臨時拷貝以及其它操作來說,快照是最合適的選擇。

快照只有在它們和原來的邏輯卷不同時才會消耗空間。
  
在生成快照是會分配個它一定的空間,但只有在原來的邏輯卷或者快照有所改變才會使用這些空間
  
當原來的邏輯卷中有所改變時,會將舊的數據復制到快照中。
   快照中只含有原來的邏輯卷中更改的數據或者自生成快照后的快照中更改的數據
  
建立快照的卷大小只需要原始邏輯卷的15%~20%就足夠了,也可以使用lvextend 擴大快照

快照就是將當時的系統信息記錄下來,若將來有任何數據改動了,則原始數據會被移動到快照區
沒有改動的區域則有快照區和文件系統共享。

關于 LVM 邏輯卷管理

由于快照區與原本的LV共用很多PE的區塊,因此快照去與被快照的LV必須要在同一個VG上,系統恢復的時候的文件數量不能高于快照區的實際容量

使用LVM快照  
lvcreate – l 64 -s -n name -p r /dev/vg0/data

掛載快照
mkdir -p /mnt/snap
mount -o ro /dev /vg0/snap-data
/mnt/snap
刪除快照
umount /mnt/databackup
lvremove /dev/vg0/databackup

 

1 創建至少兩個PV大小設定為+20G 
 [root@Compro ~]# pvcreate
/dev/sdf{1,2}
 創建VGtestvg添加PV,要求PE大小為16M
 [root@Compro ~]# vgcreate -s
16M testvg /dev/sdf{1,2}
 在VG中創建大小為5G的LV testlv
 [root@Compro ~]#
lvcreate -L 5G -n testlv testvg
 使用lvmh就必須對lv進行格式化掛載
 [root@Compro ~]#
mkfs -t ext3 /dev/testvg/testlv
 創建掛載點和掛載
 [root@Compro ~]# mkdir
/mnt/users
 [root@Compro ~]# mount /dev/testvg/testlv
/mnt/users
 
 
2 新建用戶archlinux 要求其家目錄為/users
 [root@Compro ~]#
useradd archlinux -d /home/users
 而后用su
切換至archlinux用戶,復制/etc/pam.d目錄至自己的家目錄
 [archlinux@Compro ~]$ cp /etc/pam.d/*
./
 
 
 3上面testlv創建的是 5G 現在要求擴展到7G
 [root@Compro ~]# lvextend -L 7G
/dev/testvg/testlv
 
4 縮減testlv至3G的大小
 [root@Compro ~]# lvreduce -L 3G
/dev/testvg/testlv
 
 
 
5 對testlv
創建快照,并嘗試基于快照備份數據,驗證快照的功能
 [root@Compro ~]# lvcreate -L 3G -s -n kuaizhaoname
/dev/testvg/testlv
 顯示信息
 [root@Compro ~]#
lvdisplay
 創建快照目錄
 [root@Compro ~]# mkdir
/mnt/snapshotdir
 掛載
 [root@Compro ~]# mount /dev/testvg/kuaizhaoname
/mnt/snapshotdir
 
 
 利用快照恢復數據
 注意:回復的數據不能超過快照區的總大小,因為如果變動的數據大小超過了快照區的空間,那么快照去是不能容納所有變得的數據了,這個時候快照功能會失效

 1 現在原來的lv中寫入一些數據, 然后通過lvm的快照功能來恢復之前的操作 原先快照的數據
 [root@Compro ~]# cp -R
/etc /mnt/testlv
 
 創建一數據恢復的臨時目錄
 [root@Compro ~]# mkdir -pv
/tmp/backup
 然后cd到快照掛載點
 [root@Compro ~]# cd
/mnt/kuaizhaoname/
 將快照里數據打包壓縮
 [root@Compro kuaizhaoname]# tar -zcf
/tmp/bbackup/testlv.tar.gz *
 卸載快照NAME 并且移除,因為里面的內容已經備份出來了
 [root@Compro
~]#  umount /mnt/kuaizhaoname
 [root@Compro ~]# lvremove /dev/testvg/kuaizhao

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
   
   

原創文章,作者:小馬哥,如若轉載,請注明出處:http://www.www58058.com/42768

(0)
小馬哥小馬哥
上一篇 2016-09-02
下一篇 2016-09-02

相關推薦

  • 雷人的程序注釋

    使用Google code search可以搜索到一些比較有趣的代碼注釋,呵呵。下面的這些程序注釋有搞笑的,也有粗口,看來寫程序本來也不是一件很枯燥的事,關鍵看你的心態如何了。讀到這些注釋的時候,只能想到一個詞,那就是“瘋狂的程序員”,哈哈。Have a Fun  ;-) 寫個程序時不忘表達自己的感情,以免以后忘了。 呵呵,看來自己也不是很自信。 …

    Linux干貨 2016-05-10
  • 關于 shell腳本編程第一篇

                                                   shell腳本編程(1) …

    系統運維 2016-08-15
  • Linux內核編譯過程詳解

    前言 Linux內核是Linux操作系統的核心,也是整個Linux功能體現的核心,就如同發動機在汽車中的重要性。內核主要功能包括進程管理、內存管理、文件管理、設備管理、網絡管理等。Linux內核是單內核設計,但卻采用了微內核的模塊化設計,支持內核線程以及動態裝載內核模塊的能力。 Linux作為一個自由軟件,在廣大愛好者的支持下,內核版本不斷更新。新的內核修訂…

    Linux干貨 2015-04-01
  • 學習宣言

     學習計劃:參考N24學習時間與線路圖,盡最大努力完成。 目標:學習好Linux,提升自我價值,找一份待遇好的工作。 宣言:每一次輕易的放棄,都是人生的一處敗筆,為了夢想,加油!

    Linux資訊 2016-10-26
  • 基于ssl協議和openssl工具建立私有CA

    前言     要自建CA需先了解openssl工具和ssl協議還有各加密類型     ssl(Secure Socket Layer)安全套接字層當前版本為3.0,瀏覽器與Web服務器之間的身份認證和加密數據傳輸,它工作在傳輸層和各應用層之間,用戶可以選擇是否使用ssl進行傳輸,選擇ssl協議將調用…

    Linux干貨 2015-05-07
  • 回溯法 -數據結構與算法

    1.回溯法算法思想: 定義:         回溯法(探索與回溯法)是一種選優搜索法,按選優條件向前搜索,以達到目標。但當探索到某一步時,發現原先選擇并不優或達不到目標,就退回一步重新選擇,這種走不通就退回再走的技術為回溯法,而滿足回溯條件的某個狀態的點稱為“回溯點”。 1、回溯法適用:有許多問題,當需要找出它的解集(…

    Linux干貨 2015-04-07
欧美性久久久久