码迷,mamicode.com
首页 > 系统相关 > 详细

linux基础学习【12】

时间:2018-11-04 19:11:39      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:处理   ges   报错   无法   否则   需要   man   磁盘   remove   

lvm (logical volume manager)

逻辑卷管理

pv    ##物理卷         被lv命令处理过的物理分区
vg    ##物理卷组    被组装到一起的物理卷
pe    ##物理扩展      lvm设备的最小单元,lvm时pe的整数倍
lvm ##逻辑卷       直接使用的设备,可以增大缩减并保持原有数据不变

lvm建立

建立分区并指定标签为8e
pvcreate /dev/vdb1               ##建立物理卷
vgcreate /vg0 /dev/vdb1     ##将物理卷归入卷组
lvcreate -L 20M -n lv0 vg0  ##从vg0卷组中抽出20M划为逻辑卷lv0
mkfs.xfs /dev/vg0/lv0           ##搭建文件系统
mount /dev/vg0/lv0 /mnt     ##挂载
df -h /mnt                               ##查看挂载
parted -l                                   ##查看未挂载的文件系统

查看未使用的磁盘

技术分享图片


新建100M大小的分区

技术分享图片


修改分区id为8e(Linux LVM)

技术分享图片


pvcreate /dev/vdb1               ##建立物理卷
vgcreate /vg0 /dev/vdb1     ##将物理卷归入卷组
lvcreate -L 40M -n lv0 vg0  ##从vg0卷组中抽出20M划为逻辑卷lv0

技术分享图片


格式化为xfs文件系统

技术分享图片


挂载

技术分享图片


监控此时的pv/vg/lv信息

技术分享图片


lvm拉伸(扩容)

lvm支持热拉伸
当vg中的剩余容量充足时
lvextend -L 80M /dev/vg0/lv0    ##当cg容量足够,扩展lv0到80M
xfs_growfs /dev/vg0/lv0     ##扩展文件系统

扩展lv0到80M

技术分享图片


当vg中剩余容量不足时
再次建立分区并指定标签8e
pvcreate /dev/vdb2      ##建立新的物理卷
vgextend vg0 /dev/vdb2      ##将物理卷归入卷组
lvextend -L 200M /dev/vg0/lv0   ##扩展lv0到200M
xfs_growfs /dev/vg0/lv0     ##扩展文件系统

建立新的物理卷

技术分享图片


归入卷组vg0

技术分享图片


扩展逻辑卷lv0到300M

技术分享图片


扩展文件系统

技术分享图片


针对ext文件系统的设备的拉伸和缩减

umount /mnt         ##卸载,ext不支持热缩减
mkfs.ext4 /dev/vg0/lv0      ##格式化lv0为ext4文件系统
mount /dev/vg0/lv0 /mnt     ##挂载

格式化为ext4并挂载

技术分享图片


拉伸

lvextend -L 400M /dev/vg0/lv0   ##扩展逻辑卷lv0到400M
resize2fs /dev/vg0/lv0                ##扩展ext4文件系统

扩展到400M

技术分享图片


扩展ext4文件系统

技术分享图片


缩减

umount /dev/vg0/lv0                   ##卸载
e2fsck -f /dev/vg0/lv0                  ##强制检查文件系统
resize2fs /dev/vg0/lv0 100M        ##缩减文件系统到100M
lvreduce -L 100M /dev/vg0/lv0   ##缩减逻辑卷到100M
mount /dev/cg0/lv0 /mnt         ##挂载

卸载并检查(不支持热缩减)

技术分享图片


缩减文件系统

技术分享图片


缩减逻辑卷

技术分享图片


缩减物理卷组

vgreduce vg0 /dev/vdb2      ##从vg0中取出vdb2
vgextend vg0 /dev/vdb2      ##将vdb2添加入vg0
注意已被占用的磁盘无法去除,缩减前需要迁移数据并解除占用

技术分享图片


数据迁移

pvmove /dev/vdb1 /dev/vdb2  ##将vdb1中数据迁移到vdb2中
vgreduce vg0 /dev/vdb1      ##从vg0中取出vdb1
pvremove /dev/vdb1      ##从物理卷中删除vdb1

将vdb1中数据迁移到vdb2中,注意此时不要打断,等待100%后,命令提示符自动出现,否则有可能会损坏双方文件导致不可用

技术分享图片


从vg0中取出vdb1

技术分享图片


从pv中删除vdb1

技术分享图片


创建lvm快照

lvcreate -L 40M -n lv0-backup -s /dev/vg0/lv0
mount /dev/vg0/lv0/lv0-backup /mnt
如果写入数据大于40M,会损坏设备
会自动卸载掉lv0-backup,再次挂载会报错
删除重建后看到原设备

创建并挂载

技术分享图片


写入60M的数据(快照只有40M),自动损坏解除挂载

技术分享图片


再次挂载报错

技术分享图片


删除重建后恢复

技术分享图片

linux基础学习【12】

标签:处理   ges   报错   无法   否则   需要   man   磁盘   remove   

原文地址:http://blog.51cto.com/13992211/2312704

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!