Linux下的设备管理

一.如何建立可变容量分区lvm

1、建立lvm所需要的概念

命令功能
pv物理卷,被lv命令处理过的物理分区
vg物理卷组,被捆绑到一起的多个物理卷
pe图里扩展,lvm设备的最小存储单元,lvm的大小是pe的整数倍,pe越小越精细,但读取速度越慢
lvm逻辑卷,直接使用的设备,可以增大、缩小,并保持原有数据不变

2、lvm的建立

命令功能
watch -n1 ‘df -H /weixindata;echo =====;pvs;echo =====;vgs;echo =====;lvs’监控建立和更改过程
fdisk /dev/vdb建立分区,建立时标签设定为8e(按t设定)
pvcreate /dev/vdb1用/dev/vdb1建立一个pv
vgcreate vg1 /dev/vdb1建立一个vg,名为vg1,与/dev/vdb1这个pv相关联
lvcreate -L 30M -n lv0 /dev/vg1建立一个lv,名为lv0,指定大小为30M,该lv与/dev/vg1/lv0这个vg相关联
mkfs.xfs /dev/vg1/lv0格式化,给lvm加上文件系统
mount /dev/vg1/lv0 /weixindata挂载lvm至目录
df -H /weixindata查看目录挂载情况

在这里插入图片描述

3、lvm的拉伸与缩减

lvm以xfs格式化时只能拉伸不能缩减,以ext4格式化时可以拉伸也可以缩减

(1)当vg中剩余的容量充足时(xfs文件系统)

命令功能
lvextend -L 100M vg1拉伸设备至100M,拉伸时使用的是vg1中的剩余容量
xfs_grow /dev/vg1/lv0拉伸该设备的文件系统,因为设备拉伸后,新的设备容量未被格式化过,没有文件系统,拉伸文件系统让拉伸后的新设备的所有容量都有文件系统

(2)当vg中剩余的容量不足时(xfs文件系统)

命令功能
fdisk /dev/vdb再次建立一个新的分区,并修改标签为8e
partprobe重新读取磁盘分区表
pvcreate /dev/vdb2用/dev/vdb2建立一个pv
vgextend vg1 /dev/vdb2用/dev/vdb2这个pv拉伸vg1,使vg1容量变大
lvextend -L 1500M /dev/vg1/lv0拉伸后的vg容量足够大,可直接拉伸lvm
xfs_grow /dev/vg1/lv0拉伸lvm设备的容量后,拉伸lvm的文件系统,使所有容量都有文件系统

(3)将lvm格式化为ext文件系统

命令功能
umount /weixindata卸载lvm
mkfs.ext4 /dev/vg1/lv0以ext4文件系统格式化lvm
mount /dev/vg1/lv0 /weixindata挂载lvm,此时lvm的文件系统是ext文件系统

(4)ext文件系统下的lvm设备的拉伸

命令功能
lvextend -L 2G /dev/vg1/lv0拉伸设备至2G
resize2fs /dev/vg1/lv0设定lvm的文件系统大小,不指定时默认拉伸至与设备容量一样大的大小

(5)ext文件系统下的lvm设备的缩减

命令功能
umount /weixindata卸载lvm
e2fsck -f /dev/vg1/lv0扫描该设备,查看当前使用容量的大小,便于决定缩减大小
resize2fs /dev/vg1/lv0 500M设定lvm文件系统大小为500M
lvreduce -L 500M /dev/vg1/lv0缩减lvm设备的容量大小,与文件系统大小统一
mount /dev/vg1/lv0 /weixindata重新挂载lvm,查看是否更改成功

在这里插入图片描述

4、vg的缩减

(1)移除空闲的vg设备

命令功能
vgreduce vg1 /dev/vdb2移除vg1中空闲的/dev/vdb2设备

(2)移除含有数据的vg设备

命令功能
pvmove /dev/vdb1 /dev/vdb2将/dev/vdb1中使用的内存转移到/dev/vdb2中
vgreduce vg1 /dev/vdb1将/dev/vdb1中使用的内存移除,则/dev/vdb1空闲,可直接移除
pvremove /dev/vdb1删除多余的pv设备

在这里插入图片描述

5、lvm的快照

(1)lvm快照的建立

命令功能
lvcreate -L 25M -n lv0-snap1 -s /dev/vg1/lv0建立/dev/vg1/lv0的快照,快照名为lv0-snap1,设定大小为25M,实际建立大小为28M,因为pe为4M,25M不是4M的倍数
mount /dev/vg1/lv0-snap1 /weixindata挂载快照

(2)lvm快照损坏如何重置

命令功能
rm -rf /weixindata/*删除挂载的目录下的文件,使lvm快照损坏
umount /weixindata卸载lvm快照
lvremove /dev/vg1/lv0-snap1删除损坏快照
lvcreate -L 25M -n lv0-snap1 -s /dev/vg1/lv0重新建立可用快照
mount /dev/vg1/lv0-snap1 /weixindata挂载可用新快照

(3)如何验证lvm快照的最大容量

命令功能
dd if=/dev/zero of=/weixindata/file bs=1M count=20添加20M的文件
lvdisplay查看lvm快照是否完好(此时应完好)
df查看lvm快照是否挂载(此时应挂载)
dd if=/dev/zero of=/weixindata/file bs=1M count=50添加50M的文件
lvdisplay查看快照是否完好(此时崩溃)

在这里插入图片描述

6、如何整个删除lvm设备

删除时需从lv的快照开始删除,然后删除lv,再删除vg,再删除pv

(1)正确删除步骤

命令功能
df查看当前是否有lvm的快照或lv挂载,若有则卸载
lvremove /dev/vg1/lv0-snap1删除快照(若有,无则不用)
lvremove /dev/vg1/lv0删除lv
vgremove vg1删除名为vg1的vg
pvremove /dev/vdb2删除名为/dev/vdb2的pv,若有多个则都删除

(2)若直接删除/dev/vdb1设备(不正确删除步骤)

命令功能
fdisk /dev/vdb直接在磁盘分区表中删除/dev/vdb1后,lvm会出现报错
vgreduce --removemissing vg1删除名为vg1的vg中出现问题的设备,将解决报错

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值