centos7使用LVM管理一塊新的磁盤 git
注意!文中凡是帶#的都是命令標誌。 vim
一些重要概念: centos
LV(Logical Volume)- 邏輯卷, async
VG(Volumne Group)- 卷組, 學習
PV(Physical Volume)- 物理卷, ui
的關係圖 centos7
PE(Physical Extent)- 物理塊 spa
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 的各項格式功能,所以這個限制已經不存在了。 code
簡單指令: blog
1. pv相關:pvdisplay、pvs、pvscan,pvcreate
2. vg相關:vgdisplay、vgs、vgscan,vgcreate
3. lv相關:lvdisplay、lvs、lvscan,lvcreate
# fdisk -l 查看磁盤信息
/dev/sdb是咱們須要管理的新的磁盤。
虛擬機中能夠經過設置來添加新的磁盤,添加後重啓後使用# fdisk -l 就會看到有一塊新的磁盤。
選擇/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 (保存) |
# 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]
(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 舊名 新名
(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爲忽略。 |
首先須要有空閒的PV、空閒的磁盤或空閒的分區
(1)建立PV
(2)擴容VG
# vgextend vg_01 磁盤/PV
# vgextend vg_01 /dev/sdc1 (PV方式)
# vgextend vg_01 /dev/sdc (磁盤方式)
# 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