linux之LVM逻辑卷

lvm逻辑卷的作用
LVM(logic volum manage):逻辑卷管理,由于一个物理存储设备的存储空间固定且有限,而当需要一个指定大小的存储空间时,显然不可能去定制一个指定大小的硬盘,此时我们就可以使用LVM。
物理卷:pv(physcial volume)普通的直接访问的存储设备
物理卷组:vg(volume group)有限个物理卷的集合
逻辑卷:lv(logical volume)从VG中拿出的我们想要的存储空间
pe(physcial extend):物理盘区,将物理卷加入到卷组后,这个物理卷提供的物理空间会被分号成块,成为pe


一,LVM逻辑卷

LVM是pe的整数倍  pe是lvm的最小存储单元  物理扩展
pvs(物理卷),vgs(物理组),lvs(逻辑卷)

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'
监控,pvs(物理卷),vgs(物理组),lvs(逻辑卷)

1,创建目录weixindata
--mkidr /weixindata
2,更改分区名称为linux_LVM (8e)
--fdisk /dev/vdb
--t  ##更改分区标签
--5  ##选择分区编号
--8e ##选择8e
--p  ##查看是否更改成功
--wq ##保存设置
--partprobe  ##手动同部分区,让逻辑卷可用
3,将物理分区/dev/vdb5转化为物理卷
--pvcreate /dev/vdb5
4,将物理卷添加到物理卷组
--vgcreate weixingroup /dev/vdb5
5,从物理卷组拿出一部分,这部分就是逻辑卷,给weixindata目录50M
--lvcreate -L 50M -n weixindata weixingroup
6,格式化逻辑卷,添加文件系统为xfs,让weixindata目录的50M生效
--mkfs.xfs /dev/weixingroup/weixindata
7,将逻辑卷挂载到/weixindata中
--mount /dev/weixingroup/weixindata /weixindata

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'
监控,pvs(物理卷),vgs(物理组),lvs(逻辑卷)

 

1,创建目录weixindata
--mkidr /weixindata


2,更改分区名称为linux_LVM (8e)
--fdisk /dev/vdb
--t  ##更改分区标签
--5  ##选择分区编号
--8e ##选择8e
--p  ##查看是否更改成功
--wq ##保存设置


--partprobe  ##手动同部分区,让逻辑卷可用


3,将物理分区/dev/vdb5转化为物理卷
--pvcreate /dev/vdb5


4,将物理卷添加到物理卷组
--vgcreate weixingroup /dev/vdb5


5,从物理卷组拿出一部分,这部分就是逻辑卷,给weixindata目录50M
--lvcreate -L 50M -n weixindata weixingroup


6,格式化逻辑卷,添加文件系统为xfs,让weixindata目录的50M生效
--mkfs.xfs /dev/weixingroup/weixindata


7,将逻辑卷挂载到/weixindata中
--mount /dev/weixingroup/weixindata /weixindata

二,设备的拉伸

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'

1,拉伸weixindata存储空间为90M
--lvextend -L 90M /dev/weixingroup/weixindata
2,使得给weixindata的90M生效
--xfs_growfs /dev/weixingroup/weixindata
此时的/dev/vdb5的100M已经全部给weixindata目录了,如果还要拉伸空间,需要新建立一个分区,把这个分区可以加给weixindata
3,创建新的分区
--fdisk /dev/vdb
--partprobe
4,将物理分区/dev/vdb6转化为物理卷
--pvcreate /dev/vdb6
5,将物理卷/dev/vdb6添加到物理卷组weixingroup中
--vgextend weixingroup /dev/vdb6
6,从物理卷组拿出一部分,这部分就是逻辑卷,给weixindata目录150M
--lvextend -L 150M /dev/weixingroup/weixindata
7,格式化逻辑卷,让给weixindata目录的150M生效
--xfs_growfs /dev/weixingroup/weixindata

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'

1,拉伸weixindata存储空间为90M
--lvextend -L 90M /dev/weixingroup/weixindata


2,使得给weixindata的90M生效
--xfs_growfs /dev/weixingroup/weixindata
此时的/dev/vdb5的100M已经全部给weixindata目录了,如果还要拉伸空间,需要新建立一个分区,把这个分区可以加给weixindata


3,创建新的分区
--fdisk /dev/vdb
--partprobe


4,将物理分区/dev/vdb6转化为物理卷
--pvcreate /dev/vdb6


5,将物理卷/dev/vdb6添加到物理卷组weixingroup中
--vgextend weixingroup /dev/vdb6


6,从物理卷组拿出一部分,这部分就是逻辑卷,给weixindata目录150M
--lvextend -L 150M /dev/weixingroup/weixindata


7,格式化逻辑卷,让给weixindata目录的150M生效
--xfs_growfs /dev/weixingroup/weixindata

注:xfs文件系统只支持扩展,不支持缩减

三,将文件系统改为ext4,并扩展
改变文件系统时,必须先卸载

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'

1,先卸载之前xfs时的挂载
--umount /weixindata/
2,添加文件系统为ext4
--mkfs.ext4 /dev/weixingroup/weixindata
3,挂载
--mount /dev/weixingroup/weixindata /weixindata/
4,扩展weixindata为160M
--lvextend -L 160M /dev/weixingroup/weixindata
5,使给weixindata的160M生效
--resize2fs /dev/weixingroup/weixindata

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'

1,先卸载之前xfs时的挂载
--umount /weixindata/


2,添加文件系统为ext4
--mkfs.ext4 /dev/weixingroup/weixindata


3,挂载
--mount /dev/weixingroup/weixindata /weixindata/


4,扩展weixindata为160M
--lvextend -L 160M /dev/weixingroup/weixindata


5,使给weixindata的160M生效
--resize2fs /dev/weixingroup/weixindata


四,设备的缩减
注:必须先卸载。先缩小软件(文件系统),再缩小硬件

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'

1,卸载
--umount /weixindata/
2,扫描,防止缩小到存储不了本来拥有的内容
--e2fsck -f /dev/weixingroup/weixindata 
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/weixingroup/weixindata: 11/40960 files (0.0% non-contiguous), 10825/163840 blocks

3,缩小weixindata文件系统为50M
--resize2fs /dev/weixingroup/weixindata 50M
4,挂载,使缩小的文件系统生效
--mount /dev/weixingroup/weixindata /weixindata/
5,缩小逻辑卷50M
--lvreduce -L 50M /dev/weixingroup/weixindata 

监控命令:
watch -n 1 'pvs;echo +++++;vgs;echo +++++;lvs;echo +++++;df -h /weixindata'

1,卸载
--umount /weixindata/


2,扫描,防止缩小到存储不了本来拥有的内容
--e2fsck -f /dev/weixingroup/weixindata
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/weixingroup/weixindata: 11/40960 files (0.0% non-contiguous), 10825/163840 blocks

3,缩小weixindata文件系统为50M
--resize2fs /dev/weixingroup/weixindata 50M


4,挂载,使缩小的文件系统生效
--mount /dev/weixingroup/weixindata /weixindata/


5,缩小逻辑卷50M
--lvreduce -L 50M /dev/weixingroup/weixindata


五,移除物理卷

1,如果要移除/dev/vdb5物理卷,需要把/dev/vdb5物理卷的内容移到/dev/vdb6,如果没有内容,跳过此步
-- pvmove /dev/vdb5 /dev/vdb6
2,移除/dev/vdb5的物理卷组
--vgreduce weixingroup /dev/vdb5
3,移除物理卷
--pvremove /dev/vdb5


1,如果要移除/dev/vdb5物理卷,需要把/dev/vdb5物理卷的内容移到/dev/vdb6,如果没有内容,跳过此步
-- pvmove /dev/vdb5 /dev/vdb6


2,移除/dev/vdb5的物理卷组
--vgreduce weixingroup /dev/vdb5


3,移除物理卷
--pvremove /dev/vdb5

六,设备(逻辑卷)的快照

1,在weixindata创建10个文件
--cd /weixindata
--touch weixindate{1..10}
--ls
2,生成逻辑卷的快照weixindata_backup,模板为/dev/weixingroup/weixindata
--lvcreate -L 20M -n weixindata_backup -s /dev/weixingroup/weixindata
3,挂载快照
--mount /dev/weixingroup/weixindata_backup /weixindata/
--df   ##查看是否挂载成功
4,进入挂载目录查看是否有之前创建的文件
--cd /weixindata/
--ls  ##有文件
--rm -rf *
--ls  ##删除文件

如何恢复快照里的文件?
1,卸载weixindata
--umount /weixindata/
2,移除上一步的快照
--lvremove /dev/weixingroup/weixindata_backup 
3,再次生成快照
--lvcreate -L 20M -n weixindata_backup -s /dev/weixingroup/weixindata
4,挂载快照
--mount /dev/weixingroup/weixindata_backup /weixindata/
5,查看挂载目录看是否有文件
--ls /weixindata/  ##有创建的文件


1,在weixindata创建10个文件
--cd /weixindata
--touch weixindate{1..10}
--ls


2,生成逻辑卷的快照weixindata_backup,模板为/dev/weixingroup/weixindata
--lvcreate -L 20M -n weixindata_backup -s /dev/weixingroup/weixindata


3,挂载快照
--mount /dev/weixingroup/weixindata_backup /weixindata/
--df   ##查看是否挂载成功


4,进入挂载目录查看是否有之前创建的文件
--cd /weixindata/
--ls  ##有文件
--rm -rf *
--ls  ##删除文件

如何恢复快照里的文件?
1,卸载weixindata
--umount /weixindata/


2,移除上一步的快照
--lvremove /dev/weixingroup/weixindata_backup


3,再次生成快照
--lvcreate -L 20M -n weixindata_backup -s /dev/weixingroup/weixindata


4,挂载快照
--mount /dev/weixingroup/weixindata_backup /weixindata/


5,查看挂载目录看是否有文件
--ls /weixindata/  ##有创建的文件

 

两个逻辑卷部分错误的解决办法:

1,逻辑卷正使用的时候,删除逻辑卷vdb5之前的(vdb6会变成了vdb5),vgs报错的解决办法
--fdisk /dev/vdb
--d
--5
--wq
--partprobe
--vgs  会报错
解决方法:
--vgreduce --help   ##查看如何使用vgreduce恢复命令
--vgreduce --removemissing weixingroup  ##恢复物理卷组,vgs不再报错
--vgs

2,如果配置文件写错了/etc/fstab,reboot无法重启
reboot就会出现报错。
先输入超级用户密码,得到一个shell窗口,先将错误的配置文件注释掉
--vim /etc/fstab  ##把错误的改回来


1,逻辑卷正使用的时候,删除逻辑卷vdb5(之前的vdb6会变成了vdb5),vgs报错的解决办法
--fdisk /dev/vdb
--d
--5
--wq
--vgs  会报错
解决方法:
--vgreduce --help   ##查看如何使用vgreduce恢复命令
--vgreduce --removemissing weixingroup  ##恢复物理卷组,vgs不再报错
--vgs

2,如果配置文件写错了/etc/fstab,reboot无法重启
reboot就会出现报错。
先输入超级用户密码,得到一个shell窗口,先将错误的配置文件注释掉
--vim /etc/fstab  ##把错误的改回来


七,删除逻辑卷及相关信息

1,lvs(查看逻辑卷有哪些)
2,移除快照
--umount /weixindata/
--lvremove /dev/weixingroup/weixindata_backup 
--lvremove /dev/weixingroup/weixindata
3,移除物理卷组
--vgremove weixingroup 
4,移除物理卷
--pvremove /dev/vdb{5,6}
5,pvs(查看物理卷还有哪些)  ##查看是否移除错误
6,在这里再删除物理分区
--fdisk /dev/vdb  ##删除物理分区 
--partprobe       ##手动同步分区


1,lvs(查看逻辑卷有哪些)


2,移除快照
--umount /weixindata/


--lvremove /dev/weixingroup/weixindata_backup


--lvremove /dev/weixingroup/weixindata


3,移除物理卷组
--vgremove weixingroup


4,移除物理卷
--pvremove /dev/vdb{5,6}


5,pvs(查看物理卷还有哪些)  ##查看是否移除错误


6,在这里再删除物理分区
--fdisk /dev/vdb  ##删除物理分区


--partprobe       ##手动同步分区

八,修改pe大小(pe是lvm的最小存储单元)

--man vgcreat  /-S 查看pe的默认大小
--fdisk /dev/vdb ##创建vdb5逻辑卷
--vgcreate -s 16m vg0 /dev/vdb5  ##指定/dev/vdb5分区pe的大小
--vgdisplay  ##查看pe大小
--vgremove  vg0  ##因为指定时已经设定了vg0,所以先移除掉,才可以进行一步
查看默认pe大小:
--vgcreate  vg0 /dev/vdb5
--vgdisplay  ##查看pe大小


--man vgcreat  /-S 查看pe的默认大小

--fdisk /dev/vdb ##创建vdb5逻辑卷


--vgcreate -s 16m vg0 /dev/vdb5  ##指定/dev/vdb5分区pe的大小


--vgdisplay  ##查看pe大小


--vgremove  vg0  ##因为指定时已经设定了vg0,所以先移除掉,才可以进行一步


查看默认pe大小:
--vgcreate  vg0 /dev/vdb5


--vgdisplay  ##查看pe大小

九,更改磁盘分区表类型

1,删除之前所有的磁盘分区
--fdisk /dev/vdb
--d
--wq保存
--partprobe  ##手动同步分区列表

2,
--parted /dev/vdb
--输入help
--输入mklabel 再按两下tab,查看修改的磁盘分区表类型,
--输入gpt    ##提示是否覆盖数据
--输入yes
--quit      ##退出
--fdisk -l  ##查看/dev/vdb的磁盘分区是否改为gpt


1,删除之前所有的磁盘分区
--fdisk /dev/vdb
--d
--wq保存


--partprobe  ##手动同步分区列表

2,更改磁盘分区列表
--parted /dev/vdb


--输入help


--输入mklabel 再按两下tab,查看修改的磁盘分区表类型,
--输入gpt    ##提示是否覆盖数据
--输入yes
--quit      ##退出


--fdisk -l  ##查看/dev/vdb的磁盘分区是否改为gpt

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值