LVM分为PV、VG、LV
1、添加新硬盘。
使用fdisk -l 查看刚刚添加的新硬盘。 /dev/sdc
2、使用fdisk /dev/sdc 把磁盘分区并变成lvm格式。(以为为步骤截图,)by:V 是不是步骤太清楚了。mark:2016年06月07日17:19:35
这个时候就有了一个 /dev/sdc1的lvm分区了。
3、这个时候我们要创建一个pv。理一理之间的关系。 pv 去 扩容 vg,然后vg 扩容lv ,然后lv 去挂在目录。
pvcreate /dev/sdc1
pv创建好了之后,才能创建vg,如果没有pv 怎么创建vg 呢。所以这个时候我们创建vg
vgcreate shiyiwen-vglvm /dev/sdc1 (当然 如果你有多个pv,可以由多个pv组成一个vg 这个时候可以这样。vgcreate volume-group1 /dev/sdb1 /dev/sdb2 /dev/sdb3 ps:vgcreate 后面的名字自己取的。当然 每个pv 都要通过pvcreate来创建,我自己开始有点嫌弃自己啰嗦了)
1 2 |
|
4、下面就是创建lv卷组了。
1 2 |
|
5、格式化lv并挂载
通过lvdisplay查看lv path名字 因为 后面mkfs.ext4 要用到这个名字而不是创建lv的名字.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
格式化
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
这个时候用DF -HL 看 是看不到效果,因为文件系统还不认识。这个时候就要用这个命令
1 |
|
这个时候用df -hl 就可以看到挂在的LVM的lv 了。
5、扩容Lv,及扩容挂在盘/data1 的大小。
我们前面用10G的硬盘,创建了10G的VG,但是我们只是使用了8G的LV,所以 通过vgs命令,还可以看到我们还有2G的vg容量。 扩容lv,就要从VG上拿。
1 2 3 4 |
|
扩容1G
1 2 3 |
|
这个时候在使用resize2fs,刷新
1 2 3 4 5 6 |
|
这个时候df -hl 就成功了。
ps:要记得添加到/etc/fstab 里面去哦(blkid 查看UUID)
6、既然vg可以扩容lv,那么 我们怎样扩容vg呢。当然是从pv扩容到vg了。这里就快点略过了。原理差不多。
1 2 |
|
7、所见lvm 要umount 操作,这里就不亲自操作了,复制一下别人的。
A. umount 文件系统
B. 缩减文件系统
# resize2fs /dev/vg0/lv1 4G
提示需要先运行磁盘检查。
C. 检查磁盘
# e2fsck –f /dev/vg0/lv1
D. 再次执行缩减操作
缩减文件系统成功,下面缩减LV的大小。
E. 缩减LV
# lvreduce /dev/vg0/lv1 –L 4G
说明:Step E 和Step D 缩减的大小必须保持一致,这里的4G是缩减到的大小;如果使用的是"-4G",则表示容量减少多少的意思。
F. 挂载查看
LV 缩减成功。
G. 查看测试数据
数据正常。
14.2 VG的缩减
A. umount 文件系统
B. 查看当前的PV详情
C. 将/dev/sdg 从vg0 中移除
# vgreduce vg0 /dev/sdg
D. 再次查看PV情况
/dev/sdg 已经不属于vg0了。
E. 查看vg0 的情况
vg0 的大小减少了5GB.
VG 缩减成功。
十五、删除LVM
如果要彻底的来移除LVM的话,需要把创建的步骤反过来操作。
15.1 umount 文件系统
15.2 移除LV
# lvremove /dev/vg0/lv1
15.3 移除VG
# vgremove vg0
15.4 移除PV
# pvremove /dev/md5 /dev/sdf1 /dev/sdg /dev/sdh
LVM 移除成功。
===============================================================================
在线新硬盘扩容VG
CentOSx系统---lvm应用:添加新的硬盘,然后扩容lv
描述:
新增的硬盘:/dev/sdb
需要扩容的lv:/dev/centos/root 或/dev/mapper/centos-root
注:可使用lvdisplay查看
lv所在的vg的名称和位置:centos /dev/centos
注:#为root用户下的环境
(1)查看是否识别了新的硬盘
# ll /dev/sd*
如果不存在可以重启机器:reboot;当然如果是生产使用的机器,不方便重启机器,可以在线识别
# echo "- - -"> /sys/class/scsi_host/host0/scan
如果还没有识别需要再继续执行host1,host2的
# echo "- - -"> /sys/class/scsi_host/host1/scan
# echo "- - -"> /sys/class/scsi_host/host2/scan
(2)创建pv
查看pv有哪些
# pvs
创建pv
# pvcreate /dev/sdb
(3)将pv添加进vg
查看vg的状态
# vgs
添加进vg
# vgextend centos /dev/sdb
注:centos为vg的名称,这时的/dev/sdb为pv
(4)扩容lv
# lvextend -l +100%FREE /dev/centos/root
注:这里是添加lv所在的vg剩下的空余空间
或
# lvextend -l 100%VG /dev/centos /dev/centos/root
注: VG:/dev/centos,LV:/dev/centos/root
查看lv
# lvs
查看文件系统大小
# df -h
发现文件系统的大小没有改变,需要同步文件系统
# resize2fs /dev/mapper/centos-root
注:resize2fs是针对ext文件系统格式;
如果是centos7的默认文件系统XFS,需要使用xfs_growfs /dev/centos/root;