首页 > 代码库 > II第五单元 使用逻辑卷管理器管理灵活存储

II第五单元 使用逻辑卷管理器管理灵活存储


1.lvm名词
lvm 逻辑卷,可以让设备自由伸缩的一个设备管理软件
LVM  属于ibm公司逻辑运算管理
物理分区---->>pv---->>vg----->>lvm
pv  物理卷
vg  物理卷组
pe  物理拓展,lvm最小的存储单元
lvm 逻辑卷,时最终我们使用的可以伸缩的设备

为什么使用逻辑卷
逻辑卷和逻辑卷管理有助于更加轻松地管理磁盘空间。如果文件系统需要更多的空间 ,可以将其卷组的可用空间分配给逻辑卷 , 并且可以调整文件系统的大小。如果磁盘开始出现误 ,
可以通过卷组将替换磁盘注册为物理卷 , 并且逻辑卷的范围可迁移到新磁盘

2.lvm建立
(1)disk 用于创建与 LVM 结合使用的新分区。在要与LVM 结合使用的分区上 , 始终将
“ 类型 ” 设置为 “ 0x8e LinuxLVM”
(2)pvcreate /dev/vdb1       ##把物理分区做成物理卷
pvs|pvdisplay           ##查看物理卷

(3)vgcreate vg0 /dev/vdb1   ##用制作好的/dev/vdb1这个物理卷制作一个物理卷组vg0
vgs|vgdisplay           ##查看物理卷组

(4)lvcreate -L 200M -n lv0 vg0  ##在vg0这个组中建立出lv0设备 -L 指定设备大小 -n 指定设备名字
lvs|lvdisplay           ##对逻辑卷设备进行查看

监控命令
[root@localhost ~]# watch -n 1 ‘echo ===pvmessage==;pvs;echo===vgmessage===;vgs;echo ===lvm message===;lvs;df -h /weixindata‘
lvm建立命令
    1 mkdir /weixindata
    2 fdisk /dev/vdb
    3 partprobe
    4 pvcreate /dev/vdb1
    5 vgcreate vg0 /dev/vdb1
    6 lvcreate -L 300M -n lv0 vg0
    7 mkfs.xfs /dev/vg0/lv0
    9 mount /dev/vg0/lv0 /weixindata/
   10 ll /dev/vg0/lv0
   11 ll /dev/mapper/vg0-lv0

技术分享

技术分享

技术分享

技术分享

技术分享
3.lvm设备的扩大
#########先扩大设备,再扩大设备文件########
#########先缩减设备文件,再缩减设备########
(1)文件系统比较
ext4 是 Red Hat Enterprise Linux 6 的标准文件系统。它非常强大可靠 , 具有多项可以提高现代工作量处理性能的功能
ext2 是常用于 Linux 中的较旧的文件系统。它简单可靠 , 非常适合小型存储设备 , 但是效率低于 ext4
vfat 支持包括一系列相关文件系统 ( VFAT/FAT16 和FAT32 ), 这些文件系统针对较旧版本的 Microsoft Windows开发 , 在大量的系统和设备上受支持
xfs 在 Red Hat Enterprise Linux 7 的标准文件系统其具备数据完全性、性能定、扩展性强( 18eb )、传输速率高( 7G/s )

(2)##针对xfs文件系统
xfs文件系统只能扩大不能缩减
1)lvm扩大
lvextend —L 500M /dev/vg0/lv0      ##扩大lvm设备到500M
xfs_growfs  /dev/vg0/lv0        ##扩大xfs文件系统到设备大小
2)vg扩大
pvcreate /dev/vdb2      ##在pv中增加一块设备/dev/vdb2
vgextend vg0 /dev/vdb2      ##把新建立的/dev/vdb2添加到vg0中  


   13 lvextend -L 900M //dev/vg0/lv0
   14 xfs_growfs /dev/vg0/lv0
   15 lvextend -L 1500M //dev/vg0/lv0 vg不够
   16 fdisk /dev/vdb
   19 partprobe
   20 pvcreate /dev/vdb2       ##在pv中增加一块设备/dev/vdb2
   21 vgextend vg0 /dev/vdb2   ##把新建立的/dev/vdb2添加到vg0中  
   22 lvextend -L 1500M //dev/vg0/lv0
   23 xfs_growfs /dev/vg0/lv0  ##扩大xfs文件系统到设备大小

技术分享

技术分享

技术分享

(3)#针对ext文件系统

ext文件系统可以扩大也可以缩减
改写文件格式 
   25 umount /weixindata/   卸载
   26 mkfs.ext4 /dev/vg0/lv0  文件存为ext4形式
   27 mount /dev/vg0/lv0 /weixindata/
把文件挂载
   28 df
   29 history
技术分享
1)lvm扩大
lvextend —L 2G /dev/vg0/lv0        ##扩大lvm设备到2G
resize2fs /dev/vg0/lv0          ##设定文件系统大小和设备同步
2)vg扩大
pvcreate /dev/vdb3              ##在pv中增加一块设备/dev/vdb3
vgextend vg0 /dev/vdb3          ##把新建立的/dev/vdb3添加到vg0中
  


3)lvm缩减
umount /dev/vg0/lv0     ##卸载设备,因为文件系统缩减不支持在线操作
e2fsck -f /dev/vg0/lv0      ##检测文件系统,确定文件系统中已有数据大小防止过度缩减
resize2fs  /dev/vg0/lv0  1G         ##把文件系统缩减到1G
lvreduce  -L 1G /dev/vg0/lv0            ##设备缩减到1G
4)vg缩减
#在vg缩减时只能缩减没有被占用的设备
pvmove  设备1 设备2        ##把设备1上的所有数据移动到设备2上
vgreduce vg0 /dev/vdb1      ##把vg0中的/dev/vdb1删除
pvremove /dev/vdb1      ##把/dev/vdb1上的lvm管理信息删除

   30 umount /weixindata/     ##取消挂载
   31 e2fsck -f /dev/vg0/lv0  ##检测文件系统,
   32 resize2fs /dev/vg0/lv0 300M   ##把文件系统缩减到300M
   33 mount /dev/vg0/lv0 /weixindata/ ##挂载
   34 lvreduce -L 300 /dev/vg0/lv0  ##设备缩减到300M
   35 pvmove /dev/vdb1 /dev/vdb2  ##把vdb1上的所有数据移动到vdb2上
   36 vgreduce vg0 /dev/vdb1   ##把vg0中的/dev/vdb1删除
   38 pvremove /dev/vdb1      ##把/dev/vdb1上的lvm管理信息删除


  技术分享

技术分享

4.lvm快照
 (1)创建快照以便于数据备份
快照逻辑卷是 LVM 存储的另一项灵活功能。LVM 快照是临时保留所更改的逻辑卷的原始数据的逻辑卷。快照提供原始卷的静态视图 , 从而能够以一致状态备份其数据
快照卷大小只需足以存储在它存在期间更改的数据即可
如果数据更改量大于快照存储容量 , 则快照将自动变为不可用。 ( 原始卷原封不动 , 仍然需要从卷组中手动解除挂载和删除不可用的快照。 )
(2)创建和使用快照进行备
创建 /dev/vgname/lvname 的名为snaplvname 、大小
为 20M 的新快照卷
lvcreate -s -n snaplv -L 20M /dev/vgname/lvname
如果备份软件要求 , 请挂载该快照 , 并使备份程序指向新
挂载点
– mkdir /snapmount
mount -o ro /dev/vgname/snaplv /snapmount
验证快照逻辑卷的状态
lvs /dev/vgname/snaplv
不再使用快照时 , 请解除挂载并删除它
umount /snapmount
lvremove /dev/vgname/snaplv

(3)lvcreate -L 20M -nlv0-backup -s /dev/vg0/lv0     
##给/dev/vg0/lv0建立快照,-L 指定快照大小,-n指定快照名字 -s指定快照模板设备
mount /dev/vg0/lv0-backup   /userdate
当快照设备里的数据被更改,如果想还原,删除快照设备,在重新建立快照即可

lvm快照命令
    1 touch /weixindata/file{1..10} 建立文件
    3 ls /weixindata/ 可以查看到文件
    4 df
    5 umount /weixindata 取消挂载
    6 cd /weixindata/
    7 ls                 看不到文件
    8 cd
   11 lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0 快照
   12 mount /dev/vg0/lv0backup /weixindata/挂载
   13 cd /weixindata/        可以查看到文件
   14 ls   
   15 cd
   16 umount /weixindata/    取消挂载
   17 lvremove /dev/vg0/lv0backup  删除快照
   18 cd /weixindata/    看不到文件
   19 ls
   20 cd
   21 lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0快照
   22 mount /dev/vg0/lv0backup /weixindata/挂载
   23 cd /weixindata/  可以查看到文件
   24 ls
   25 history

技术分享

技术分享

技术分享

5.lvm删除命令

lvremove---->vgremove----->pvremove

   28 umount /weixindata/   取消挂载
   29 lvremove /dev/vg0/lv0backup  删除快照
   30 lvremove /dev/vg0/lv0  删除lvm
   32 vgremove vg0       删除vg
   33 pvremove /dev/vdb2  把/dev/vdb2上的lvm管理信息删除
   34 history

技术分享

技术分享

II第五单元 使用逻辑卷管理器管理灵活存储