Centos7 使用LVM進行新加磁碟管理
centos7使用LVM管理一塊新的磁碟
注意!文中凡是帶#的都是命令標誌。
一些重要概念:
LV(Logical Volume)- 邏輯卷,
VG(Volumne Group)- 卷組,
PV(Physical Volume)- 物理卷,
的關係圖
PE(Physical Extent)- 物理塊
LVM 預設使用4MB的PE區塊,而LVM的LV最多僅能含有65534個PE (lvm1 的格式),因此預設的LVM的LV最大容量為4M*65534/(1024M/G)=256G。PE是整個LVM 最小的儲存區塊,也就是說,其實我們的資料都是由寫入PE 來處理的。簡單的說,這個PE 就有點像檔案系統裡面的block 大小。所以調整PE 會影響到LVM 的最大容量!p在 CentOS 6.x 以後,由於直接使用 lvm2 的各項格式功能,因此這個限制已經不存在了。
簡單指令:
1. pv相關:pvdisplay、pvs、pvscan,pvcreate
2. vg相關:vgdisplay、vgs、vgscan,vgcreate
3. lv相關:lvdisplay、lvs、lvscan,lvcreate
# fdisk -l 檢視磁碟資訊
/dev/sdb是我們需要管理的新的磁碟。
虛擬機器中可以通過設定來新增新的磁碟,新增後重啟後使用# fdisk -l 就會看到有一塊新的磁碟。
1、建立系統分割槽
選擇/dev/sdb建立分割槽;
將整個sdb磁碟劃分為一個sdb1分割槽,格式為Linux LVM;
# fdisk /dev/sdb
進入磁碟後然後按照如下操作為磁碟劃分分割槽:
Command (m for help): n (建立新分割槽) Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p (選擇建立主分割槽,e是擴充套件分割槽) Partition number (1-4, default 1): 1 (分割槽號選擇1) First sector (2048-31457279, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-31457279, default 31457279): Using default value 31457279 Partition 1 of type Linux and of size 15 GiB is set
Command (m for help): p (檢視已經建立的分割槽) Disk /dev/sdb: 16.1 GB, 16106127360 bytes, 31457280 sectors Device Boot Start End Blocks Id System /dev/sdb1 2048 31457279 15727616 83 Linux (系統預設為83,即:Linux)
Command (m for help): t (修改分割槽格式) Selected partition 1 Hex code (type L to list all codes): 8e (8e為Linux LVM格式) Changed type of partition 'Linux' to 'Linux LVM'
Command (m for help): p (檢視已經建立的分割槽) Disk /dev/sdb: 16.1 GB, 16106127360 bytes, 31457280 sectors Device Boot Start End Blocks Id System /dev/sdb1 2048 31457279 15727616 8e Linux LVM
Command (m for help): w (儲存) |
2、建立PV
# pvcreate /dev/sdb1 (建立PV根據磁碟的分割槽)
# pvdisplay (檢視所有的pv詳情)
# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb1 lvm2 --- 10.00g 10.00g
# pvscan
PV /dev/sdb1 lvm2 [10.00 GiB]
3、建立VG
(1)根據某個或幾個PV建立VG
# vgcreate vg_01 /dev/sdb1 -s 64M(指定PE大小,可以不指定)
# vgcreate vg_01 /dev/sdb1 /dev/sdb1
(2)根據某個磁碟建立VG
# vgcreate vg_01 /dev/sdb1 /dev/sdb
(3)重新命名VG
# vgrename 舊名 新名
4、建立LV-->格式化LV-->掛載LV
(1)根據VG建立LV,從VG中取出8g
# lvcreate -L 8G -n lv_01 vg_01
(2) 根據VG建立LV,從VG中取出全部free部分
# lvcreate -l 100%FREE -n lv_01 vg_01
(3)使用xfs檔案系統對LV進行格式化
# mkfs.xfs /dev/vg_01/lv_01
(4)掛載
# mkdir /sinotrans-cms
# mount /dev/vg_01/lv_01 /sinotrans-cms
# df -Th
開機自動掛載,編輯vim /etc/fstab,在最後加入以下內容
/dev/vg_01/lv_01 /sinotrans-cms xfs defaults 0 0 |
第一列:要掛載的磁碟 第二列:掛載點 第三列:檔案型別 第四列:掛載選項,詳細參考man mount. 下面列出一些常用的選項: auto: 系統自動掛載,fstab預設就是這個選項 ro: read-only rw: read-write defaults: rw, suid, dev, exec, auto, nouser, and async. 第五列:為dump選項,設定是否讓備份程式dump備份檔案系統,0為忽略,1為備份。 第六列:為fsck選項,告訴fsck程式以什麼順序檢查檔案系統,0為忽略。 |
5、VG擴容
首先需要有空閒的PV、空閒的磁碟或空閒的分割槽
(1)建立PV
(2)擴容VG
# vgextend vg_01 磁碟/PV
# vgextend vg_01 /dev/sdc1 (PV方式)
# vgextend vg_01 /dev/sdc (磁碟方式)
6、LV擴容
# lvextend -L +3G /dev/vg_01/lv_01
使用vgs和lvs檢視會看到vg_01的free減少了3g,lv_01增加了3g
# resize2fs /dev/vg_01/lv_01
執行此命令後目錄容量才會改變
Java學習筆記:https://gitee.com/wenlongup/JavaStudyNotes
Java技術資料分享群:684474011