相对于普通磁盘优势是逻辑卷可以在线动态的拉伸(不用先unmount操作),只要vg中有足够的空间即可
1:首先查看vg是否有足够的空间
[[email protected] mapper]# vgdisplay
2:逻辑卷的在线拉伸
[[email protected] mapper]# lvextend -L +2G /dev/vg_gechong/lv_swap
3:查看逻辑卷的大小
[[email protected] ~]# df -h
大小并没有改变,原因:逻辑卷的尺寸扩展之后,并没有更新文件系统,操作系统并没有识别拉伸后的尺寸,所以必须更新文件系统才行
4:更新文件系统
[[email protected] ~]# resize2fs /dev/vg_gechong/lv_swap
5:重新查看文件系统的大小
[[email protected] ~]# df -h
6: 如果卷组不够用呢?该如何解决?
重新添加PV,即添加磁盘即可
[[email protected] ~]# vgs
7:拉伸一个卷组
1:创建PV [[email protected] ~]# pvcreate /dev/sdd 2:把PV添加到VG中 [[email protected] ~]# vgextend vg_gechong /dev/sdd 3:重新查看vg的大小 [[email protected] ~]# vgs
缩小逻辑卷
逻辑卷的缩小不能在线执行
1:卸载已经挂载的逻辑卷
[[email protected] ~]# umount /dev/vg_gechong/lv_swap
2:检查文件系统
e2fsck -f /dev/vg_gechong/lv_swap
3:缩小文件系统
[[email protected] ~]# resize2fs /dev/vg_gechong/lv_swap 1G
把文件系统空间缩小为1G
4:缩小逻辑卷
[[email protected] ~]# lvreduce -L 1G /dev/vg_gechong/lv_swap
5:查看缩小后的逻辑卷
[[email protected] ~]# lvdisplay
6:挂载逻辑卷
[[email protected] ~]# mount /dev/vg_gechong/lv_swap /mnt
缩小卷组
[[email protected] ~]# vgreduce vg_gechong /dev/sdd
查看
[[email protected] ~]# vgdisplay
[[email protected] ~]# pvremove /dev/sdd 删除物理卷
----------------------------------------------------
pvscan :搜寻目前系统里面仸何具有 PV 的磁盘
[[email protected] ~]# pvscan
PV /dev/hda6 lvm2 [1.40 GB]
PV /dev/hda7 lvm2 [1.40 GB]
PV /dev/hda8 lvm2 [1.40 GB]
Total: 4 [5.61 GB] / in use: 0 [0 ] / in no VG: 4 [5.61 GB]
最后一行显示的是:整体 PV 的量 / 已经被使用到 VG 的 PV 量 / 剩余的 PV 量
pvdisplay :显示出目前系统上面的 PV 状
? vgcreate :就是主要建立 VG
? vgscan : 搜寻系统上面是否有 VG 存在?
? vgdisplay :显示目前系统上面的 VG 状态;
? vgextend :在 VG 内增加额外的 PV ; 如:vgextend oyxtvg /dev/hda8
? vgreduce :在 VG 内移除 PV;
? vgchange :设定 VG 是否启动(active);
? vgremove :删除一个 VG
---------------------------------------
放大LV容量
1. 用 fdisk 建立新的具有 8e system ID 的 partition
2. 利用 pvcreate 建立 PV
3. 利用 vgextend 将 PV 加入我们的 oyxtvg
4. 利用 lvresize 将新加入的 PV 内的 PE 加入 oyxtlv 中
5. 透过 resize2fs 将文件系统的容量确实增加!
# 容量好像不能够写小数点位数,因此 6.9G 是错误的,建议使用 6900M
---------------------------------------
快照snapshot(主要是用作实时在线备份)
原理:通过lvm快照给lvm真身拍个照片,当lvm真身发送改变时,lvm快照把lvm真身改变之前的内容存放在快照上,这样在lvm快照有效的这段时间内,我们看到的lvm快照上的内容始终是lvm真身在创建lvm快照时内容,通过备份lvm快照即可达到在线备份lvm真身的目的。需要注意的是,当lvm快照比lvm真身小时,若lvm真身发生的改变大于lvm快照,则lvm快照将变得无法读取而失效; 若lvm快照大于等于lvm真身,则不会发生前面的情况。
利用 lvcreate 建立系统忚照区,我们取名为 oyxtss,并给予 60 个 PE
[[email protected] ~]# lvcreate -l 60 -s -n oyxtss /dev/oyxtvg/oyxtlv
Logical volume "oyxtss" created
上述的命令中最重要的是那个 -s 的选顷!代表是 snapshot 快照功能之意!
-n 后面是快照区的名称, /dev/.... 则是要被快照的 LV 完整名称。
-l 后面则是使用多少个 PE 来为这个快照区使用,或者在后面直接指定快照的空间大小比如 -l 60M
#mkdir /snap //创建一个目录作为快照卷的挂载点
#tar -jcf /tmp/snap.tar.gz /snap/* //备份快照卷的内容到/tmp下
这个时候无论你在逻辑卷上做什么变化都不用担心数据丢失了,从备份的快照文件里面可以恢复之前的文件,这就是快照卷的强大之处了……
#lvdisplay
.......
LV Size 6.97 GB <==被快照的原 LV 磁盘容量
Current LE 446 COW-table size 960.00 MB <==快照区的实际容量
COW-table LE 60 <==快照区占用的 PE 数量
........
注意两点:
1、快照其实也是一个逻辑卷,snapshot这种方法仅对LVM有效,对于非LVM文件系统无效
2、快照只能对逻辑卷LVM进行备份,并且只能对同一个卷组的逻辑卷进行备份。另外又由于由于快照区与原本的 LV 共享很多PE 区块,因此快照区与被快照的 LV 必项要在同一个 VG 上头
Linux逻辑卷的拉伸和缩小