溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux邏輯卷管理LVM詳解

發(fā)布時間:2020-08-07 16:06:05 來源:ITPUB博客 閱讀:194 作者:wwjfeng 欄目:建站服務(wù)器

轉(zhuǎn)載自:http://blog.csdn.net/ikikik2002/article/details/5187276

一、 前言
LVM是邏輯卷管理(Logical Volume Manager)的簡稱,他是建立在物理存儲設(shè)備之上的一個抽象層,允許你生成邏輯存儲卷,和直接使用物理存儲在管理上相比,提供了更好靈活性。
LVM將存儲虛擬化,使用邏輯卷,你不會受限于物理磁盤的大小,另外,和硬件相關(guān)的存儲設(shè)置被其隱藏,你能不用停止應(yīng)用或卸載文件系統(tǒng)來調(diào)整卷大小或數(shù)據(jù)遷移.這樣能減少操作成本.
LVM和直接使用物理存儲相比,有以下好處:
1. 靈活的容量.
當(dāng)使用邏輯卷時,文件系統(tǒng)能擴展到多個磁盤上,你能聚合多個磁盤或磁盤分區(qū)成單一的邏輯卷.

2.可伸縮的存儲池.
你能使用簡單的命令來擴大或縮小邏輯卷大小,不用重新格式化或分區(qū)磁盤設(shè)備.

3.在線的數(shù)據(jù)再分配.
你能在線移動數(shù)據(jù),數(shù)據(jù)能在磁盤在線的情況下重新分配.比如,你能在線更換可熱插拔的磁盤.

4. 方便的設(shè)備命名
邏輯卷能按你覺得方便的方式來起所有名稱.

5.磁盤條塊化.
你能生成一個邏輯盤,他的數(shù)據(jù)能被條塊化存儲在2個或更多的磁盤上.這樣能明顯提升數(shù)據(jù)吞吐量.

6.映像卷
邏輯卷提供方便的方法來映像你的數(shù)據(jù).

7.卷快照
使用邏輯卷,你能獲得設(shè)備快照用來一致性備份或測試數(shù)據(jù)更新效果而不影響真實數(shù)據(jù).

二、 LVM基本術(shù)語
前面談到,LVM是在物理存儲上添加的一個邏輯層,來為文件系統(tǒng)屏蔽下面的硬件存儲設(shè)備,提供了一個抽象的盤卷,在盤卷上建立文件系統(tǒng)。首先我們討論以下幾個LVM術(shù)語:

* 物理存儲介質(zhì)(The Physical Media)
這里指系統(tǒng)的存儲設(shè)備,如:/dev/hda1、/dev/sda等等,是存儲系統(tǒng)最低層的存儲單元。

* 物理卷(PV, Physical Volume)
物理卷就是指磁盤,磁盤分區(qū)或從邏輯上和磁盤分區(qū)具有同樣功能的設(shè)備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(zhì)(如分區(qū)、磁盤等)比較,卻包含有和LVM相關(guān)的管理參數(shù)。當(dāng)前LVM允許你在每個物理卷上保存這個物理卷的0至2份元數(shù)據(jù)拷貝.默認(rèn)為1,保存在設(shè)備的開始處.為2時,在設(shè)備結(jié)束處保存第二份備份.

* 卷組(VG, Volume Group)
LVM卷組類似于非LVM系統(tǒng)中的物理硬盤,其由物理卷組成。能在卷組上創(chuàng)建一個或多個“LVM分區(qū)”(邏輯卷),LVM卷組由一個或多個物理卷組成。

* 邏輯卷(LV, Logical Volume)
LVM的邏輯卷類似于非LVM系統(tǒng)中的硬盤分區(qū),在邏輯卷之上能建立文件系統(tǒng)(比如/home或/usr等)。

*線性邏輯卷 (Linear Volumes)
一個線性邏輯卷聚合多個物理卷成為一個邏輯卷.比如,如果你有兩個60GB硬盤,你能生成120GB的邏輯卷.

*條塊化的邏輯卷(Striped Logical Volumes)
當(dāng)你寫數(shù)據(jù)到此邏輯卷中時,文件系統(tǒng)能將數(shù)據(jù)放置到多個物理卷中.對于大量連接讀寫操作,他能改善數(shù)據(jù)I/O效率.

*映像的邏輯卷(Mirrored Logical Volumes)
映像在不同的設(shè)備上保存一致的數(shù)據(jù).數(shù)據(jù)同時被寫入原設(shè)備及映像設(shè)備.他提供設(shè)備之間的容錯。

*快照卷(Snapshot Volumes)
快照卷提供在特定瞬間的一個設(shè)備虛擬映像,當(dāng)快照開始時,他復(fù)制一份對當(dāng)前數(shù)據(jù)區(qū)域的改動,由于他優(yōu)先執(zhí)行這些改動,所以他能重構(gòu)當(dāng)前設(shè)備的狀態(tài)。

* PE(physical extent)
每一個物理卷被劃分為稱為PE(Physical Extents)的基本單元,具有唯一編號的PE是能被LVM尋址的最小單元。PE的大小是可設(shè)置的,默認(rèn)為4MB。

* LE(logical extent)
邏輯卷也被劃分為被稱為LE(Logical Extents) 的可被尋址的基本單位。在同一個卷組中,LE的大小和PE是相同的,并且一一對應(yīng)。

和非LVM系統(tǒng)將包含分區(qū)信息的元數(shù)據(jù)保存在位于分區(qū)的起始位置的分區(qū)表中相同,邏輯卷及卷組相關(guān)的元數(shù)據(jù)也是保存在位于物理卷起始處的VGDA(卷組描述符區(qū)域)中。VGDA包括以下內(nèi)容: PV描述符、VG描述符、LV描述符、和一些PE描述符 。系統(tǒng)啟動LVM時激活VG,并將VGDA加載至內(nèi)存,來識別LV的實際物理存儲位置。當(dāng)系統(tǒng)進(jìn)行I/O操作時,就會根據(jù)VGDA建立的映射機制來訪問實際的物理位置。

三、 安裝LVM
首先確定系統(tǒng)中是否安裝了lvm工具:
[root@test2 root]# rpm ?qa|grep lvm
lvm-x-x-x
如果命令結(jié)果輸入類似于上例,那么說明系統(tǒng)已安裝了LVM管理工具;如果命令沒有輸出則說明沒有安裝LVM管理工具,則需要從網(wǎng)絡(luò)下載或從光盤裝LVM rpm工具包。

安裝了LVM的RPM軟件包以后,要使用LVM還需要設(shè)置內(nèi)核支持LVM。RedHat默認(rèn)內(nèi)核是支持LVM的,如果需要重新編譯內(nèi)核,則需要在設(shè)置內(nèi)核時,進(jìn)入Multi-device Support (RAID and LVM)子菜單,選中以選項:

  • Multiple devices driver support (RAID and LVM)
       Device mapper support
         Snapshot target (EXPERIMENTAL)
         Mirror target (EXPERIMENTAL)                                                           
    然后重新編譯內(nèi)核,即可將LVM的支持添加到新內(nèi)核中。

    為了使用LVM,要確保在系統(tǒng)啟動時激活LVM,在RedHa的版本中,系統(tǒng)啟動腳本已具有對激活LVM的支持,在/etc/rc.d/rc.sysinit中有以下內(nèi)容:
     
    if [ -x /sbin/lvm.static ]; then
              action $"Setting up Logical Volume Management:" /sbin/lvm.static vgchange -a y --ignorelockingfailure
    fi
    vgchange -a y命令激活系統(tǒng)所有卷組。

    四、 創(chuàng)建和管理LVM
    要創(chuàng)建一個LVM系統(tǒng),一般需要經(jīng)過以下步驟:
    1、 創(chuàng)建分區(qū)
    使用分區(qū)工具(如:fdisk等)創(chuàng)建LVM分區(qū),方法和創(chuàng)建其他一般分區(qū)的方式是相同的,差別僅僅是LVM的分區(qū)類型為8e。
    # fdisk -l /dev/sdb /dev/sdc
    Disk /dev/sdb: 18.2 GB, 18200739840 bytes
    255 heads, 63 sectors/track, 2212 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Disk /dev/sdb doesn’t contain a valid partition table
    Disk /dev/sdc: 18.2 GB, 18200739840 bytes
    255 heads, 63 sectors/track, 2212 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1         200     1606468+  8e  Linux LVM
    如果要將使用整塊盤,能通過下面的命令來覆蓋磁盤上的原有分區(qū)信息:
    #dd if=/dev/zero of=/dev/sdc bs=512 count=1
      
    2、 創(chuàng)建物理卷
    創(chuàng)建物理卷的命令為pvcreate,利用該命令將希望添加到卷組的所有分區(qū)或磁盤創(chuàng)建為物理卷。將整個磁盤創(chuàng)建為物理卷的命令為:
    # pvcreate /dev/sdb
    Physical volume "/dev/sdb" successfully created
      
    將單個分區(qū)創(chuàng)建為物理卷的命令為:
    # pvcreate /dev/sdc1
    Physical volume "/dev/sdc1" successfully created
    也能同時生成多個卷:
    #pvcreate /dev/sdb /dev/sdc1

    3、掃描塊設(shè)備
    通過lvmdiskscan能看到那些設(shè)備成為了物理卷.
    #lvmdiskscan
      /dev/ramdisk             [       16.00 MB]
      /dev/sda                 [        4.00 GB]
      /dev/root                [        2.88 GB]
      /dev/ram                 [       16.00 MB]
      /dev/sda1                [      101.94 MB]
      /dev/VolGroup00/LogVol01 [        1.00 GB]
      /dev/ram2                [       16.00 MB]
      /dev/sda2                [        3.90 GB] LVM physical volume
      /dev/lvm_test/test       [      508.00 MB]
      /dev/ram3                [       16.00 MB]
      /dev/ram4                [       16.00 MB]
      /dev/ram5                [       16.00 MB]
      /dev/ram6                [       16.00 MB]
      /dev/ram7                [       16.00 MB]
      /dev/ram8                [       16.00 MB]
      /dev/ram9                [       16.00 MB]
      /dev/ram10               [       16.00 MB]
      /dev/ram11               [       16.00 MB]
      /dev/ram12               [       16.00 MB]
      /dev/ram13               [       16.00 MB]
      /dev/ram14               [       16.00 MB]
      /dev/ram15               [       16.00 MB]
      /dev/sdb                 [      512.00 MB] LVM physical volume
      /dev/sdc                 [      512.00 MB] LVM physical volume
      5 disks
      16 partitions
      2 LVM physical volume whole disks
      1 LVM physical volume

    4、顯示物理卷
    能使用pvs,pvscan,pvdisplay來顯示當(dāng)前系統(tǒng)中的物理卷.
    #pvs
      PV         VG         Fmt  Attr PSize   PFree  
      /dev/sda2  VolGroup00 lvm2 a-     3.88G      0
      /dev/sdb   lvm_test   lvm2 a-   508.00M      0
      /dev/sdc              lvm2 --   512.00M 512.00M
    #pvscan
      PV /dev/sdb    VG lvm_test     lvm2 [508.00 MB / 0    free]
      PV /dev/sda2   VG VolGroup00   lvm2 [3.88 GB / 0    free]
      PV /dev/sdc                    lvm2 [512.00 MB]
      Total: 3 [4.87 GB] / in use: 2 [4.37 GB] / in no VG: 1 [512.00 MB]
    #pvdisplay
      --- Physical volume ---
      PV Name               /dev/sdb
      VG Name               lvm_test
      PV Size               512.00 MB / not usable 4.00 MB
      Allocatable           yes (but full)
      PE Size (KByte)       4096
      Total PE              127
      Free PE               0
      Allocated PE          127
      PV UUID               Pkp5Cq-SD1w-ANw2-cDDe-BGtw-nmFS-jTxXFD
       
      --- NEW Physical volume ---
      PV Name               /dev/sdc
      VG Name               
      PV Size               512.00 MB
      Allocatable           NO
      PE Size (KByte)       0
      Total PE              0
      Free PE               0
      Allocated PE          0
      PV UUID               BNCVEE-YWlK-0mrV-LOcf-0tCY-WWNw-DeySk0

    5、移除物理卷
    #pvremove /dev/sdc
    Labels on physical volume "/dev/sdc" successfully wiped

    6、 創(chuàng)建卷組
    創(chuàng)建卷組的命令為vgcreate,將使用pvcreate建立的物理卷創(chuàng)建為一個完整的卷組:
    # vgcreate lvm_test /dev/sdc1 /dev/sdb
    Volume group "lvm_test" successfully created
    vgcreate命令第一個參數(shù)是指定該卷組的邏輯名:lvm_test。后面參數(shù)是指定希望添加到該卷組的所有分區(qū)和磁盤。vgcreate在創(chuàng)建卷組 lvm_test 以外,還設(shè)置使用大小為4 MB的PE(默認(rèn)為4MB),這表示卷組上創(chuàng)建的所有邏輯卷都以 4 MB 為增量單位來進(jìn)行擴充或縮減。PE最小為1KB  ,并且必須總是1KB的 2^n 的倍數(shù)(使用-s指定,具體請參考man vgcreate)。

    7、 激活卷組
    卷組在創(chuàng)建時默認(rèn)激活,也能使用vgchange來激活卷組:
    # vgchange -a y lvm_test

    8、 添加新的物理卷到卷組中
    當(dāng)系統(tǒng)安裝了新的磁盤或新建分區(qū)并創(chuàng)建了新的物理卷,而要將其添加到已有卷組時,就需要使用vgextend命令:
    #fdisk -l /dev/sdc
    Disk /dev/sdc: 18.2 GB, 18200739840 bytes
    255 heads, 63 sectors/track, 2212 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1         200     1606468+  8e  Linux LVM
    /dev/sdc2             201         400     1606500   8e  Linux LVM
             
    #pvcreate /dev/sdc2
    Physical volume "/dev/sdc2" successfully created
            
    # vgextend lvm_test /dev/sdc2
    Volume group "lvm_test" successfully extended
    這里/dev/sdc2是新的物理卷。

    9、顯示卷組
    顯示卷組能使用vgs和vgdisplay.
    # vgs
      VG         #PV #LV #SN Attr   VSize   VFree
      VolGroup00   1   2   0 wz--n-   3.88G    0
      lvm_test     1   1   0 wz--n- 508.00M    0

    # vgdisplay
      --- Volume group ---
      VG Name               lvm_test
      System ID            
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  10
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                1
      Open LV               1
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               508.00 MB
      PE Size               4.00 MB
      Total PE              127
      Alloc PE / Size       127 / 508.00 MB
      Free  PE / Size       0 / 0   
      VG UUID               uJx24t-WWdY-vffu-97Of-mgFB-FEov-eRwzAf

    10、掃描磁盤生成緩存文件
    #vgscan
      Reading all physical volumes.  This may take a while...
      Found volume group "lvm_test" using metadata type lvm2
      Found volume group "VolGroup00" using metadata type lvm2
       
    11、 從卷組中刪除一個物理卷
    要從一個卷組中刪除一個物理卷,首先要確認(rèn)要刪除的物理卷沒有被所有邏輯卷正在使用,就要使用pvdisplay命令察看一個該物理卷信息:
    #pvdisplay /dev/sdc2
    --- Physical volume ---
    PV Name               /dev/sdc2
    VG Name               lvm_test
    PV Size               1.53 GB / not usable 868.00 KB
    Allocatable           yes
    PE Size (KByte)       4096
    Total PE              392
    Free PE               392
    Allocated PE          0 (表示未被使用)
    PV UUID               jAiils-1vRz-Td9k-1AiD-kIJs-191z-YMz09H
      
    如果某個物理卷正在被邏輯卷所使用,就需要將該物理卷的數(shù)據(jù)備份到其他地方,然后再刪除。刪除物理卷的命令為vgreduce:
    # vgreduce lvm_test /dev/sdc2
    Removed "/dev/sdc2" from volume group "lvm_test"

    12、 創(chuàng)建邏輯卷
    創(chuàng)建邏輯卷的命令為lvcreate:
    # lvcreate -L 1500 ?n test lvm_test
    Logical volume "test" created
    該命令就在卷組lvm_test上創(chuàng)建名字為test,大小為1500M的邏輯卷,并且設(shè)備入口為/dev/lvm_test/test (lvm_test為卷組名,test為邏輯卷名)。如果希望創(chuàng)建一個使用全部卷組的邏輯卷,則需要首先察看該卷組的PE數(shù),然后在創(chuàng)建邏輯卷時指定:
    # vgdisplay lvm_test| grep "Total PE"
    Total PE 4731
    # lvcreate -l 4731 lvm_test -n test
    Logical volume "test" created

    13、創(chuàng)建條塊化的邏輯卷
    # lvcreate -L 500M -i2  -n test lvm_test
      Using default stripesize 64.00 KB
      Rounding size (125 extents) up to stripe boundary size (126 extents)
      Logical volume "test" created
    -i2指此邏輯卷在兩個物理卷中條塊化存放數(shù)據(jù),默認(rèn)一塊大小為64KB.

    14、創(chuàng)建映像的邏輯卷。
    #lvcreate -L 52M  -m1  -n test lvm_test /dev/sdb1 /dev/sdc1 /dev/sdb2
      Logical volume "test" created
    -m1表示只生成一個單一映像,映像分別放在/dev/sdb1和/dev/sdc1上,映像日志放在/dev/sdb2上.

    15、創(chuàng)建快照卷。
    #lvcreate --size 10 --snapshot --name snaptest /dev/lvm_test/test
    16、 創(chuàng)建文件系統(tǒng)
    如使用ext3文件系統(tǒng):
    #mkfs.ext3 /dev/lvm_test/test
    mke2fs 1.35 (28-Feb-2004)
    max_blocks 4294967295, rsv_groups = 0, rsv_gdb = 1024
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    2424832 inodes, 4844544 blocks
    242227 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=8388608
    148 block groups
    32768 blocks per group, 32768 fragments per group
    16384 inodes per group
    Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
    4096000
    Writing inode tables: done                           
    inode.i_blocks = 90120, i_size = 4243456
    Creating journal (8192 blocks): done
    Writing superblocks and filesystem accounting information: done
    This filesystem will be automatically checked every 25 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    創(chuàng)建了文件系統(tǒng)以后,就能加載并使用他:
    # mkdir /mnt/test
    # mount /dev/lvm_test/test /mnt/test
    如果希望系統(tǒng)啟動時自動加載文件系統(tǒng),則還需要在/etc/fstab中添加內(nèi)容:
    /dev/lvm_test/test /mnt/test ext3 defaults 1 2

    17、 刪除一個邏輯卷
    刪除邏輯卷以前首先需要將其卸載,然后刪除:
    # umount /dev/lvm_test/test
    # lvremove /dev/lvm_test/test
    Do you really want to remove active logical volume "test"? [y/n]: y
    Logical volume "test" successfully removed
     
    18、 擴展邏輯卷大小
    LVM提供了方便調(diào)整邏輯卷大小的能力,擴展邏輯卷大小的命令是lvextend:
    # lvextend -L12G /dev/lvm_test/test
    Extending logical volume test to 12.00 GB
    Logical volume test successfully resized
      上面的命令就實現(xiàn)將邏輯卷test的大小擴大為12G。
    # lvextend -L+1G /dev/lvm_test/test
    Extending logical volume test to 13.00 GB
    Logical volume test successfully resized
    上面的命令就實現(xiàn)將邏輯卷test的大小增加1G。
    增加了邏輯卷的容量以后,就需要修改文件系統(tǒng)大小以實現(xiàn)利用擴充的空間。
    對于希望調(diào)整被加載的文件系統(tǒng)大小,使用ext2online(ext2resize) 或 resize2fs.
    #df -h
    # ext2online /dev/lvm_test/test
    ext2online /dev/lvm_test/test
    ext2online v1.1.18 - 2001/03/18 for EXT2FS 0.5b

    #df -h
    Filesystem            容量  已用 可用 已用% 掛載點
    /dev/mapper/VolGroup00-LogVol01
             16G   11G  3.6G  76% /
    /dev/sda1             494M   18M  451M   4% /boot
    none                      506M     0  506M   0% /dev/shm
    /dev/mapper/lvm_test-test
             13G   63M   13G   1% /mnt/test
      
    一般建議最佳將文件系統(tǒng)卸載,調(diào)整大小,然后再加載:
    # umount /dev/lvm_test/test
    #resize2fs /dev/lvm_test/test
    # mount  /dev/lvm_test/test /mnt/test

    19、 減少邏輯卷大小
    使用lvreduce即可實現(xiàn)對邏輯卷的容量,同樣需要首先將文件系統(tǒng)卸載:
    # umount /mnt/test
    #e2fsck -f /dev/lvm_test/test
    # resize2fs /dev/lvm_test/test  11G
    # lvreduce -L -1.992G /dev/lvm_test/test (少2個PE的大?。?br /> # resize2fs /dev/lvm_test/test  (通過此命令確認(rèn)是否文件系統(tǒng)大小和收縮后的邏輯卷大小匹配)
    # mount /dev/lvm_test/test /mnt/test

    20、顯示邏輯卷
    通過lvscan,lvs及l(fā)vdisplay能察看當(dāng)前系統(tǒng)中存在的邏輯卷。
    # lvdisplay
      --- Logical volume ---
      LV Name                /dev/VolGroup00/LogVol00
      VG Name                VolGroup00
      LV UUID                sPmLMD-6xq4-wStB-uSAP-jlQc-YKTm-3bt8Pc
      LV Write Access        read/write
      LV Status              available
      # open                 1
      LV Size                2.88 GB
      Current LE             92
      Segments               1
      Allocation             inherit
      Read ahead sectors     0
      Block device           253:0
      
    #lvscan
    lvscan
      ACTIVE            ’/dev/VolGroup00/LogVol00’ [2.88 GB] inherit
      ACTIVE            ’/dev/VolGroup00/LogVol01’ [1.00 GB] inherit

    #lvs -o +devices
      LV       VG         Attr   LSize Origin Snap%  Move Log Copy%  Devices      
      LogVol00 VolGroup00 -wi-ao 2.88G                               /dev/sda2(0)
      LogVol01 VolGroup00 -wi-ao 1.00G                               /dev/sda2(92)  

    21、使用過濾控制LVM的設(shè)備掃描
    通過編輯/etc/lvm/lvm.conf 中的filter段,來定義過濾那些設(shè)備要掃描。
    filter =[ "a|/dev/sd.*|", "a|/dev/hd.*|", "r|.*|" ]
    上面對scsi及ide設(shè)備掃描,對其他設(shè)備均不掃描。

    22、在線數(shù)據(jù)遷移
    通過pvmove能將一個PV上的數(shù)據(jù)遷移到新的PV上,也能將PV上的某個LV遷移到另一個PV上。
    #lvs -o +devices
      LV       VG         Attr   LSize  Origin Snap%  Move Log Copy%  Devices      
      LogVol00 VolGroup00 -wi-ao  2.88G                               /dev/sda2(0)
      LogVol01 VolGroup00 -wi-ao  1.00G                               /dev/sda2(92)
      test     lvm_test   -wi-ao 52.00M                               /dev/sdb1(0)

    #pvmove -n test /dev/sdb1 /dev/sdc1

    #lvs -o +devices
      LV       VG         Attr   LSize  Origin Snap%  Move Log Copy%  Devices      
      LogVol00 VolGroup00 -wi-ao  2.88G                               /dev/sda2(0)
      LogVol01 VolGroup00 -wi-ao  1.00G                               /dev/sda2(92)
      test     lvm_test   -wi-ao 52.00M                               /dev/sdc1(0)

    23、刪除卷組
    按照順序卸載文件系統(tǒng),刪除邏輯卷,然后刪除卷組。
    #umount /mnt/test
    # lvremove /dev/lvm_test/test
    Do you really want to remove active logical volume "test"? [y/n]: y
      Logical volume "test" successfully removed
    #vgremove lvm_test
      Volume group "lvm_test" successfully removed
    24、故障排查
    通過在命令后加 -v,-vv,-vvv或-vvvv來獲得更周詳?shù)拿钶敵觥?br /> 通過在lvs,vgs后加-P能更好的查看失敗設(shè)備.
    #vgs -a -o +devices -P
      Partial mode. Incomplete volume groups will be activated read-only.
      VG         #PV #LV #SN Attr   VSize    VFree   Devices               
      VolGroup00   1   2   0 wz--n-    3.88G      0  /dev/sda2(0)           
      VolGroup00   1   2   0 wz--n-    3.88G      0  /dev/sda2(92)         
      lvm_test     2   2   0 wz--n- 1016.00M 896.00M pvmove0(0)            
      lvm_test     2   2   0 wz--n- 1016.00M 896.00M /dev/sdb(0),/dev/sdc(0)
    #lvs -a -o +devices -P
      Partial mode. Incomplete volume groups will be activated read-only.
      Failure parsing mirror status fraction: 1 core
      Failure parsing mirror status fraction: 1 core
      LV        VG         Attr   LSize  Origin Snap%  Move     Log Copy%  Devices               
      LogVol00  VolGroup00 -wi-ao  2.88G                                   /dev/sda2(0)           
      LogVol01  VolGroup00 -wi-ao  1.00G                                   /dev/sda2(92)         
      [pvmove0] lvm_test   p-C-ao 60.00M               /dev/sdb            /dev/sdb(0),/dev/sdc(0)
      test      lvm_test   -wI-a- 60.00M                                   pvmove0(0)            

    五、 總結(jié)
    根據(jù)上面的討論能看到,LVM具有非常好的可伸縮性,使用起來非常方便。能方便地對卷組、邏輯卷的大小進(jìn)行調(diào)整,更進(jìn)一步調(diào)整文件系統(tǒng)的大小,還能方便的進(jìn)行數(shù)據(jù)遷移,數(shù)據(jù)完整性保護。如果希望了解更多信息,請參考LVM-HOWTO。


    此文件使用內(nèi)核為2.6.22.1,在做pvmove時出現(xiàn)錯誤,如上.補丁如下:
    Index: linux-2.6.21/drivers/md/dm-raid1.c
    ===================================================================
    --- linux-2.6.21.orig/drivers/md/dm-raid1.c        2007-05-13 18:56:09.000000000 +0100
    +++ linux-2.6.21/drivers/md/dm-raid1.c        2007-05-13 19:09:54.000000000 +0100
    @@ -1288,12 +1288,12 @@ static int mirror_status(struct dm_targe
                    for (m = 0; m nr_mirrors; m++)
                            DMEMIT("%s ", ms->mirror[m].dev->name);

    -                DMEMIT("%llu/%llu",
    +                DMEMIT("%llu/%llu ",
                            (unsigned long long)ms->rh.log->type->
                                    get_sync_count(ms->rh.log),
                            (unsigned long long)ms->nr_regions);

    -                sz = ms->rh.log->type->status(ms->rh.log, type, result, maxlen);
    +                sz += ms->rh.log->type->status(ms->rh.log, type, result+sz, maxlen-sz);

                    break;
  • 向AI問一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI