邏輯卷管理器

邏輯卷管理器(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-模型圖.jpg

lvm更改文件系統容量

    LVM 可以彈性的更改LVM的容量

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

pv管理工具

    顯示pv 信息

        pvs :簡要pv 信息顯示

        pvdisplay

    創建pv

        pvcreate /dev/DEVICE

blob.png

                這個表示已經創建過了

blob.png

                用pvdisplay命令查看下其詳細信息

vg 管理工具

    顯示卷組

        vgs

        vgdisplay

    創建卷組

        vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName PhysicalDevicePath [PhysicalDevicePath…]

blob.png

創建卷組  指定vg0為卷組名字 添加/dev/sda6進卷組,然后pvdisplay命令查看下   成功

    管理卷組

        vgextend VolumeGroupName PhysicalDevicePath [PhysicalDevicePath…]

        vgreduce VolumeGroupName PhysicalDevicePath [PhysicalDevicePath…]

    刪除卷組

        先做pvmove ,再做vgremove

lv 管理工具

    顯示邏輯卷

        lvs

        Lvdisplay

    創建邏輯卷

        lvcreate -L #[mMgGtT] -n NAME VolumeGroup

    刪除邏輯卷

        lvremove /dev/VG_NAME/LV_NAME

重設文件系統大小

        fsadm [options] resize device [new_size[BKMGTEP]]

        resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

blob.png

        創建邏輯卷 查看其詳細信息

然后mkfs格式化一下    vi /etc/fstab寫入配置文件   mkdir /mnt/lv0創建文件夾  mount -a掛載  然后就可以正常使用了

擴展和縮減邏輯卷

    擴展邏輯卷:  前提是卷組必須有空間

            # lvextend -L [+]#[mMgGtT]

            /dev/VG_NAME/LV_NAME

            # resize2fs /dev/VG_NAME/LV_NAME

如果沒空間了  可以加硬盤  比如:pvcreate /dev/sdc   vgextend vg0 /dev/sdc 就可以加進去了

縮減邏輯卷

            # umount /dev/VG_NAME/LV_NAME

            # e2fsck -f /dev/VG_NAME/LV_NAME

            # resize2fs /dev/VG_NAME/LV_NAME

            #[mMgGtT]

            # lvreduce -L [-]#[mMgGtT]

            /dev/VG_NAME/LV_NAME

            #mount

邏輯卷的一些相關命令

    創建邏輯卷

        1、分區

            fdisk /dev/sda

            partx -a /dev/sda

            lsblk

        2、pvcreate  /dev/sd{a7,b}

            pvs

            pvdisplay 

        3、vgcreate vg0 /dev/sd{a7,b}

            vgs;pvs;pvdisplay;vgdisplay 

        4、lvcreate  -n lv0 -L 10G vg0 

        5、mkfs.ext4 /dev/vg0/lv0 

        6、vi /etc/fstab 

            mkdir /mnt/lv0;mount -a

    擴展lv

        lvextend  -L +10G  /dev/vg0/lv0 

        resize2fs  /dev/vg0/lv0 

        df -h

擴展卷組

        1、pvcreate  /dev/sdc

        2、vgextend vg0 /dev/s

縮減邏輯卷

        # umount /dev/VG_NAME/LV_NAME

        # e2fsck -f /dev/VG_NAME/LV_NAME

        # resize2fs /dev/VG_NAME/LV_NAME

        #[mMgGtT]

        # lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME

        # mount

創建邏輯卷實例

    ·創建物理卷

        pvcreate /dev/sda3

    ·為卷組分配物理卷

        vgcreate vg0 /dev/sda3

    ·從卷組創建邏輯卷

        lvcreate -L 256M -n data vg0

        mke2fs -j /dev/vg0/data

   ·掛載

    mount /dev/vg0/data /mnt/data

邏輯卷管理器快照

    ·快照是特殊的邏輯卷,它是在生成快照時存在的邏輯卷的準確拷貝

    ·對于需要備份或者復制的現有數據集臨時拷貝以及其它操作來說,快照是最合適的選擇。

    ·快照只有在它們和原來的邏輯卷不同時才會消耗空間。

        *在生成快照時會分配給它一定的空間,但只有在原來的邏輯卷或者快照有所改變才會使用這些空間

        *當原來的邏輯卷中有所改變時,會將舊的數據復制到快照中。

        *快照中只含有原來的邏輯卷中更改的數據或者自生成快照后的快照中更改的數據

        *建立快照的卷大小只需要原始邏輯卷的15% ~20% 就夠了。也可以使用lvextend 放大快照。

邏輯卷的原

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

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

使用lvm快照

    為現有邏輯卷創建快照

 #lvcreate -l 64 -s -n snap-data -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


練習:

·創建一個至少有兩個PV 組成的大小為20G的名為testvg的VG ;要求PE 大小為16MB, 而后在卷組中創建大小為5G 的邏輯卷testlv ;掛載至/users 目錄                                     

pvcreate /dev/sd{b,c,e}{1,2}                 
vgcreate testvg -s 16M /dev/sd{b,c,e}{1,2}      
lvcreate -n testlv -L 5G testvg                 
mkfs.ext4 /dev/testvg/testlv                  
mkdir /users                                   
vim /etc/fstab                                 
mount -a

·新建用戶archlinux ,要求其家目錄為/users/archlinux,而后su切換至archlinux 用戶,復制/etc/pam.d目錄至自己的家目錄

useradd -d /users/archlinux archlinux           
su - archlinux                               
cp -a /etc/pam.d/* .                            
exit

·擴展testlv 至7G ,要求archlinux 用戶的文件不能丟失

·收縮testlv 至3G ,要求archlinux

lvextend -L 7G /dev/testvg/testlv               
resize2fs /dev/testvg/testlv                   
umount /users                                   
e2fsck -f /dev/testvg/testlv    
lvreduce -L 3G /dev/testvg/testlv        
mount -a

·對testlv 創建快照,并嘗試基于快照備份數據,驗正快照的功能

lvcreate -s -L 500M -n testlvsnap -p r /dev/testvg/testlv       
mkdir /mnt/testlvsnap                                             
mount /dev/testvg/testlvsnap /mnt/testlvsnap/

原創文章,作者:舊城以西,如若轉載,請注明出處:http://www.www58058.com/43878

(0)
舊城以西舊城以西
上一篇 2016-09-06 15:18
下一篇 2016-09-06 15:23

相關推薦

  • 用戶查找與添加 第四周

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 cp /etc/skel /home/tuser1  chmod -R go=— /home/tuser1 2、編輯/etc/group文件,添加組hadoop…

    Linux干貨 2017-02-14
  • 學習宣言

    世界上只有一種失敗,就是半途而廢!

    Linux干貨 2016-12-29
  • N26-第二周博客作業

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。    查看類    pwd : print name of current/working directory  打印當前工作目錄;        &n…

    Linux干貨 2017-02-17
  • N25第四周總結(raid)

    raid詳解 大綱:    1、什么是raid      2、如何實現raid      3、為什么要使用raid      4、raid使用方法詳解      5、mdadm(軟raid)使用   …

    Linux干貨 2016-12-22
  • 用戶和組的配置文件

    一.linux上的用戶和組   linux上的用戶:       linux上的用戶即Username/UID分為以下類別:         管理員:root,0    …

    Linux干貨 2016-10-23
  • Vim 末行模式 & crontab & scripts 練習

    1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#;   ~]# cp /etc/rc.d/rc.sysinit /tmp     %s@^[[:space:]]\+\*@#&@g     (使用元字符 有幾…

    Linux干貨 2016-10-31
欧美性久久久久