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

linux lvm的管理

时间:2017-11-09 11:32:00      阅读:328      评论:0      收藏:0      [点我收藏+]

标签:linux基础学习篇

LVM管理

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

1、LVM的制作(针对xfs问价系统)

 首先划分lvm所用到的设备,这些设备的功能id必须是linux LVM

1.1 lvm建立
1
2
3
4
5
6
pvcreate  /dev/vdb1     ##把物理分区做成物理卷
pvs|pvdisplay         ##查看物理卷
vgcreate vg0  /dev/vdb1   ##用制作好的/dev/vdb1这个物理卷制作一个物理卷组vg0
vgs|vgdisplay         ##查看物理卷组
lvcreate -L 200M-n lv0 vg0 ##在vg0这个组中建立出lv0设备 -L 指定设备大小 -n 指定设备名字
lvs|lvdisplay         ##对逻辑卷设备进行查看
1.2 lvm设备的扩大
1
2
3
4
5
6
mkfs.xfs  /dev/lv0/vg0        #格式化
mount /dev/lv0/vg0  /mnt        #挂载
#如果/mnt/目录下的存储容量不够使用则可以扩展vg0
vgextend -L  500M  /dev/vg0/lv0  #将lv0扩展到500M
#这时应扩大xfs文件系统到设备大小
xfs_growfs  /dev/vg0/lv0

2、LVM的制作(针对xfs问价系统)

2.1 lv 扩大

1
2
3
4
5
umount  /mnt     #将刚才的目录卸载
mkfs.ext4  /dev/vg0/lv0    #将其文件系统格式化成ext4文件系统
mount /dev/vg0/lv0  /mnt   #重新挂载
lvextend  -L  800M  /dev/vg0/lv0
resize2fs   /dev/vg0/lv0

2.2 lv缩小

1
2
3
4
5
umount  /mnt
e2fsck -f  /dev/vg0/lv0
resizefs /dev/vg0/lv0  200M
mount  /dev/vg0/lvo  /mnt
lvreduce -L  200 M  /dev/vg0/lv0

2.3 vg扩大

1
2
pvcreate /dev/vdb3    ##在pv中增加一块设备/dev/vdb3
vgextend vg0 /dev/vdb3  ##把新建立的/dev/vdb2添加到vg0中

2.4 vg缩减

1
2
3
4
#在vg缩减时只能缩减没有被占用的设备
pvmove  设备1  设备2     ##把设备1上的所有数据移动到设备2上
vgreduce vg0  /dev/vdb1     ##把vg0中的/dev/vdb1删除
pvremove /dev/vdb1            ##移除设备/dev/vdb1

3、删除lvm

1
2
3
4
umount   /mnt
lvremove  /dev/vg0/lv0
vgremove  vg0
pvremove  /dev/vdb2

4.lvm的快照


快照作用:保护原始数据不被破坏
>>lvcreate -L 100M -n lv0backup -s /dev/vg0/lv0
实操:

1)在/westos下建立文件

注:此时/westos下挂载的是设备/dev/vg0/lv0
touch /westos/file{1..4}
ls /westos

2)取消/westos挂载

umount /westos

3)新建快照设备删除/westos下文件

lvcreate -L 100M -n lv0backup -s /dev/vg0/lv0##同时亦快照了文件系统,故不用对快照的逻辑卷格式化就可以进行挂载
mount /dev/vg0/lv0backup /westos
ls /westos
rm -rf file*

4)取消快照设备挂载

umount /westos

5)移除快照设备

lvremove /dev/vg0/lv0backup

6)新建快照设备lvcreate -L 100M -n lv0backup -s /dev/vg0/lv0

mount /dev/vg0/lv0backup /westos

7)查看/westos下文件

ls /westos

5. lvm的删除

lvremove /dev/vg0/lv0
vgremove vg0
pvremove /dev/vdb2
fdisk /dev/vdb


#当lvm的分区被误删除时#

当出现以下错误时:

1)

删除分区 /dev/vdb1 后,同步结果如下:[root@server ~]# partprobeError: Partition(s) 1 on /dev/vdb have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes.
[root@server ~]# fdisk -l   Device Boot      Start         End      Blocks   Id  System
/dev/vdb2         1026048     2050047      512000   8e  Linux LVM
[root@server ~]# blkid/dev/vda1: UUID="9bf6b9f7-92ad-441b-848e-0257cbb883d1" TYPE="xfs" 
/dev/vdb1: UUID="1vNDy0-kQyO-GMPX-OaQv-R5Ip-YPaG-kxdtUH" TYPE="LVM2_member" 
/dev/vdb2: UUID="8XOl5c-DuVJ-SCzS-NSND-Zf6h-Op0V-CIKcB7" TYPE="LVM2_member" 
[root@server ~]# pvremove /dev/vdb1
  PV /dev/vdb1 belongs to Volume Group vg0 so please use vgreduce first.
  (If you are certain you need pvremove, then confirm by using --force twice.)说明分区 /dev/vdb1 正在被使用时,被删除了。


解决办法:

[root@server ~]# pvmove /dev/vdb1 /dev/vdb2  /dev/vdb1: Moved: 6.0%
  /dev/vdb1: Moved: 100.0%


2)


[root@server ~]# pvs  PV 1vNDy0-kQyO-GMPX-OaQv-R5Ip-YPaG-kxdtUH not recognised. Is the device missing?
  PV 1vNDy0-kQyO-GMPX-OaQv-R5Ip-YPaG-kxdtUH not recognised. Is the device missing?
  PV 1vNDy0-kQyO-GMPX-OaQv-R5Ip-YPaG-kxdtUH not recognised. Is the device missing?
  PV             VG   Fmt  Attr PSize   PFree  
  /dev/vdb2      vg0  lvm2 a--  496.00m 296.00m
  unknown device vg0  lvm2 a-m  496.00m 496.00m
[root@server ~]# vgs  PV 1vNDy0-kQyO-GMPX-OaQv-R5Ip-YPaG-kxdtUH not recognised. Is the device missing?
  PV 1vNDy0-kQyO-GMPX-OaQv-R5Ip-YPaG-kxdtUH not recognised. Is the device missing?
  VG   #PV #LV #SN Attr   VSize   VFree  
  vg0    2   1   0 wz-pn- 992.00m 792.00m
[root@server ~]# partprobe



本文出自 “13402758” 博客,请务必保留此出处http://13412758.blog.51cto.com/13402758/1980156

linux lvm的管理

标签:linux基础学习篇

原文地址:http://13412758.blog.51cto.com/13402758/1980156

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