今天将我自己做的LVM的实验发布上来啦~~ 要是有不恰当之处还请大家谅解咯~ 我们都知道lvm也是rhce必考的内容,其实也挺容易的~ 所以这么轻易的得分题千万不能出错啦~~希望这篇能对你有所帮助~~
1.给系统添加添加三块10G的硬盘,使用fdisk –l 命令确认查看。
2.分别给三块硬盘分区并指定分区类型。
3.创建物理卷(注意在需要创建物理卷的磁盘分区上进行清空操作: dd if=/dev/null of=/dev/sdbx ; 创建某个分区为物理分区:pvcreate /dev/sdbx)。
4.创建卷组。创建卷组的命令为 vgcreate 。将使用pvcreate建立的物理卷(PV)创建为一个完整的卷组(VG):
#vgcreate huhu /dev/sdc1 /dev/sdc2
相关阅读:
mysqldump和LVM逻辑卷快照 http://www.linuxidc.com/Linux/2013-09/90382.htm
LVM的综合性介绍及实现 http://www.linuxidc.com/Linux/2013-03/81482.htm
vgcreate命令第一个参数是指定该卷组的逻辑名:huhu ,可根据需要定义为任何名字。后面参数是指定希望添加到该卷组的所有分区和磁盘(这些分区或磁盘是经过pvcreate处理过的可识别的物理卷)。vgcreate在创建卷组 huhu 以外,还设置使用大小为4 MB的PE(默认为4MB),这表示卷组上创建的所有逻辑卷都以 4 MB 为增量单位来进行扩充或缩减。由于内核原因,PE大小决定了逻辑卷的最大大小,4 MB 的PE决定了单个逻辑卷最大容量为 256 GB,若希望使用大于256G的逻辑卷则创建卷组时指定更大的PE。PE大小范围为 8KB 到 512MB,并且必须总是 2 的倍数(使用-s指定,具体请参考man vgcreate)。
我这里添加了一个名为huhu的卷组,其中物理卷包含sdb1、sdc1.
激活和停止卷组(vgchange)
为了立即使用卷组而不是重新启动系统,可以使用 vgchange 来激活卷组:
#vgchange -a y huhu
停止卷组:
#vgchenge -a n huhu
添加新的物理卷到卷组中(vgextend)
系统安装了新的磁盘并创建了新的物理卷(PV),需要将其添加到已有卷组(VG)时,就需要使用 vgextend 命令:
这里 /dev/sdd1 是新的物理卷。
从卷组中删除一个物理卷(vgreduce)
要从一个卷组中删除一个物理卷,首先要确认要删除的物理卷没有被任何逻辑卷正在使用,就要使用 pvdisplay 命令察看该物理卷上是否有逻辑卷。
#pvdisplay -v /dev/sdd1
如果某个物理卷正在被逻辑卷所使用,就需要将该物理卷的数据备份到其他地方,然后再删除。删除物理卷的命令为vgreduce:
删除一个卷组(vgremove)
4.创建和管理逻辑卷。
创建逻辑卷(lvcreate )
创建逻辑卷的命令为 lvcreate :
# lvcreate -L 5G -n aa huhu
o g \
该命令就在卷组 huhu 创建名字为 aa,大小为 5G 的逻辑卷,并且设备入口为 /dev/huhu/aa(huhu为卷组名,aa为逻辑卷名)。如果希望创建一个使用剩余全部卷组的逻辑卷,则需要首先察看该卷组的PE数,然后在创建逻辑卷时指定:
# vgdisplay huhu | grep ” PE”
# lvcreate -l 45230 -n bb huhu
可以 man lvcreate 查看各个参数的使用。-L 后面直接跟空间大小;-l 后面跟PE数量(PE数量 X 每个PE大小=空间大小)
给逻辑卷创建文件系统并新建两个目录将其分别挂载。
如果想让这两个目录开机自动挂载,可将其添加到/etc/fstab文件中。
删除一个逻辑卷(lvremove)
删除逻辑卷以前首先需要将其上面的文件系统卸载,然后才能进行删除操作。命令为:lvremove 。
# umount /aa
# lvremove /dev/huhu/aa
注意在卸载的时候最好指定设备路径,否则会报错。并确认所卸载目录里面文件已经有备份。
扩展逻辑卷大小(lvextend)
lvm提供了方便调整逻辑卷大小的能力,扩展逻辑卷大小的命令是 lvextend。
首先我在这里查看逻辑卷bb的大小,并将其增加至18G。
为了确保卷组中的空间可用,所以我首先查看下。
可以看到卷组还剩余5G呢,我只用在其原有基础上再增加4G就好,现在操作啦。
#lvextend -L 18G /dev/huhu/
上面的命令就实现将逻辑卷huhu的容量扩为总共18G。
#lvextend -L +1G /huhu/bb
上面的命令就实现将逻辑卷huhu的容量再增加1G。
lvextend 后面的 -L 参数直接跟容量大小,G/M为单位; -l 参数后面跟PE数量:
# lvextend -l +100 /dev/huhu/bb
即给逻辑卷 huhu 增加100个PE的容量;如果每个PE大小为4M,则增加了 100*4M 的空间
特别注意在修改之后要执行resize2fs /dev/huhu/bb命令,来使其动态加载到挂载的文件系统中去。
减少逻辑卷大小(lvreduce)
使用 lvreduce 即可实现对逻辑卷的容量,需要首先将该逻辑卷上的文件系统卸载,然后借助e2fsck –f 、resize2fs、等工具先对文件系统进行缩减
现在我们实验将逻辑卷aa缩减至10G。这里需要确认的是被挂载的目录下文件系统里面数据全部备份好之后再进行操作。
首先卸载其挂载目录。
这一步非常重要,需要使用e2fsck命令检查逻辑卷bb,而且必须加 –f强制!!!
下面使用resize2fs将真实逻辑卷缩小为10G,再使用lvresize命令变为10G。这两步缺一不可!!切记!
-L后面直接到目标大小即可。
总结:
动态增加逻辑卷步骤大概为:
1. 查看卷组有没有可增加的空间。Vgdisplay
2. 增加至多少:lvextend –L xxG /dev/huhu/bb,或者增加多少:lvextend –L +xxG /dev/huhu/bb
3. 使用resize2fs /dev/huhu/bb
动态减少逻辑卷步骤大概为:
1. 卸载目录。Umount /bb
2. 强制进行逻辑卷检查。e2fsck –f /dev/huhu/bb
3. 缩小真实磁盘大小。Resize2fs /dev/huhu/bb xxG
4. 改变逻辑卷大小。Lvresize –L xxG /dev/huhu/bb
5. 重新挂载。 Mount /dev/huhu/bb /bb
6. 可以查看啦。df -h