邏輯卷小結

邏輯卷

邏輯卷:把不同大小的物理設備,抽象成一個完整的文件系統,方便對物理設備的管理與應用。

其基本步驟為:

1.將指定的設備設置為物理卷
    物理卷是指定大小的固定得物理區域
2.用一個或者多個物理卷創建一個卷組
3.創建邏輯卷
    在物理卷上創建的邏輯卷由物理區域組成,可以再邏輯卷上創建文件系統

    dm:device mapper ,將一個或多個底層塊設備組織成一個邏輯設備的模塊。

    /dev/mapper/VG_name/LV_name

pv管理工具:

常用命令:

  • pvs:顯示pv的簡要信息
          [root@laodeng6 ~]# pvs
          PV         VG   Fmt  Attr PSize  PFree
          /dev/sda2  vg0  lvm2 a--u 59.99g 7.99g
  • pvdisplay:顯示pv的詳細信息
        [root@laodeng6 ~]# pvdisplay 
        --- Physical volume ---
        PV Name               /dev/sda2
        VG Name               vg0
        PV Size               60.00 GiB / not usable 8.00 MiB    
        Allocatable           yes 
        PE Size               8.00 MiB
        Total PE              7679
        Free PE               1023
        Allocated PE          6656
        PV UUID               oqQvzV-SU1r-HfCK-adnG-iQnv-Pg20-bS5HDQ
  • pvcreate /dev/device :創建pv
        [root@laodeng6 ~]# pvcreate /dev/sdc1
        Physical volume "/dev/sdc1" successfully created
      
        [root@laodeng6 ~]# pvdisplay /dev/sdc1    
        "/dev/sdc1" is a new physical volume of "5.01 GiB"
        --- NEW Physical volume ---
        PV Name               /dev/sdc1
        VG Name               
        PV Size               5.01 GiB    
        Allocatable           NO
        PE Size               0   
        Total PE              0
        Free PE               0
        Allocated PE          0
        PV UUID               yYh2J4-PryA-l0Fd-WUi-aYf-nnPh-joerv
  • pvremove /dev/device:移除pv
            [root@laodeng6 ~]# pvremove /dev/sdc1
            Labels on physical volume "/dev/sdc1" successfully wiped
vg管理工具:

常用命令:

  • vgs:顯示卷組的簡要信息
      [root@laodeng6 ~]# vgs
        VG   #PV #LV #SN Attr   VSize  VFree
        vg0    1   4   0 wz--n- 59.99g 7.99g
  • vgdisplay:顯示卷組的詳細信息
        [root@laodeng6 ~]# vgdisplay 
        --- Volume group ---
        VG Name               vg0
        System ID             
        Format                lvm2
        Metadata Areas        1
        Metadata Sequence No  5
        VG Access             read/write
        VG Status             resizable
        MAX LV                0
        Cur LV                4
        Open LV               4
        Max PV                0
        Cur PV                1
        Act PV                1
        VG Size               59.99 GiB
        PE Size               8.00 MiB
        Total PE              7679
        Alloc PE / Size       6656 / 52.00 GiB
        Free  PE / Size       1023 / 7.99 GiB
        VG UUID               fEcXYF-zk91-qaiW-4OaN-X3T1-eLrt-AV3L4i
  • vgcreate vg_name /dev/device:創建vg
        [root@laodeng6 ~]# vgcreate testvg /dev/sdc1
        Volume group "testvg" successfully created
        [root@laodeng6 ~]# vgdisplay testvg
        --- Volume group ---
        VG Name               testvg
        System ID             
        Format                lvm2
        Metadata Areas        1
        Metadata Sequence No  1
        VG Access             read/write
        VG Status             resizable
        MAX LV                0
        Cur LV                0
        Open LV               0
        Max PV                0
        Cur PV                1
        Act PV                1
        VG Size               5.01 GiB
        PE Size               4.00 MiB
        Total PE              1282
        Alloc PE / Size       0 / 0   
        Free  PE / Size       1282 / 5.01 GiB
        VG UUID               Qx8PFT-mm5W-sbF3-qyyj-Ac2K-NXSH-O50Ivq
  • vgextend vg_name /dev/device:擴展vg空間
            [root@laodeng6 ~]# vgextend testvg /dev/sdc2
            Volume group "testvg" successfully extended
  • vgreduce vg_name /dev/device:縮減vg空間,把pv從vg中移除
            [root@laodeng6 ~]# vgreduce testvg /dev/sdc2
            Removed "/dev/sdc2" from volume group "testvg"
    注意:在將pv從vg中移除時,要先做pvmove操作

lv管理工具

常用命令:

  • lvs:顯示lv的簡要信息
      
        [root@laodeng6 ~]# lvs
        LV   VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
        root vg0  -wi-ao---- 20.00g                                                    
        swap vg0  -wi-ao----  2.00g                                                    
        usr  vg0  -wi-ao---- 10.00g                                                    
        var  vg0  -wi-ao---- 20.00g
  • lvdisplay:顯示lv的詳細信息
  • lvcreate -L #[mMgGtT] -n NAME VolumeGroup:創建邏輯卷
            [root@laodeng6 ~]# lvcreate -L 3G -n testlv testvg
            Logical volume "testlv" created.

使用邏輯卷

在完成以上的幾步之后要想使用邏輯卷的話,需要對其進行格式化與掛載操作。

格式化硬盤指定文件系統:
mkfs.ext4 -b 1024 -L TESTLV /dev/testvg/testlv
  • 掛載邏輯卷
      
      [root@laodeng6 ~]# mkdir /testlvm
      [root@laodeng6 ~]# mount /dev/testvg/testlv /test
      testdir/ testlvm/ 
      [root@laodeng6 ~]# mount /dev/testvg/testlv /testlvm/
    
      [root@laodeng6 ~]# df -h
      df: `/mnt/usb': Input/output error
      Filesystem            Size  Used Avail Use% Mounted on
      /dev/mapper/vg0-root   20G  336M   19G   2% /
      tmpfs                 491M     0  491M   0% /dev/shm
      /dev/sda1             190M   34M  147M  19% /boot
      /dev/mapper/vg0-usr   9.8G  2.2G  7.1G  24% /usr
      /dev/mapper/vg0-var    20G  201M   19G   2% /var
      /dev/mapper/testvg-testlv                    3.0G  3.3M  2.8G   1% /testlvm

擴展邏輯卷

邏輯卷支持在線修改其大小,所以不用卸載之后再擴展。
    lvextent -L [+]#[mMgGtT] /dev/vg_name/lv_name
    其中不帶[+]的話是直接擴展到#[mMgGtT]指定的大小。
      [root@laodeng6 ~]# lvextend -L 5G /dev/testvg/testlv 
      Size of logical volume testvg/testlv changed from 3.00 GiB (768 extents) to 5.00 GiB (1280 extents).
      Logical volume testlv successfully resized.
    
注意:做到此步之后邏輯卷是不能馬上被使用的,因為擴展之后,你的文件系統依然是原來的大小,需要擴展文件系統到邏輯卷指定的大小方可使用。
命令是:
    resize2fs /dev/vg_name/lv_name
    
        [root@laodeng6 ~]# resize2fs /dev/testvg/testlv
        resize2fs 1.41.12 (17-May-2010)
        Filesystem at /dev/testvg/testlv is mounted on /testlvm; on-line resizing required
        old desc_blocks = 12, new_desc_blocks = 20
        Performing an on-line resize of /dev/testvg/testlv to 5242880 (1k) blocks.
        The filesystem on /dev/testvg/testlv is now 5242880 blocks long.

縮減邏輯卷

在縮減邏輯卷時,不能直接就縮減邏輯卷,應該先縮減內部文件系統的大小至制定大小,然后再縮減邏輯卷的物理空間大小。與擴展邏輯卷是一個相反的過程。
    在執行縮減操作時要注意的是,縮減后的空間一定要能夠容納目前邏輯卷里的所有文件才行。
    而且在縮減邏輯卷時要先卸載邏輯卷。因為縮減不允許在線進行。
    縮減有風險,執行需謹慎。

所以縮減邏輯卷有以下幾步:

  • 1.卸載邏輯卷
    umount /dev/vg_name/lv_name
      
      [root@laodeng6 ~]# umount /dev/testvg/testlv
      [root@laodeng6 ~]# df
      df: `/mnt/usb': Input/output error
      Filesystem           1K-blocks    Used Available Use% Mounted on
      /dev/mapper/vg0-root  20511356  343732  19119048   2% /
      tmpfs                   502068       0    502068   0% /dev/shm
      /dev/sda1               194241   34181    149820  19% /boot
      /dev/mapper/vg0-usr   10190136 2238672   7427176  24% /usr
      /dev/mapper/vg0-var   20511356  204996  19257784   2% /var
  • 2.做文件系統的強制檢測
      e2fsck -f /dev/vg_name/lv_name
          
          [root@laodeng6 ~]# e2fsck -f /dev/testvg/testlv
          e2fsck 1.41.12 (17-May-2010)
          Pass 1: Checking inodes, blocks, and sizes
          Pass 2: Checking directory structure
          Pass 3: Checking directory connectivity
          Pass 4: Checking reference counts
          Pass 5: Checking group summary information
          TESTLV: 11/327680 files (0.0% non-contiguous), 119749/5242880 blocks
  • 3.縮減其邏輯卷文件系統大小
      resize2fs /dev/vg_name/lv_name #[mMgGtT]
      
          [root@laodeng6 ~]# resize2fs /dev/testvg/testlv 4G
          resize2fs 1.41.12 (17-May-2010)
          Resizing the filesystem on /dev/testvg/testlv to 4194304 (1k) blocks.
          The filesystem on /dev/testvg/testlv is now 4194304 blocks long.
  • 4.縮減其邏輯卷的大小
      lvreduce -L [-]#[mMgGtT] /dev/vg_name/lv_name
      其前面的減號與擴展邏輯卷里的加號用法相同。
    
        [root@laodeng6 ~]# lvreduce -L 4G /dev/testvg/testlv
        WARNING: Reducing active logical volume to 4.00 GiB.
        THIS MAY DESTROY YOUR DATA (filesystem etc.)    
        Do you really want to reduce testvg/testlv? [y/n]: y    
        Size of logical volume testvg/testlv changed from 5.00 GiB (1280 extents) to 4.00 GiB (1024 extents).    
        Logical volume testlv successfully resized.
  • 5.最后再把邏輯卷掛載到系統上就完成了邏輯卷的縮減操作。

快照

  • 創建快照卷
    
      lvcreate -L #[mMgGtT] -p r -s -n sanpshot_lv_name original_lv_name
          -L #:指定快照卷的大小      
          -p:指明權限      
          -s:表示快照      
          -n:快照名字  
      original_lv_name:原邏輯卷名字
    
          [root@laodeng6 ~]# lvcreate -s -L 1G -n testlv-snap -p r /dev/testvg/testlv 
          Logical volume "testlv-snap" created.
  • 掛載快照卷
    
      [root@laodeng6 ~]# mount /dev/testvg/testlv-snap /mnt
      mount: block device /dev/mapper/testvg-testlv--snap is write-protected, mounting read-only
    
      做完快照后將其里面的內容備份出來后快照卷就沒有什么作用了,此時刪除快照卷就行。
  • 邏輯卷的刪除操作
      刪除時要先取消掛載
      umount /dev/vg_name/lv_name
      然后執行邏輯卷刪除命令:
      lvremove /dev/vg_name/lv_name
      卷組的刪除操作:
      vgremove /dev/vg_name
      pv的刪除操作:
      pvremove /dev/device

    raid小實例:

    • 創建一個可用空間為500M的RAID1設備,文件系統為ext4,有一個空閑盤,開機可自動掛載至/backup目錄

                

    (1)創建分區及文件系統

    1.png

    (2)創建raid1

    2.png

    (3)創建/dev/md0的文件系統

    3.png

    (4)掛載

    4.png4。1.png

    (5)生成raid1的配置文件防止重新啟動時失敗

    5.png

原創文章,作者:dxkboke,如若轉載,請注明出處:http://www.www58058.com/42194

(0)
dxkbokedxkboke
上一篇 2016-09-01
下一篇 2016-09-01

相關推薦

  • Bash1

    做語法測試,沒有消息就是最好的消息 加權限 單個語句的錯誤并不妨礙之后的語句,但是邏輯錯誤會導致后續語句執行不了 bash:     -n:語法測試     -x:模擬單步執行 變量類別:     本地變量   &nbs…

    Linux干貨 2016-09-17
  • 簡單shell腳本習題

    習題 作業 簡單shell腳本習題 習題1 答案 習題2 答案 習題3 答案 習題4 答案 習題5 答案 習題6 答案 習題1 編寫腳本/root/bin/systeminfo.sh,顯示當前主機系統信息,包括主機名,IPv4地址,操作系統版本,內核版本, CPU型號,內存大小,硬盤大小。 答案 #!/bin/bash IPADDR=$(…

    Linux干貨 2017-04-10
  • 第九周-Shell腳本編程

      1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash nologin=0 login=0 for i in `cut -d : -f 7 /etc/passwd`;do if [ $i = /sbin/n…

    Linux干貨 2017-08-23
  • 優云automation實踐技巧:簡單4步完成自動化構建發布

    前言:本文介紹了優云是如何將運維自動化產品應用到日常工作實踐中,并通過內部用戶的大量使用來不斷改進產品的用戶體驗。 各位看官,這不是一個揭發單身有為青年因同事們天天秀恩愛而受到一萬點暴擊傷害的故事。這里指的狗糧,不是真正的“狗糧”——當然,也不是你們認為的狗糧。 事實上,現在很多涉足產品開發的互聯網公司,都會提到“吃狗糧”這一概念(出自“Eating you…

    系統運維 2017-01-09
  • 馬哥Linux第五周作業

    at,cron,rpm,yum,sed

    2018-01-12

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-01 14:11

    對lvm的工作原理建議畫圖來表示,直觀明了,同時對于raid常見級別的工作模式及使用場景需要作者能熟練掌握,并通過自己的語言描述出來。

欧美性久久久久