安裝Parted分區工具,Parted支持2T以上的硬盤,fdisk分區工具最大支持2T硬盤。MBR分區格式最大支持2T空間;gpt分區格式能夠支持大於2T。centos
yum install parted服務器
首先查看軟件是否安裝:app
[root@q-bi-01 ~]# rpm -qa |grep lvmide
lvm2-2.02.177-4.el7.x86_64工具
lvm2-libs-2.02.177-4.el7.x86_64佈局
查看磁盤狀況spa
[root@q-bi-05 ~]# fdisk -lorm
Disk /dev/vda: 107.4 GB, 107374182400 bytes, 209715200 sectorsblog
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: 0x0005fc9a
Device Boot Start End Blocks Id System
/dev/vda1 * 2048 209715199 104856576 83 Linux
Disk /dev/vdb: 4000.8 GB, 4000787030016 bytes, 7814037168 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 /dev/vdc: 4000.8 GB, 4000787030016 bytes, 7814037168 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 /dev/vdd: 4000.8 GB, 4000787030016 bytes, 7814037168 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 /dev/vde: 4000.8 GB, 4000787030016 bytes, 7814037168 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
[root@q-bi-03 ~]# parted /dev/vdb
GNU Parted 3.1
Using /dev/vdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel
New disk label type? gpt
(parted) mkpart
Partition name? []?
File system type? [ext2]? xfs
Start? 0T
End? 4T
(parted) p
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 4001GB 4001GB
(parted) set 1 lvm on
(parted) p
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 4001GB 4001GB lvm
(parted) q
Information: You may need to update /etc/fstab.
如今讓咱們來解釋一下操做:
mklabel將磁盤轉換爲gpt分區,由於MBR分區沒法支持TB級硬盤(具體請自行查閱,parted固然也支持TB級如下的操做)
mkpart將轉換好的gpt磁盤進行分區,須要提供文件系統類型、開始點、結束點。
輸入p 打印出剛纔才作後生成的分區。
set 1 lvm on 是將num爲1的分區,設置爲LVM ,這樣才能添加到vm卷組裏
把/dev/vdb1 /dev/vdc1 /dev/vdd1 /dev/vde1設置爲PV
pvcreate /dev/vdb1 /dev/vdc1 /dev/vdd1 /dev/vde1
查看已有PV
pvdisplay
建立名稱爲bi_vg的卷組,包含以下PV:/dev/vdb1 /dev/vdc1 /dev/vdd1 /dev/vde1
vgcreate bi_vg /dev/vdb1 /dev/vdc1 /dev/vdd1 /dev/vde1
查看vg
vgdisplay
建立1個16T的邏輯卷bi_lv從卷組bi_vg
lvcreate –L 16T –n bi_lv bi_vg
把卷組bi_vg全部的空間建立一個邏輯卷bi_lv
lvcreate -l 100%VG -n bi_lv bi_vg
把卷組bi_vg剩餘的空間建立一個邏輯卷bi_lv
lvcreate -l 100%FREE -n bi_lv bi_vg
此命令相似上面一個
lvcreate --name bi_lv -l 100%FREE bi_vg
以上4種命令能夠任選其一。
查看Lv
lvdisplay
建立了一個名字爲bi_lv,容量大小是16T的分區,其中:-L:指定LV的大小 -n:指定LV的名。bi_vg:表示從這個VG中劃分LV;
把剩餘的空間都加到/dev/bi_vg/lv_bdata邏輯卷中。
lvextend -l 100%VG /dev/bi_vg/lv_bdata
使擴容生效
xfs_growfs /dev/bi_vg/lv_bdata
resize2fs命令 針對的是ext2、ext3、ext4文件系統
xfs_growfs命令 針對的是xfs文件系統
格式化邏輯卷
mkfs.xfs /dev/bi_vg/bi_lv
建立掛載點
mkdir –p /data
掛載磁盤
mount /dev/bi_vg/bi_lv /data
若是要在系統啓動的時候啓動LV,能夠寫入fstab中。
/dev/bi_vg/bi_lv /data xfs noatime,defaults 0 0
此狀況適合服務器上快沒有空間了,又新加一塊磁盤,這有點扯遠了。
pvcreate /dev/hda6
vgdisplay
#查看當前已經存在的VG信息,以存在VG:VolGroup00爲例
vgextend VolGroup00 /dev/hda6
#擴展VolGroup00
lvdisplay
#查看已經存在的LV信息,以存在LV:LogVol01爲例
lvextend –L +1G /dev/VolGroup00/LogVol01
#擴展LV. ext2/ext3/ext4文件系統的調整命令是resize2fs
resize2fs /dev/VolGroup00/LogVol01
#執行該重設大小,對於當前正在使用的LogVol01有效
df –h
#查看掛載狀況,已經擴容
LVM是在磁盤分區和文件系統之間添加的一個邏輯層,來爲文件系統屏蔽下層磁盤分區佈局,提供一個抽象的盤卷,在盤捲上創建文件系統。首先咱們討論如下幾個LVM術語:
物理存儲介質(The physical media):這裏指系統的存儲設備:硬盤,如:/dev/hda一、/dev/sda等等,是存儲系統最低層的存儲單元。
物理卷(physical volume):物理卷就是指硬盤分區或從邏輯上與磁盤分區具備一樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有與LVM相關的管理參數。
卷組(Volume Group):LVM卷組相似於非LVM系統中的物理硬盤,其由物理卷組成。能夠在卷組上建立一個或多個「LVM分區」(邏輯卷),LVM卷組由一個或多個物理卷組成。
邏輯卷(logical volume):LVM的邏輯卷相似於非LVM系統中的硬盤分區,在邏輯卷之上能夠創建文件系統(好比/home或者/usr等)。
簡單來講就是:
PV:是物理的磁盤分區
VG:LVM中的物理的磁盤分區,也就是PV,必須加入VG,能夠將VG理解爲一個倉庫或者是幾個大的硬盤。
LV:也就是從VG中劃分的邏輯分區
以下圖所示PV、VG、LV三者關係:
當咱們在安裝系統的時候,因爲沒有合理分配分區空間,在後續維護過程當中,發現有些分區空間不夠使用,而有的分區空間卻有不少剩餘空間。若是這些分區在裝系統的時候使用了lvm(前提是這些分區要是lvm邏輯卷分區),那麼就能夠輕鬆進行擴容或縮容!不一樣文件系統類型所對應的建立、檢查、調整命令不一樣,下面就針對xfs和ext2/3/4文件系統的lvm分區空間的擴容和縮容的操做作一記錄:
------------------------------------------------------------------------------------------
特別注意的是:
resize2fs命令 針對的是ext二、ext三、ext4文件系統
xfs_growfs命令 針對的是xfs文件系統
------------------------------------------------------------------------------------------
1)ext2/ext3/ext4文件系統的調整命令是resize2fs(增大和減少都支持)
lvextend -L 120G /dev/mapper/centos-home //增大至120G
lvextend -L +20G /dev/mapper/centos-home //增長20G
lvreduce -L 50G /dev/mapper/centos-home //減少至50G
lvreduce -L -8G /dev/mapper/centos-home //減少8G
resize2fs /dev/mapper/centos-home //執行調整
2)xfs文件系統的調整命令是xfs_growfs(只支持增大)
lvextend -L 120G /dev/mapper/centos-home //增大至120G
lvextend -L +20G /dev/mapper/centos-home //增長20G
xfs_growfs /dev/mapper/centos-home //執行調整
若是是XFS文件系統,使用了resize2fs這個命令,則會報錯以下:
[root@my-cdh-01 mnt]# resize2fs /dev/bi_vg/bi_lv
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block 當嘗試打開 /dev/bi_vg/bi_lv 時
找不到有效的文件系統超級塊.
就是說:xfs文件系統只支持增大分區空間的狀況,不支持減少的狀況(切記!!!!!)。
硬要減少的話,只能在減少後將邏輯分區從新經過mkfs.xfs命令從新格式化才能掛載上,這樣的話這個邏輯分區上原來的數據就丟失了。若是有重要文件,那就歇菜嘍~~~
[root@localhost ~]# umount /home/umount: /home: device is busy.(In some cases useful info about processes that usethe device is found by lsof(8) or fuser(1))
提示沒法卸載,則是有進程佔用/home,使用以下命令來終止佔用進程:
[root@localhost ~]# fuser -m -k /home
/home: 1409 1519ce 1531e 1532e 1533e 1534e 1535e 1536e 1537e 1538e 1539e 1541e 1543e 1544e 1545e 1546e 1547e 1548e 1549e 1550e 1601m
再次卸載home分區就成功了。
[root@localhost ~]# umount /home/
-k 表示自動把霸佔home分區的進程kill掉!
若是你不是很明確是否要殺死全部霸佔設備的程序,還能夠加一個-i 參數,這樣每殺死一個程序前,都會詢問!(即fuser -m -v -i -k /home)