LVM 使用
使用LVM迫于下载的trace可能过大,磁盘空间不足引起的变化,所以使用LVM。
一、什么是LVM
LVM(Logical Volume Manager),LVM重点在于可以弹性调整文件系统的容量。LVM的做法是将几个物理的分区(或磁盘)通过软件组合成一块看起来是独立的大磁盘(VG),然后从这大磁盘分为可使用的小分区(LV),再在小分区上格式化成文件系统使用,当文件系统空间不足时,扩展小分区(LV)即可,原文件系统上的数据不用变化。
二、LVM的几个相关专业名词
PV:磁盘上实际的物理分区修改系统标识符为8e(LV的标识符),再经过pvcreate命令,将它转化成LVM最底层的物理卷PV。
VG:所谓的LVM大磁盘就是将多个PV整合成一个VG,VG就是LVM组合起来的大磁盘,那么这个VG最大达到多少容量呢,这和PE有关,因为每个VG最多能包含65534个PE。
PE:是整个LVM最小的存储块,也就是所有的文件数据都是写入PE来处理的,有点像文件系统中的block大小。
LV:最终的VG被切分成LV,这个LV就是最后可以被格式化成文件系统的分区。
以上介绍参考《鸟哥书1》P475内容。
三、使用LVM过程
参考:http://dreamfire.blog.51cto.com/418026/1084729/,图文都很好,有一些问题
1. fdisk –l:在磁盘上分区,主分区,不清楚扩展分区是否可以,同时修改分区的标识为8e,w保存,执行partprobe命令,在硬盘分区发生改变时,更新Linux内核中读取的硬盘分区表数据,如果不执行会有问题。
执行后,报警告如下图
2. 在物理分区上创建PV
#pvcreate /dev/sdb1 /dev/sdb2
#pvscan:查询目前系统里任何有PV的磁盘
3. 创建卷组vgdata,并将刚才创建好的物理卷加入该卷组,PE默认大小是4MB,-s可以修改参数。
#vgcreate vg名称pv名称
#vgcreate vgdata /dev/sdb1 /dev/sdb2
#vgscan
4. 从物理卷vgdata上面切分500M给新的逻辑卷vgdata
#lvcreate –L 容量–n LV名称vg名称
#lvcreate –L 500M –n lvdata vgdata
5. 使用mkfs.ext4命令在逻辑卷lvdata上创建文件系统ext4
#mkfs.ext4 /de/vgdata/lvdata
6. 当文件系统空间不足,扩展vg
#vgextend vgdata /dev/sdb3
7. 将创建好的文件系统挂载到/mnt/lvm上
#mount /dev/vgdata/lvdat /mnt/lvm
四、开机挂载LVM
如果重启机器,发现/mnt/lvm下没有内容,需要重新挂载。需要设置自动挂载,三中参考的博文中介绍一种方法,我用的是另外一篇博文的方法,证实有效。
参考:http://down.51cto.com/data/218055
1. 编辑开机自启动脚本:
#cd /etc/rc.d
#vi mount.sh
脚本内容如下:第一行必须有,第二行为激活卷组storage是卷组名,之后为需要mount的逻辑卷
#!/bin/bash
/sbin/vgchange –a y storage
Mount /dev/storage/lv1 /storage/lv1
Mount /dev/storage/lv2 /storage/lv2
2. 调整脚本级别为可执行:
#chmod +x mount.sh
3. 设置脚本为开机自启动:
#cd /etc/init.d/rc3.d/
#ln –s ../mount.sh S09mount
#cd ../rc5.d/
#ln –s ../mount.sh S09mount
4. 重启测试是否可以自动挂载: