3999 元起,小米 11 Ultra 手機限時特惠 1500 元,今晚正式開售:120X 超長焦
阿新 • • 發佈:2022-04-01
408筆記
練習lvm
練習
[root@bogon ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <19.00g 0 對硬碟進行pv化 [root@bogon ~]# pvcreate /dev/sdb /dev/sdc Physical volume "/dev/sdb" successfully created. Physical volume "/dev/sdc" successfully created. [root@bogon ~]# 加入卷組,命名 [root@bogon ~]# vgcreate vg0224 /dev/sdb /dev/sdc Volume group "vg0224" successfully created 給邏輯卷分配容量,命名為0224-lv1,分配為10G [root@bogon ~]# lvcreate -n 0224-lv1 -L 10G vg0224 Logical volume "0224-lv1" created. [root@bogon ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <17.00g swap centos -wi-ao---- 2.00g 0224-lv1 vg0224 -wi-a----- 10.00g 命名為0224-lv2,分配為15G [root@bogon ~]# lvcreate -n 0224-lv2 -L 15G vg0224 Logical volume "0224-lv2" created. 命名為0224-lv3,分配為20G [root@bogon ~]# lvcreate -n 0224-lv3 -L 20G vg0224 Logical volume "0224-lv3" created. [root@bogon ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <17.00g swap centos -wi-ao---- 2.00g 0224-lv1 vg0224 -wi-a----- 10.00g 0224-lv2 vg0224 -wi-a----- 15.00g 0224-lv3 vg0224 -wi-a----- 20.00g 建立掛載點目錄 [root@bogon ~]# mkdir /test1 /test2 /test3 [root@bogon ~]# ls / bin data home md0_disk opt run sys test3 var blog dev lib media proc sbin test1 tmp boot etc lib64 mnt root srv test2 usr [root@bogon ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 30G 0 disk ├─vg0224-0224--lv1 253:2 0 10G 0 lvm └─vg0224-0224--lv2 253:3 0 15G 0 lvm sdc 8:32 0 30G 0 disk └─vg0224-0224--lv3 253:4 0 20G 0 lvm sr0 11:0 1 4.2G 0 rom 給邏輯卷新增檔案系統,分別是xfs,xfs,ext4 [root@bogon ~]# mkfs.xfs /dev/vg0224/0224-lv1 meta-data=/dev/vg0224/0224-lv1 isize=512 agcount=4, agsize=655360 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=2621440, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@bogon ~]# mkfs.xfs /dev/vg0224/0224-lv2 meta-data=/dev/vg0224/0224-lv2 isize=512 agcount=4, agsize=983040 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=3932160, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@bogon ~]# mkfs.ext4 /dev/vg0224/0224-lv3 mke2fs 1.42.9 (28-Dec-2013) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 1310720 inodes, 5242880 blocks 262144 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=2153775104 160 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done [root@bogon ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 30G 0 disk ├─vg0224-0224--lv1 253:2 0 10G 0 lvm └─vg0224-0224--lv2 253:3 0 15G 0 lvm sdc 8:32 0 30G 0 disk └─vg0224-0224--lv3 253:4 0 20G 0 lvm sr0 11:0 1 4.2G 0 rom 掛載目錄 [root@bogon ~]# mount /dev/vg0224/0224-lv1 /test1 [root@bogon ~]# mount /dev/vg0224/0224-lv2 /test2 [root@bogon ~]# mount /dev/vg0224/0224-lv3 /test3 [root@bogon ~]# xfs_info /test1 meta-data=/dev/mapper/vg0224-0224--lv1 isize=512 agcount=4, agsize=655360 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=2621440, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@bogon ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 30G 0 disk ├─vg0224-0224--lv1 253:2 0 10G 0 lvm /test1 └─vg0224-0224--lv2 253:3 0 15G 0 lvm /test2 sdc 8:32 0 30G 0 disk └─vg0224-0224--lv3 253:4 0 20G 0 lvm /test3 sr0 11:0 1 4.2G 0 rom 加入新硬碟50G的,給他pv化 [root@bogon ~]# pvcreate /dev/sdd Physical volume "/dev/sdd" successfully created. [root@bogon ~]# vgextend vg0224 /dev/sdd Volume group "vg0224" successfully extended 加入vg0224卷組 [root@bogon ~]# vgextend vg0224 /dev/sdd Volume group "vg0224" successfully extended 給0224-lv1新增到30G,擴容 [root@bogon ~]# lvextend -L 30G /dev/vg0224/0224-lv1 Size of logical volume vg0224/0224-lv1 changed from 10.00 GiB (2560 extents) to 30.00 GiB (7680 extents). Logical volume vg0224/0224-lv1 successfully resized. 重新整理擴容後的xfs檔案系統 [root@bogon ~]# xfs_growfs /dev/vg0224/0224-lv1 meta-data=/dev/mapper/vg0224-0224--lv1 isize=512 agcount=4, agsize=655360 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=2621440, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 2621440 to 7864320 給0224-lv3新增到30G ,擴容 [root@bogon ~]# lvextend -L 30G /dev/vg0224/0224-lv3 Size of logical volume vg0224/0224-lv3 changed from 20.00 GiB (5120 extents) to0 extents). Logical volume vg0224/0224-lv3 successfully resized. [root@bogon ~]# resize2fs /test3 resize2fs 1.42.9 (28-Dec-2013) open: Is a directory while opening /test3 重新整理擴容後的ext4檔案系統 [root@bogon ~]# resize2fs /dev/vg0224/0224-lv3 resize2fs 1.42.9 (28-Dec-2013) Filesystem at /dev/vg0224/0224-lv3 is mounted on /test3; on-line resizing required old_desc_blocks = 3, new_desc_blocks = 4 The filesystem on /dev/vg0224/0224-lv3 is now 7864320 blocks long. 看ext4,檔案系統 [root@bogon ~]# dumpe2fs /dev/vg0224/0224-lv3 |grep -Ei '^inode|^block' dumpe2fs 1.42.9 (28-Dec-2013) Inode count: 1310720 Block count: 5242880 Block size: 4096 Blocks per group: 32768 Inodes per group: 8192 Inode blocks per group: 512 Inode size: 256 檢視檔案系統 [root@bogon ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs 17G 6.3G 11G 37% / devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs tmpfs 2.0G 12M 2.0G 1% /run tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup /dev/sda1 xfs 1014M 130M 885M 13% /boot tmpfs tmpfs 394M 0 394M 0% /run/user/0 /dev/mapper/vg0224-0224--lv1 xfs 30G 33M 30G 1% /test1 /dev/mapper/vg0224-0224--lv2 xfs 15G 33M 15G 1% /test2 /dev/mapper/vg0224-0224--lv3 ext4 30G 44M 28G 1% /test3 [root@bogon ~]# 檢視pv化的磁碟 [root@bogon ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <19.00g 0 /dev/sdb vg0224 lvm2 a-- <30.00g 0 /dev/sdc vg0224 lvm2 a-- <30.00g 0 /dev/sdd vg0224 lvm2 a-- <50.00g <34.99g 檢視vg,機器上的卷組 [root@bogon ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <19.00g 0 vg0224 3 3 0 wz--n- <109.99g <34.99g 檢視lv,邏輯卷 [root@bogon ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <17.00g swap centos -wi-ao---- 2.00g 0224-lv1 vg0224 -wi-ao---- 30.00g 0224-lv2 vg0224 -wi-ao---- 15.00g 0224-lv3 vg0224 -wi-ao---- 30.00g
檔案系統
xfs檔案系統
mkfs.xfs 指定硬碟路徑 建立硬碟為xfs檔案系統型別
xfs_info 檢視xfs檔案系統的裝置的詳細檔案系統資訊(inode block的資訊)
xfs_growfs 掛載點路徑 重新整理xfs型別的硬碟,重新整理擴容後的xfs檔案系統
ext4檔案系統
mkfs.ext4 指定硬碟路徑 建立硬碟為ext4檔案系統型別
看ext4,檔案系統
dumpe2fs 指定硬碟的路徑
dumpe2fs /dev/sdc |grep -Ei '^inode|^block'
重新整理擴容後的ext4檔案系統
resize2fs 硬碟路徑
lvm原理以及工作流程
250G 虛擬機器 試想一下,企業裡的生產伺服器,一開始就沒有規劃好磁碟,隨著使用者的增長,磁碟可能會逐漸被填滿,這個時候你只能新增新的硬碟,新分割槽 但是舊的資料還在舊的磁碟分割槽上,你就只能停止業務進行資料遷移了 lvm也是把多個磁碟,化為一個大硬碟,但是特點是,後期可以繼續加入新的硬碟,這個邏輯卷組的容量就擴大了,等於這個大硬碟容量更大了 使用這個邏輯卷(100G+300G=400G) ↓ 獲取部分的容量,化為一個邏輯卷(分割槽) ↓ 邏輯捲進行格式化,(分割槽進行格式化) ↓ 掛載使用 但是如果你用了lvm,你可以將多個物理分割槽,抽象為一個邏輯卷,並且這個邏輯卷組是可以動態擴容,縮容的 但邏輯卷組容量不夠了,只需要買新的硬碟,通過命令再新增到這個指定的邏輯卷組中,可以在不停機的情況下,立即實現擴容,且被linux識別,yyds
lvm重點名詞
普通磁碟
↓
格式化檔案系統,block=4KB,有N個block
↓
掛載分割槽使用
lvm磁碟
↓
磁碟,格式化為pv (磁碟的容量被分為N個PE),PE預設單位是4MB,等於1024個block
↓
PV加入卷組VG(動態伸縮的大磁碟)
↓
建立邏輯卷LV(等於建立了分割槽)
↓
格式化檔案系統xfs,(sdb,sdc,sdd),邏輯卷
↓
掛載使用
pv命令
前提是需要安裝lvm命令
yum install lvm2 -y
安裝該工具後,方可使用lvm的命令
pvcreate /dev/sdb 建立pv,對硬碟進行pv化
pvremove /dev/sdb 刪除pv
pvs ,pvdisplay 檢視pv的資訊
vg命令
vgs,vgscan,vgdispay 檢視機器上現有的卷組資訊
vgcreate vg0224 /dev/sdb /dev/sdc 將兩塊硬碟 sdb,sdc建立為vg0224,
但是先得pv化它兩
pvcreate /dev/sdb /dev/sdc
刪除vg卷組
vgremove vg0224
擴容
vgextend vg0224 /dev/sdd
縮容,一般不用
vgreduce
改變容量
vgresize
lv命令
lv的引數選項
lvcreate 建立邏輯卷
-L 指定邏輯卷的大小,單位為“kKmMgGtT”位元組
-l 指定邏輯卷的大小(PE個數)
-n 後面跟邏輯卷名
-s 建立快照
-n:指定邏輯卷的名字
lvs 檢視當前機器得邏輯卷資訊
檢視邏輯卷具體的資訊
lvdisplay
建立0224lv1 指定它為20G的容量
lvcreate -n 0224lv1 -L 20G vg0224
刪除邏輯卷
lvremove /dev/vg0224/0224lv1
擴容,
lvextend
縮容,一般用不到
Lvreduce
清空lvm的環境
刪除邏輯卷 lv
刪除卷組 vg
刪除 pv化
lvremove /dev/vg0224/0224lv1
vgremove vg0224
pvremove /dev/sdb /dev/sdc
lvm建立流程
1.安裝lvm
2.檢視pv
3.建立pv
4.檢視建立後的pv
5.檢視vg
6.建立vg
7.檢視建立後的vg
8.檢視lv
9.建立lv(建立分割槽)
10.檢視lv
11.檢視磁碟裝置資訊
blkid
檢視/dev/卷組/
12.給lv格式化檔案系統
13.掛載lv
14.檢視掛載
15.開機自動掛載
16.重啟
lvm擴容
1.建立新物理卷,pv
2.檢視pv
3.檢視vg
4.vg擴容
5.再次檢視vg
6.擴容lv
7.再次檢視lv
8.調整xfs檔案系統
9.檢視磁碟掛載容量情況