lvm講解
給新的磁盤創(chuàng)建三個(gè)分區(qū),并且將分區(qū)類型改為lvm近顷,否則無法往下實(shí)驗(yàn)
命令(輸入 m 獲取幫助):p
磁盤 /dev/sdb:53.7 GB, 53687091200 字節(jié),104857600 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標(biāo)簽類型:dos
磁盤標(biāo)識符:0xa75320d0
? 設(shè)備 Boot? ? ? Start? ? ? ? End? ? ? Blocks? Id? System
/dev/sdb1? ? ? ? ? ? 2048? ? 4196351? ? 2097152? 83? Linux
/dev/sdb2? ? ? ? 4196352? ? 25167871? ? 10485760? 83? Linux
/dev/sdb3? ? ? ? 25167872? ? 67110911? ? 20971520? 83? Linux
/dev/sdb4? ? ? ? 67110912? 104857599? ? 18873344? ? 5? Extended
圖上已經(jīng)創(chuàng)建好三個(gè)分區(qū)钠绍,但還沒有改為lvm類型的抢埋,我輸入t逐步將這三個(gè)分區(qū)修改為lvm類型的分區(qū)饮寞。
命令(輸入 m 獲取幫助):t
分區(qū)號 (1-5剖毯,默認(rèn) 5):2
Hex 代碼(輸入 L 列出所有代碼):8e
已將分區(qū)“Linux”的類型更改為“Linux LVM”
[root@localhost ~]# fdisk -l
磁盤 /dev/sdb:53.7 GB, 53687091200 字節(jié)旺坠,104857600 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標(biāo)簽類型:dos
磁盤標(biāo)識符:0xa75320d0
? 設(shè)備 Boot? ? ? Start? ? ? ? End? ? ? Blocks? Id? System
/dev/sdb1? ? ? ? ? ? 2048? ? 4196351? ? 2097152? 8e? Linux LVM
/dev/sdb2? ? ? ? 4196352? ? 25167871? ? 10485760? 8e? Linux LVM
/dev/sdb3? ? ? ? 25167872? ? 67110911? ? 20971520? 8e? Linux LVM
/dev/sdb4? ? ? ? 67110912? 104857599? ? 18873344? ? 5? Extended
/dev/sdb5? ? ? ? 67112960? 104857599? ? 18872320? 83? Linux
最后輸入“w”保存退出即可,這個(gè)時(shí)候我們可以用fdisk -l再來查看一遍然遏,顯示的結(jié)果如剛才一樣贫途,三個(gè)分區(qū)都是linux lvm類型的了。
當(dāng)我們準(zhǔn)備好磁盤后待侵,接下來我們就創(chuàng)建物理卷丢早,使用“pvcreate”命令來將分區(qū)好的三個(gè)分區(qū)做成物理卷。在使用命令前我們先安裝相關(guān)的軟件包秧倾,包名叫做“lvm2”怨酝。當(dāng)你不清楚你需要安裝的軟件包名叫什么的時(shí)候傀缩,可以通過這個(gè)軟件的相關(guān)命令進(jìn)行搜索。以下示例凫碌;
[root@localhost ~]# yum provides "/*/pvvreate"
[root@localhost ~]# yum -y install lvm2
如果你的系統(tǒng)已經(jīng)安裝了lvm2的軟件包,責(zé)無需在安裝胃榕。
如果在我們創(chuàng)建好分區(qū)后盛险,系統(tǒng)里沒有生成分區(qū)文件的話,接下來我們需要使用一個(gè)命令刷新一下(一般情況下創(chuàng)建后都會自動生成)勋又。
[root@localhost ~]## partprobe
[root@localhost ~]# umount /mnt
[root@localhost ~]# pvcreate /dev/sdb1
WARNING: xfs signature detected on /dev/sdb1 at offset 0. Wipe it? [y/n]: y
接下來再使用pvcreate命令來處理分區(qū)
Wiping xfs signature on /dev/sdb1.
? Physical volume "/dev/sdb1" successfully created.
[root@localhost ~]#? pvcreate /dev/sdb2
? Physical volume "/dev/sdb2" successfully created.
[root@localhost ~]#? pvcreate /dev/sdb3
? Physical volume "/dev/sdb3" successfully created.
以上就顯示我們已經(jīng)成功將sdb1設(shè)置成物理卷了苦掘,余下兩個(gè)分區(qū)同樣的操作。物理卷設(shè)置完成后楔壤,我們使用pvdisplay命令來查看一下
"/dev/sdb1" is a new physical volume of "2.00 GiB"
? --- NEW Physical volume ---
? PV Name? ? ? ? ? ? ? /dev/sdb1
? VG Name? ? ? ? ? ? ?
? PV Size? ? ? ? ? ? ? 2.00 GiB
? Allocatable? ? ? ? ? NO
? PE Size? ? ? ? ? ? ? 0?
? Total PE? ? ? ? ? ? ? 0
? Free PE? ? ? ? ? ? ? 0
? Allocated PE? ? ? ? ? 0
? PV UUID? ? ? ? ? ? ? Lurfhs-9j4x-X1jJ-SKWL-iift-9s1e-SzPv3I
除了pvdisplay命令以外鹤啡,還有pvs命令同樣可以查看,且更加直觀顯示目前物理卷都有哪些蹲嚣。
[root@localhost ~]# pvs
? PV? ? ? ? VG? ? Fmt? Attr PSize? PFree
? /dev/sda2? centos lvm2 a--? <49.00g? ? 0
? /dev/sdb1? ? ? ? lvm2 ---? ? 2.00g? 2.00g
? /dev/sdb2? ? ? ? lvm2 ---? 10.00g 10.00g
? /dev/sdb3? ? ? ? lvm2 ---? 20.00g 20.00g
接下來我們再創(chuàng)建卷組递瑰,使用vgcreate命令來創(chuàng)建,以下示例隙畜;
[root@localhost ~]# vgcreate vg1 /dev/sdb1 /dev/sdb2
? Volume group "vg1" successfully created
[root@localhost ~]# pvdisplay
--- Physical volume ---
? PV Name? ? ? ? ? ? ? /dev/sdb1
? VG Name? ? ? ? ? ? ? vg1
? PV Size? ? ? ? ? ? ? 2.00 GiB / not usable 4.00 MiB
? Allocatable? ? ? ? ? yes
? PE Size? ? ? ? ? ? ? 4.00 MiB
? Total PE? ? ? ? ? ? ? 511
? Free PE? ? ? ? ? ? ? 511
? Allocated PE? ? ? ? ? 0
? PV UUID? ? ? ? ? ? ? Lurfhs-9j4x-X1jJ-SKWL-iift-9s1e-SzPv3I
? --- Physical volume ---
? PV Name? ? ? ? ? ? ? /dev/sdb2
? VG Name? ? ? ? ? ? ? vg1
? PV Size? ? ? ? ? ? ? 10.00 GiB / not usable 4.00 MiB
? Allocatable? ? ? ? ? yes
? PE Size? ? ? ? ? ? ? 4.00 MiB
? Total PE? ? ? ? ? ? ? 2559
? Free PE? ? ? ? ? ? ? 2559
? Allocated PE? ? ? ? ? 0
? PV UUID? ? ? ? ? ? ? mYNhe1-UP2E-6M37-6T27-hYK3-dQP5-1BKiBs
同樣的可以使用vgs這個(gè)命令查看抖部。
[root@localhost ~]# pvs
? PV? ? ? ? VG? ? Fmt? Attr PSize? PFree?
? /dev/sda2? centos lvm2 a--? <49.00g? ? ? 0
? /dev/sdb1? vg1? ? lvm2 a--? <2.00g? <2.00g
? /dev/sdb2? vg1? ? lvm2 a--? <10.00g <10.00g
? /dev/sdb3? ? ? ? lvm2 ---? 20.00g? 20.00g
最有創(chuàng)建好了卷組之后我們就可以成功創(chuàng)建邏輯卷了,使用lvcreate命令來操作议惰,以下示例慎颗;
-L:指定大小-n:設(shè)定名字
[root@localhost ~]# lvcreate -L 100M -n lv1 vg1
? Logical volume "lv1" created.
邏輯卷創(chuàng)建成功后我們就可以將它格式化了,格式類型為ext4
[root@localhost ~]# mkfs.ext4 /dev/vg1/lv1
mke2fs 1.42.9 (28-Dec-2013)
文件系統(tǒng)標(biāo)簽=
OS type: Linux
塊大小=1024 (log=0)
分塊大小=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
25688 inodes, 102400 blocks
5120 blocks (5.00%) reserved for the super user
第一個(gè)數(shù)據(jù)塊=1
接著我將它掛載到mnt的目錄下言询。
[root@localhost ~]# mount /dev/vg1/lv1 /mnt/
[root@localhost ~]# df -h
文件系統(tǒng)? ? ? ? ? ? ? ? 容量? 已用? 可用 已用% 掛載點(diǎn)
/dev/mapper/centos-root? 44G? 4.1G? 40G? 10% /
devtmpfs? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /dev
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /dev/shm
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? 8.7M? 3.9G? ? 1% /run
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /sys/fs/cgroup
/dev/sda1? ? ? ? ? ? ? 1014M? 143M? 872M? 15% /boot
tmpfs? ? ? ? ? ? ? ? ? ? 781M? ? 0? 781M? ? 0% /run/user/0
/dev/mapper/vg1-lv1? ? ? 93M? 1.6M? 85M? ? 2% /mnt
接下來學(xué)習(xí)做一個(gè)擴(kuò)容的操作俯萎,首先umount /mnt,然后在執(zhí)行lvresize命令操作;
[root@localhost ~]# umount /mnt/
[root@localhost ~]# lvresize -L 200M /dev/vg1/lv1
[root@localhost ~]# e2fsck -f /dev/vg1/lv1
[root@localhost ~]# resize2fs /dev/vg1/lv1
[root@localhost ~]# !mount
mount /dev/vg1/lv1 /mnt/
[root@localhost ~]# df -h
文件系統(tǒng)? ? ? ? ? ? ? ? 容量? 已用? 可用 已用% 掛載點(diǎn)
/dev/mapper/centos-root? 44G? 4.1G? 40G? 10% /
devtmpfs? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /dev
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /dev/shm
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? 8.7M? 3.9G? ? 1% /run
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /sys/fs/cgroup
/dev/sda1? ? ? ? ? ? ? 1014M? 143M? 872M? 15% /boot
tmpfs? ? ? ? ? ? ? ? ? ? 781M? ? 0? 781M? ? 0% /run/user/0
/dev/mapper/vg1-lv1? ? ? 190M? 1.6M? 175M? ? 1% /mnt
可以看到运杭,現(xiàn)在lv1 的容量 已經(jīng)變成了190M了夫啊,這個(gè)時(shí)候我們可以看下mnt目下的文件是否還在是否有丟失,
接下來學(xué)習(xí)縮容的操作辆憔,xfs格式的類型是不支持縮容的
先umount /mnt涮母,然后在檢查磁盤錯(cuò)誤,接著更新邏輯卷信息(比方指定為100M)躁愿,最后重置邏輯卷的大小
[root@localhost ~]# umount /mnt
[root@localhost ~]# e2fsck -f /dev/vg1/lv1
[root@localhost ~]# resize2fs /dev/vg1/lv1 100M
[root@localhost ~]# lvresize -L 100M /dev/vg1/lv1
[root@localhost ~]# mount /dev/vg1/lv1 /mnt/
[root@localhost ~]# df -h
文件系統(tǒng)? ? ? ? ? ? ? ? 容量? 已用? 可用 已用% 掛載點(diǎn)
/dev/mapper/centos-root? 44G? 4.1G? 40G? 10% /
devtmpfs? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /dev
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /dev/shm
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? 8.7M? 3.9G? ? 1% /run
tmpfs? ? ? ? ? ? ? ? ? ? 3.9G? ? 0? 3.9G? ? 0% /sys/fs/cgroup
/dev/sda1? ? ? ? ? ? ? 1014M? 143M? 872M? 15% /boot
tmpfs? ? ? ? ? ? ? ? ? ? 781M? ? 0? 781M? ? 0% /run/user/0
/dev/mapper/vg1-lv1? ? ? 93M? 1.6M? 85M? ? 2% /mnt
磁盤故障小案例
在之前我們學(xué)習(xí)的操作中有一節(jié)叛本,我們操作了更改了fstab的配置文件,所以導(dǎo)致boot啟動的時(shí)候檢測不到路徑所以出現(xiàn)的了故障彤钟,提示如下来候,每個(gè)人顯示的結(jié)果存在差異;
這里我們先輸入root用戶的密碼逸雹,然后更改fstab的配置文件即可
/dev/sdb1 /mnt xfs defaults 0 0
將這行刪除