lvm逻辑卷管理

                                           lvm 逻辑卷管理

1>lvm名词 小姿势

lvm可以使硬盘无限扩容:

PV(physical volume):物理卷在逻辑卷管理系统最底层,可谓整个物理硬盘或实际物理硬盘上的分区。

VG(volume group):卷组建立在物理卷上,一卷组中至少要包括一些物理卷,卷组建立后可动态添加卷到卷组中,一个逻辑卷管理系统工作中可有多个卷组。

LV (logical volume):逻辑卷建立在卷组基础上,卷组中未分配空间可用于建立新的逻辑卷,逻辑卷建立后可动态拓展或缩小空间

PE(physical extend): 物理分区是物理卷中可用于分配的最小存储单元,物理区域大小在建立卷组时指定,一旦确定不能更改,同一卷组所有物理卷的物理区域大小需一致,新的pv加入vg后,pe的大小自动更改为vg中定义的pe大小。

LE(logical  extend):逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理卷区域的大小。

卷组描述区域:卷组描述区域存在于每个物理卷中,用于描述物理卷本身,物理卷所属卷组,卷组中逻辑卷,逻辑卷中物理区域的分配等信息,他是在建立pvcreate建立物理卷时建立的。

lvm  逻辑卷,可以让设备自由伸缩的一个设备管理软件
pv   物理卷
vg   物理卷组
pe   物理拓展,lvm最小的存储单元

2>lvm制作

1.umount /mnt
2.fdisk /dev/vdb #删除分区信息
3.partprobe
3.vim /etc/fstab #删除挂载
4.watch -n 1 'pvs;vgs;lvs;df -h /mnt'#监控
pvs |pvdisplay   #查看物理卷
vgs |vgdisplay   #查看物理圈组
lvs |lvdisplay   #对逻辑卷设备进行查看
5.fdisk /dev/vdb #重新分区,i为8e,大小为1G
 Device Boot      Start         End      Blocks   Id  System
/dev/vdb1            2048     2099199     1048576   8e  Linux LVM
/dev/vdb2         2099200     4196351     1048576   8e  Linux LVM
/dev/vdb3         4196352     6293503     1048576   8e  Linux LVM
6.partprobe
7.fdisk -l
8.pvcreate /dev/vdb1 #把物理分区做成物理卷
9.vgcreate vg0 /dev/vdb1 #用制作好的/dev/vdb1这个物理卷做成一个物理卷组
10.lvcreate -L 300M -n lv0 vg0 #在vg0组中建立出lv0设备 -L 指定设备大小 -n 指定设备的名字lv0
11.mkfs.xfs /dev/vg0/lv0 #格式化

pvcreate /dev/vdb1 #把物理分区做成物理卷


vgcreate vg0 /dev/vdb1 #用制作好的/dev/vdb1这个物理卷做成一个物理卷组


lvcreate -L 300M -n lv0 vg0 #在vg0组中建立出lv0设备 -L 指定设备大小 -n 指定设备的名字lv0

mkfs.xfs /dev/vg0/lv0 #格式化 
 

3>lvm的扩大:

1.针对xfs文件系统:
lvm扩大:
   
1  lvextend -L 500M /dev/vg0/lv0 #扩大lvm设备

2  xfs_growfs /dev/vg0/lv0 #扩大xfs文件

vg扩大:
   
    1  pvcreate  /dev/vdb2 #把物理分区做成物理卷
    
    2  vgextend vg0 /dev/vdb2 #把新建立的/dev/vdb2添加到vg0中
    
  

    3  lvextend -L 1500M /dev/vg0/lv0 #扩大lvm设备
    
    4  xfs_growfs /dev/vg0/lv0 #扩大xfs文件

2.针对ext文件系统
lvm扩大:
   1 mkfs.ext4 /dev/vg0/lv0 #格式化成ext文件系统 

   2 lvextend -L 2G /dev/vg0/lv0 #扩大lvm设备到2G
   

  3 resize2fs /dev/vg0/lv0 #设备文件系统大小和系统同步

vg扩大:
   1 pvcreate /dev/vdb3 #在pv中增加一块设备/dev/vdb3
   
   2 vgextend vg0 /dev/vdb3 #把/dev/vdb2添加到vg0中
   
   3 lvextend -L 2G /dev/vg0/lv0 #扩大lvm设备到2G
   
   4 resize2fs /dev/vg0/lv0 #设定文件系统大小和设备同步


  
lvm缩小:
  1 umount /mnt #卸载
  
  2 e2fsck -f /dev/vg0/lv0 #扫描文件是否被损坏
  
  3 resize2fs /dev/vg0/lv0 1000M #缩小lvm文件系统为1000M
  
  4 mount /dev/vg0/lv0 /mnt/ #挂载lv0
  
  5 lvreduce -L 1000M  /dev/vg0/lv0 #缩小lv设备
e2fsck -f /dev/vg0/lv0 #扫描文件是否被损坏


缩减vg:

当vg缩减时缩减的设备被占用时,即该设备中有数据
  

   1 pvremove /dev/vdb1 /dev/vdb2 #先将/dev/vdb1中的数据移动到闲置的/dev/vdb2中,前提是vdb2的容量要大于vdb1中的数据容量
   
   2 vgreduce vg0 /dev/vdb1 #删除vg0中的/dev/vdb1
   
   3 pvremove /dev/vdb1 #/dev/vdb1上的管理信息删除

4>LVM制作快照lv0backup:

  扩大vg0

   1 pvcreate /dev/vdb1
   2 vgextend vg0 /dev/vdb1

  制作快照:
   1 lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0 #制作一个容量为50M的快照lv0backup
   2 mount /dev/vg0/lv0backup /mnt/ 同步到文件系统
   3 ls /mnt 
   4 rm -fr /mnt/*
   5 ls
   6 umount /mnt
   7 lvremove /dev/vg0/lv0backup
   8 lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0
   9 mount /dev/vg0/lv0backup /mnt/
   10ls /mnt
   11umount /mnt/
   12lvremove /dev/vg0/lv0backup #删除vg0中的快照

lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0

mount /dev/vg0/lv0backup /mnt/

lvremove /dev/vg0/lv0backup


制作快照实验:

快照被挂载时使所有的操作都是对快照进行的,不会破坏原有设备

   5> 删除lvm

  1 umount /mnt/
 
  2 lvremove /dev/vg0/lv0backup #删除快照
 
  3 lvremove /dev/vg0/lv0 #删除lv0
  
  4 vgremove vg0 #删除vg0
 
  5 pvremove /dev/vdb{1..2} #删除物理分区
  1  umount /mnt/

  2 lvremove /dev/vg0/lv0backup #删除快照


  3 lvremove /dev/vg0/lv0 #删除lv0

  4 vgremove vg0 #删除vg0

  5 pvremove /dev/vdb{1..2} #删除物理分区

最终结果:


猜你喜欢

转载自blog.csdn.net/dreamer_xixixi/article/details/80249766
今日推荐