LVM邏輯卷
邏輯卷LVM小實驗
LVM全名是 Logical Volume Manager,中文翻譯作逡輯滾動條管理員,我還是喜歡叫邏輯卷。簡單好記QWQ
邏輯卷裏面有幾個名詞需要介紹一下!
1.PhysicalVolume,實體滾動條,簡稱PV。
2.Physical Extend,實體延伸區坑,簡稱PE。
3.VolumeGroup,滾動條群組,簡稱VG。
4.LogicalVolume,邏輯滾動條,簡稱LV。
舉個簡單的例子,如果三個人要吃兩個蘋果這要怎麽分?那就是準備三個盤子。把蘋果都切成塊,均分放在盤上裏然後三個人每人一個盤子。好!這裏蘋果就是PV,每一小塊就是PE,所有蘋果放在一起就是一個VG組,在分成三份而每一份就是一個LV。在linux中組成邏輯卷可以是分區,裏面好像有個獨立的單位就是PE,所有分區加起來組成VG組。這樣接下來說到某些名詞可能就不是那麽陌生了。
好,那麽就來實驗看看怎麽個用法。這裏本人只用/dev/sdb5-8來試驗,具體怎麽分區那就自行百度吧!這裏就不涉及了。
首先,第一個命令pvcreate跟分區,設置分區屬性
[[email protected]~]# pvcreate /dev/sdb{5,6,7,8} Physical volume "/dev/sdb5"successfully created Physical volume "/dev/sdb6"successfully created Physical volume "/dev/sdb7"successfully created Physical volume "/dev/sdb8"successfully created [[email protected]~]#
然後用pvscan可以來查看具有PV的磁盤
[[email protected]~]# pvscan PV /dev/sdb5 lvm2 [10.00 GiB] PV /dev/sdb6 lvm2 [10.00 GiB] PV /dev/sdb7 lvm2 [10.00 GiB] PV /dev/sdb8 lvm2 [10.00 GiB] Total: 4 [40.00 GiB] / in use: 0 [0 ] / in no VG: 4 [40.00 GiB] [[email protected]~]#
設置完pv吧pv設置成一個vg,pe設置為4M,名字test隨便自己指定
[[email protected]~]# vgcreate -s 4M test /dev/sdb{5,6,7,8} Volume group "test" successfullycreated [[email protected]~]#
這裏也有查看VG的命令那就是vgscan
[[email protected]~]# vgscan Reading all physical volumes. This may take a while... Found volume group "test" usingmetadata type lvm2 [[email protected]~]# 有test字樣
上面所介紹的lv可用來使用掛載,當空間不夠可以從VG來擴容,但是VG空間不夠這就要往裏面加LV(分區)了增加VG的容量。命令為vgextend test /dev/sdb* (前提設置成pv也就是使用pvcreate)
看看下面的命令:
[[email protected]~]# pvscan PV /dev/sdb5 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb6 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb7 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb8 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb3 lvm2 [10.00 GiB] Total: 5 [49.98 GiB] / in use: 4 [39.98 GiB]/ in no VG: 1 [10.00 GiB] [[email protected]~]# vgex vgexport vgextend [[email protected]~]# vgextend test /dev/sdb3 Volume group "test" successfullyextended [[email protected]~]# pvscan PV /dev/sdb5 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb6 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb7 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb8 VG test lvm2 [10.00 GiB/ 10.00 GiB free] PV /dev/sdb3 VG test lvm2 [10.00 GiB/ 10.00 GiB free] Total: 5 [49.98 GiB] / in use: 5 [49.98 GiB]/ in no VG: 0 [0 ] [[email protected]~]#
下面就來設置LV命令lvcreate(發現沒有lv,vg,pv三個創建命令都是後跟上create也就是創建的意思,是不是很好記),LV的單位就是上面所設置的PE。
這裏有兩個選項一個小寫l一個大寫L,大寫可以跟上MGT單位,直接設置容量,而小寫就是設置pe個數,自己計算打消了。。。。。下面就來設置一下看看
[[email protected]~]# lvcreate -L 20G -n testlv test Logical volume "testlv" created. [[email protected]~]# 之後用來ls –l查看一下 lvdisplay查看lv的具體信息 [[email protected]~]# ll /dev/test/testlv lrwxrwxrwx.1 root root 7 Aug 23 19:16 /dev/test/testlv -> ../dm-0 [[email protected]~]# [[email protected]~]# lvdisplay --- Logical volume --- LV Path /dev/test/testlv LV Name testlv VG Name test LV UUID TVTd6G-SDbb-uIfS-7LAt-BNLR-iBas-pStuLG LV Write Access read/write LV Creation host, time centos6.magedu.com,2017-08-23 19:16:16 +0800 LV Status available # open 0 LV Size 20.00 GiB Current LE 5120 Segments 3 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 [[email protected]~]#
lv是創建完了,該給這個東西設置一下他的文件系統了,然後掛載
[[email protected] ~]# mkfs.ext4 /dev/test/testlv mke2fs 1.41.12 (17-May-2010) 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=4294967296 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 Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 35 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. [[email protected] ~]# mount /dev/test/testlv /mnt/ [[email protected] ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 51475068 5107900 43745728 11% / tmpfs 502056 76 501980 1% /dev/shm /dev/sda3 51475068 53088 48800540 1% /app /dev/sda1 999320 34952 911940 4% /boot /dev/sr0 3878870 3878870 0 100% /media/CentOS_6.9_Final /dev/mapper/test-testlv 20511356 44992 19417788 1% /mnt [[email protected] ~]#
上面提到了怎麽加VG的大小,但是LV不夠了怎麽從VG裏面忘LV裏面加呢。來我們就好好說說!
[[email protected] ~]# lvscan 查看大小 ACTIVE ‘/dev/test/testlv‘ [20.00 GiB] inherit [[email protected] ~]# lvresize -L +20G /dev/test/testlv Size of logical volume test/testlv changed from 20.00 GiB (5120 extents) to 40.00 GiB (10240 extents). Logical volume testlv successfully resized. [[email protected] ~]# lvscan 成功加到40G ACTIVE ‘/dev/test/testlv‘ [40.00 GiB] inherit [[email protected] ~]#
到這裏差不多就設置完了,因為縮小一般也用不到,誰沒事會縮小容量啊 !多數情況都是大小不夠往上加。所以就不在提及了!
本文出自 “mlon客” 博客,請務必保留此出處http://13154101.blog.51cto.com/13144101/1959574
LVM邏輯卷