Linux之腳本分區及LVM

1.  描述GPT是什麼,應該怎麼使用

GPT的全稱是Globally Unique Identifier Partition Table,即GUID分區表,GUID 分區表 (GPT) 是作爲 Extensible Firmware Interface (EFI) 計劃的一部分引入的。相對於以往 PC 普遍使用的主引導記錄 (MBR) 分區方案,GPT 提供了更加靈活的磁盤分區機制。分區指物理或邏輯磁盤上彼此連接的存儲空間,但提供功能時就像物理上分隔的磁盤一樣。對於系統固件和已安裝的操作系統來說,分區是可見的。操作系統啓動之前,對分區的訪問由系統固件控制,操作系統啓動後則由操作系統控制。

它具有如下優點:
1、支持2TB以上的硬盤。
2、每個磁盤的分區個數幾乎沒有限制(Windows系統最多隻允許劃分128個分區)。
3、分區大小幾乎沒有限制。用64位的整數表示扇區號,即 = 18,446,744,073,709,551,616。
4、分區表自帶備份。在磁盤的首尾部分分別保存了一份相同的分區表,其中一份被破壞後,可以通過另一份恢復;
5、循環冗餘檢驗值針對關鍵數據結構而計算,提高了數據崩潰的檢測機率;
6、 雖然MBR提供1字節分區類型代碼,但GPT使用一個16字節的全局唯一標識符(GUID)值來標識分區類型,這使分區類型更不容易衝突;
7、每個分區可以有一個名稱(不同於卷標)。

要想使用GPT分區表必須是UEFI BIOS環境,UEFI和GPT二者缺一不可,現在的服務器主板基本採用UEFI+BIOS共存模式,並且BIOS中集成UEFI啓動項,如果系統盤大小超過了2T需要使用UEFI模式進行系統安裝並進行系統啓動,在對大於2T的非系統盤進行分區時需要選擇GPT分區格式。

2.  創建一個10G的分區,並格式化爲ext4文件系統。要求
a)  block大小爲2048,預留空間20%,卷標爲MYDATA,
b)  掛載至/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳
c)  可開機自動掛載
root@centos-7 ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xb149d50d.

Command (m for help): p
Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xb149d50d

Device Boot      Start         End      Blocks   Id  System

Command (m for help): n
Partition type:
     p   primary (0 primary, 0 extended, 4 free)
     e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (63-41943039, default 63): 
Using default value 63
Last sector, +sectors or +size{K,M,G} (63-41943039, default 41943039): +10G
Partition 1 of type Linux and of size 10 GiB is set

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
255 heads, 63 sectors/track, 2610 cylinders
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xb149d50d

     Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63    20971583    10485760+  83  Linux

Command (m for help): wq
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@centos-7 ~]# mkfs.ext4 -b 2048 -m 20 -L MYDATA /dev/sdb1

mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=MYDATA
OS type: Linux
Block size=2048 (log=1)
Fragment size=2048 (log=1)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 5242880 blocks
1048576 blocks (20.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=273678336
320 block groups
16384 blocks per group, 16384 fragments per group
2048 inodes per group
Superblock backups stored on blocks: 
    16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816, 1327104, 
    2048000, 3981312

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done   

[root@centos-7 ~]# mkdir /mydata
[root@centos-7 ~]# mount -o noexec,notime /de/sdb1 /mydata
[root@centos-7 ~]# vi /etc/fstab 
         12 UUID=db4bd762-3736-49fb-b664-081efac8aa94  /mydata        ext4    noexec,noatime  0 0

3.  創建一大小爲1G的swap分區,並啓用。

[root@centos-7 ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n
Partition type:
     p   primary (1 primary, 0 extended, 3 free)
     e   extended
Select (default p): p  
Partition number (2-4, default 2): 2
First sector (20971584-41943039, default 20973568): 
Using default value 20973568
Last sector, +sectors or +size{K,M,G} (20973568-41943039, default 41943039): +1G
Partition 2 of type Linux and of size 1 GiB is set

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xb149d50d

     Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63    20971583    10485760+  83  Linux
/dev/sdb2        20973568    23070719     1048576   83  Linux

Command (m for help): t   
Partition number (1,2, default 2): 2
Hex code (type L to list all codes): 82
Changed type of partition 'Empty' to 'Linux swap / Solaris'

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xb149d50d

     Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63    20971583    10485760+  83  Linux
/dev/sdb2        20973568    23070719     1048576   82  Linux swap / Solaris

Command (m for help): wq
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@centos-7 ~]# mkswap /dev/sdb2
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=92df2c57-4000-422d-b0e8-ca94fe626315

        [root@centos-7 ~]# swapon /dev/sdb2
  1. 編寫腳本計算/etc/passwd文件第10個用戶和第20個用戶id之和。

        [root@gumt ~]#cat data/sumid.sh
        #!/bin/bash
        #********************************************************************
        #Author:            Gumt
        #Mail:              [email protected]
        #Date:              2019-07-21
        #FileName:          sumid.sh
        #Version:           V1.0
        #Description:       The uid sum script
        #Copyright (C):     2019 All rights reserved
        #********************************************************************
    
        UID_1=$(cat /etc/passwd | head -n $1 |tail -n 1 |cut -d: -f3)
        UID_2=$(cat /etc/passwd | head -n $2 |tail -n 1 |cut -d: -f3)
    
        SUMID=$[$UID_1+$UID_2]
    
        echo "UID SUM is:$SUMID"
        [root@gumt ~]#bash data/sumid.sh 10 20
        UID SUM is:1007
  2. 將當前主機名保存至hostName變量中,主機名如果爲空,或者爲localhost.localdomain則將設置爲www.magedu.com

        [root@gumt ~]#cat data/hostName.sh
        #!/bin/bash
        #********************************************************************
        #Author:            Gumt
        #Mail:              [email protected]
        #Date:              2019-07-21
        #FileName:          data/hostName.sh
        #Version:           V1.0
        #Description:       The test script
        #Copyright (C):     2019 All rights reserved
        #********************************************************************
    
        hostName=$(hostname)
        [ "${hostName}" == "" -o "${hostName}" == "localhost.localdomain" ] && 
                { hostname www.magedu.com        hostnamectl set -hostname  www.magedu.com }
    
                echo "Now,the HOSTNAME is $(hostname)"
    
            [root@gumt ~]#bash data/hostName.sh
            Now,the HOSTNAME is gumt.com
  3. 編寫腳本,通過命令行參數傳入一個用戶名,判斷id號是偶數還是奇數

        [root@gumt ~]#cat data/odd-even.sh
            #!/bin/bash
            #******************************************************************
            #Author:            Gumt
            #Mail:              [email protected]
            #Date:              2019-07-21
            #FileName:          data/odd-even.sh
            #Version:           V1.0
            #Description:       The test script
            #Copyright (C):     2019 All rights reserved
            #****************************************************************
            usrId=$(id -u $1)
            if [ $[$usrId % 2 ] -eq 0 ];then
                    echo "$1\'s id is even number"
                else
                    echo "$1\'s id is odd number"
                fi
            [root@gumt ~]#bash data/odd-even.sh gumt
            gumt\'s id is even number
  4. lvm基本應用以及擴展縮減實現

        7.1、 爲什麼要使用LVM?
        每個Linux使用者都經常會遇到這樣的困境:在進行系統分區時,該如何對分區的大小進行精確地評估和分配?Linux使用者不僅要考慮到當前系統分區所需要的容量,還要充分考慮到未來需要的容量的最大值。如果評估不準確,當未來系統分區不夠用時,常常需要對Linux系統分區上的數據進行備份,再刪除分區、重新分區、格式化、掛載和拷貝數據,最後再重新上線。之所以需要這麼麻煩,根本原因是傳統的文件系統是基於分區的,一個文件系統對應一個分區,各個分區之間是互相獨立的。爲了解決這一問題,雖然可以使用支持跨文件系統的軟鏈接,或者使用可調整分區大小的工具例如PartitionMagic等等,但卻無法從根本上解決問題,因爲一方面再次調整的分區仍然有可能會再次不夠用,另一方面是調整分區大小需要重新引導系統,對於很多關鍵服務器是不能接受停機的,因此問題仍然存在。這時我們或許會覺得如果能在線對系統分區的大小進行調整而又對該分區上的數據無影響的話那該多好?不過,Linux的邏輯卷管理器 (LVM, Logical Volume Manager) 提供了這一解決方案。
    
    7.2、LVM 工作原理
        LVM是邏輯卷管理(Logical Volume Manager)的簡稱,它是一種更爲靈活的磁盤分區管理機制。LVM是在磁盤分區和文件系統之間添加的一層邏輯層,它爲文件系統屏蔽下層的磁盤分區佈局,向文件系統提供一個抽象的存儲卷。通過LVM,Linux系統管理員可輕鬆地管理磁盤分區,如:既然LVM是建立在硬盤和分區之上的一層邏輯層,那麼可以將多個硬盤、多個分區或RAID組織起來構建成存儲卷組,作爲一個存儲池;然後在這個存儲卷之上再將其劃分出一個或多個邏輯卷,Linux系統管理員可以對這個劃分出來的邏輯捲進行一系列操作(例如格式化、掛載等),可以將邏輯卷當做一個系統分區來對待,更重要的是,這個系統分區的大小還可以在線擴展或縮減。總的來說,LVM使得系統分區獨立於底層硬件。
    
        那麼LVM是如何做到支持系統分區在線擴容或縮容的?我們再梳理一下LVM的工作原理。要製作邏輯分區,首先需要將多個硬盤、多個分區或RAID製作成爲便於識別的物理卷(PV, Physical Volume),將這些製作好的物理卷再構建成一個存儲池,我們把這個存儲池稱爲卷組(VG, VolumeGroup),這是LVM的第一個邏輯層。在卷組這一層上再邏輯出一層邏輯卷(LV, LogicalVolume),這個邏輯卷LV可供用戶使用,例如格式化、掛載、存儲數據,相當於一個邏輯意義上的系統分區。而這個邏輯分區的空間大小取決於卷組VG的分配,因此邏輯卷LV的存儲空間不能超過其所屬卷組VG的總存儲空間。
        pv --> vg --> lv
        類比塊設備將信息存儲在固定大小的塊(block)中,當一個物理卷PV加入一個卷組VG時會被劃分成多個物理擴展塊(PE, Physical Extent)。VG將PE劃分給LV,在LV中的PE稱爲邏輯擴展塊(LE, Logical Extent)。在同一個卷組中PE和LE大小是相同的,並且一一對應。PE和LE都是LVM識別、尋址的基本單位,其對應的唯一編號分別稱爲PEID和LEID。
    
        當這個邏輯分區不夠用時,可以從卷組中取出一部分空閒的PE加入這個邏輯卷;當邏輯分區的空閒空間過多時,還可以將將邏輯卷中多餘的LE取出供其所屬卷組中的其他邏輯卷使用,從而實現對系統分區的靈活管理。

    7.3、LVM 元數據

        你可能會好奇有關邏輯卷和卷組的元數據都存放在哪裏?類似於非LVM的系統中,有關分區的信息是存放在分區表中,而分區表是存放於每一個物理卷的起始位置處。在LVM系統中,VGDA(卷組描述符區域)就好像LVM的分區表,其存放於每一個物理卷的起始位置處。
    
    VGDA由以下信息組成:
    ◆ 一個PV描述符
    ◆ 一個VG描述符
    ◆ LV描述符
    ◆ 一些PE描述符
    
        當系統啓動LV時,VG會被激活,並且VGDA會被加載至內存中,VGDA幫助識別LV的實際存儲位置。當系統訪問存儲設備時,由VGDA建立起來的映射機制就用於訪問實際的物理位置來執行I/O操作。
    
    7.4、LVM 基本術語
            以下總結一下有關LVM的幾個基本術語。
    
        * 物理存儲介質(PhysicalStorageMedia):
        指系統上最底層的物理存儲設備:磁盤,例如:/dev/sda、/dev/sdb等。
    
        * 物理卷(Physical Volume, PV):
        指磁盤、磁盤分區或RAID設備,使用LVM前需要先將之製作成便於識別的物理卷PV(添加元數據)。
    
        * 卷組(Volume Group, VG):
        卷組由一個或多個物理卷PV組成,在卷組之上可創建一個或多個邏輯卷LV。卷組VG類似於非LVM系統的
        物理磁盤。
    
        * 邏輯卷(Logical Volume, LV):
        建立在卷組VG之上,相當於邏輯分區,可在邏輯卷LV上進行一系列操作(例如:格式化、掛載等)。
        邏輯卷LV類似於非LVM系統的磁盤分區。
    
        * 物理擴展塊(Physical Extent, PE):
        當物理卷PV加入某一卷組VG後即被劃分爲基本單元PE,PE是LVM尋址的最小單元。PE的大小是可配置的
        ,默認爲4M。
    
        * 邏輯擴展塊(Logical Extent, LE):
        卷組VG將PE劃分給邏輯卷LV,在邏輯卷LV中的PE稱爲LE。在同一卷組VG中,PE和LE大小相同,且一一
        對應。LE也是LVM的最小尋址單位。

7.5、快照卷

            前面提到了lvm支持lv邊界動態擴展或收縮的功能,除此之外,lvm還有另一個重要的功能--爲邏輯卷製作快照卷。而快照卷主要作用是讓用戶能夠訪問與過去某一時刻的文件系統一致的數據,快照本身不是備份,只是備份的輔助手段。製作好快照後,我們就可以利用快照來進行備份。
            “快照”的重點在於“快”。與備份不同,備份常常需要花很多時間來複制數據流然後進行存儲,尤其是對於單個或多個大文件而言,這有可能會發生數據在複製後一半時,前一半的原數據已經發生變化了,出現文件不一致的情況。所以,備份的問題在於備份速度慢、時間長。“快照”就可以幫助備份解決時間長的問題。一旦對某個文件系統(邏輯卷)創建了快照卷,相當於多了一個可監控該文件系統元數據變化的監視器,只要被監視的文件系統上的某一文件的數據發生變化,就會先拷貝一份原始文件存於快照卷中,再對文件進行修改。因此可以得出這樣的結論:原卷(被監視的文件系統)上發生變化的數據的量不能超過快照卷的存儲空間。我們可以通過快照卷訪問某個文件系統在創建快照前的數據,它只是爲該文件系統提供另一個訪問路徑而已。製作好快照後,我們就可以利用快照來進行備份,而這樣的備份不會出現不一致的情況。
            另外,快照卷與原卷要在同一卷組中,而快照卷不一定要與原卷一樣大,這取決於快照卷要存活多長時間。在快照卷的存活時間內只要在原捲上發生變化的數據的量不超過快照卷的可用空間即可。而一旦在存活時間內原捲上發生變化的數據的量超過快照卷的可用空間,那麼該快照卷會失效。還有,在創建快照卷的那一刻不允許原卷文件系統上的數據發生變化的,必須先確保原卷爲只讀模式或無訪問模式。
            當然,快照卷贏在速度上,但仍然存在缺陷。一方面之前要求原捲上發生變化的數據的量不能超過快照卷的可用空間,另一方面快照卷存放的只是原捲上發生變化的數據,當某一刻整個文件系統被損壞時,即便快照卷的可用空間充足,也同樣來不及備份整個原卷,在快照捲上只有文件系統被損壞之前發生過變化的數據。因此仍然需要增量備份和差異備份。

7.6、在CentOS 6上配置安裝LVM
示例:
(1)創建一個至少有兩個PV組成的大小爲20G的名爲testvg的VG;要求PE大小爲16MB,而後在卷組
中創建大小爲5G的邏輯卷testlv;掛載至/users目錄;
(2)新建用戶archlinux,要求其家目錄爲/users/archlinux,而後su切換至archlinux用戶,複製
/etc/pam.d目錄至自己的家目錄;
(3)擴展testlv至7G,要求archlinux用戶的文件不能丟失;
(4)收縮testlv至3G,要求archlinux用戶的文件不能丟失;
(5)對testlv創建快照,並嘗試基於快照備份數據,驗證快照的功能;
(6)對testlv創建快照,並嘗試基於快照備份數據,驗證快照的功能;
(7)從卷組中添加一個物理卷,要求不影響在邏輯捲上創建的文件系統的數據。
(8)從卷組中刪除一個物理卷,要求不影響在邏輯捲上創建的文件系統的數據。

7.6.1. 分區
對指定磁盤進行分區:
[root@osyunwei ~]# fdisk /dev/sdc
創建新分區/dev/sdc5、/dev/sdc6之後,大小均爲10G,將分區的類型修改爲8e,完成後在fdisk進程中顯示分區表,如下所示:

     Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1        2610    20964793+   5  Extended
/dev/sdc5               1        1306    10490382   8e  Linux LVM
/dev/sdc6            1307        2610    10490382   8e  Linux LVM
保存後退出:
Command (m for help): w
[root@osyunwei ~]# partx -a /dev/sdc    #強制內核重新讀取分區表;

7.6.2. 製作物理卷
將磁盤分區/dev/sdc5、/dev/sdc6製作爲便於LVM識別的物理卷:
[root@osyunwei ~]# pvcreate /dev/sdc{5,6}
    Physical volume "/dev/sdc5" successfully created
    Physical volume "/dev/sdc6" successfully created

7.6.3. 創建卷組
創建一個至少有兩個PV組成的大小爲20G的名爲testvg的VG:
[root@osyunwei ~]# vgcreate -s 16M testvg /dev/sdc{5,6}
    Volume group "testvg" successfully created

7.6.4. 創建邏輯卷
在卷組testvg中創建大小爲5G的邏輯卷testlv:
[root@osyunwei ~]# lvcreate -L 5G -n testlv testvg
    Logical volume "testlv" created.

7.6.5. 格式化邏輯卷
[root@osyunwei ~]# mkfs.ext4 /dev/mapper/testvg-testlv

7.6.6. 掛載邏輯卷
將格式化後的邏輯卷掛載至/users目錄:
[root@osyunwei ~]# mkdir /users
[root@osyunwei ~]# mount /dev/mapper/testvg-testlv /users

7.6.7. 擴展邏輯卷
LVM支持在線擴容,示例如下:
擴展邏輯卷之前,先新建用戶archlinux,其家目錄爲/users/archlinux,而後su切換至archlinux用戶,複製/etc/pam.d目錄至自己的家目錄:
[root@osyunwei ~]# useradd -d /users/archlinux archlinux
[root@osyunwei ~]# su - archlinux
[archlinux@osyunwei ~]$ cp -r /etc/pam.d /users/archlinux
[archlinux@osyunwei ~]$ exit

擴展testlv至7G,要求archlinux用戶的文件不能丟失:
[root@osyunwei ~]# lvextent -L 7G /dev/testvg/testlv
或者:
[root@osyunwei ~]# lvextent -L +2G /dev/testvg/testlv
重新調整在邏輯捲上創建的文件系統的大小:
[root@osyunwei ~]# resize2fs /dev/mapper/testvg-testlv
這就完成了對LV的擴展!

7.6.8. 縮減邏輯卷

        在CentOS 6上還不能在線縮容,需要先卸載、檢測修復文件系統、縮減文件系統的大小、縮減邏輯卷LV的空間,最後再重新掛載。要收縮testlv至3G,且要求archlinux用戶的文件不能丟失,首先要卸載正在掛載的邏輯卷:
[root@osyunwei ~]# umount /dev/mapper/testvg-testlv
檢測文件系統是否有發生錯誤:
[root@osyunwei ~]# e2fsck -f /dev/mapper/testvg-testlv
要縮減邏輯卷LV的空間,必須先把在邏輯捲上創建的文件系統的空間縮減(類比:減少桌子的面積之前要先把桌子上承載的東西減少,總之要要保證桌子有足夠的空間盛放東西。):
[root@osyunwei ~]# resize2fs /dev/mapper/testvg-testlv 3G
承上,縮減邏輯卷的空間:
[root@osyunwei ~]# lvreduce -L 3G /dev/mapper/testvg-testlv
重新掛載:
[root@osyunwei ~]# mount /dev/mapper/testvg-testlv /users
這就完成了對LV的縮減。

7.6.9. 製作快照卷
對testlv創建快照,設置快照卷權限爲只讀,並嘗試基於快照備份數據,驗證快照的功能:
[root@osyunwei ~]# lvcreate -L 2G -p r -s -n testsnap /dev/mapper/testvg-testlv
掛載快照卷至/snapshot:

[root@osyunwei ~]# mkdir /snapshot
[root@osyunwei ~]# mount /dev/mapper/testvg-testsnap /snapshot
這就完成了快照卷的製作。

7.6.10. 添加新的物理捲到卷組中
示例:添加/dev/sdb6

[root@osyunwei ~]# vgextend testvg /dev/sdb6
    Physical volume "/dev/sdb6" successfully created
    Volume group "testvg" successfully extended

7.6.11. 從卷組中刪除一個物理卷
示例:刪除/dev/sdc5
要從卷組中刪除一個物理卷,就需要確認要刪除的物理卷(/dev/sdc5)沒有被任何邏輯卷正在使用,就要使用pvdisplay命令察看一個該物理卷(/dev/sdc5)信息:
[root@osyunwei ~]# pvdisplay /dev/sdc5
    --- Physical volume ---
    PV Name               /dev/sdc5
    VG Name               testvg
    PV Size               10.00 GiB / not usable 4.51 MiB
    Allocatable           yes 
    PE Size               16.00 MiB
    Total PE              640
    Free PE               320
    Allocated PE          320
    PV UUID               PF77Xl-Xj8V-rD2L-c9Px-c60I-s6ey-tg42FA 
很不湊巧!/dev/sdc5正被某個邏輯卷所使用,於是需要使用pvmove把要移除的PV(/dev/sdc5)上已佔用的PE上的數據移至其他PV未佔用的PE上:
[root@osyunwei ~]# pvmove /dev/sdc5
    /dev/sdc5: Moved: 0.0%
    /dev/sdc5: Moved: 14.4%
    /dev/sdc5: Moved: 29.1%
    /dev/sdc5: Moved: 43.4%
    /dev/sdc5: Moved: 58.1%
    /dev/sdc5: Moved: 60.0%
    /dev/sdc5: Moved: 74.7%
    /dev/sdc5: Moved: 89.4%
    /dev/sdc5: Moved: 100.0%
再查看一下/dev/sdc5的詳細信息:
[root@osyunwei ~]# pvdisplay /dev/sdc5
    --- Physical volume ---
    PV Name               /dev/sdc5
    VG Name               testvg
    PV Size               10.00 GiB / not usable 4.51 MiB
    Allocatable           yes 
    PE Size               16.00 MiB
    Total PE              640
    Free PE               640
    Allocated PE          0
    PV UUID               PF77Xl-Xj8V-rD2L-c9Px-c60I-s6ey-tg42FA
不錯~要刪除的物理卷/dev/sdc5已經沒被任何邏輯卷所使用了,所以大膽刪除吧:
[root@osyunwei ~]# vgreduce testvg /dev/sdc5
    Removed "/dev/sdc5" from volume group "testvg"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章