linux lvm动态管理空间
admin | 技术教程, 操作系统 | 二月 7th, 2009 | No Comments »
LVM逻辑盘卷管理应该是一个系统磁盘管理的趋势,可以减少系统安装规划的难度,linux的lvm虽然和aix使用上相比还差很多,但也可以减轻一些系 统管理员工作,避免一次就将所有的磁盘容量分配掉,造成个别空间的浪费,而个别空间运行一段时间后又剩余空间不足!
可能日常使用比较多就是建立vg, lv, 扩展lv空间,特别是最后一个。之前测试过,都很正常,在上周操作,却老是出现错误,后来,发觉是一个低级的错误造成。
简单的测试如下:
一些帮助命令
[root@jxdb2 ~]# lvm help
[root@jxdb2 ~]# lvm version
LVM version: 2.02.21-RHEL4 (2007-03-26)
Library version: 1.02.17-RHEL4 (2007-02-02)
Driver version: 4.5.5
[root@jxdb2 ~]# lvm lvresize –help
检查当前分区大小
[root@jxxdb2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
15G 3.7G 9.9G 27% /u01/oracle/oradata
[root@jxxdb2 ~]# cat /etc/fstab
检查vg还有多少空间没有分配以及当前lv的大小
[root@jxxdb2 ~]# vgdisplay | egrep “Volume group|VG Name|Alloc PE|Free PE”
— Volume group —
VG Name VolGroup00
Alloc PE / Size 610 / 19.06 GB
Free PE / Size 11107 / 347.09 GB
[root@jxxdb2 ~]# lvdisplay | egrep ” Logical volume|LV Name|VG Name|LV Size”
— Logical volume —
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV Size 14.50 GB
— Logical volume —
LV Name /dev/VolGroup00/LogVol01
VG Name VolGroup00
LV Size 4.56 GB
离线操作,如果umount 不行,确定服务停止的情况下,使用umount -l
[root@jxxdb2 ~]# umount /u01/oracle/oradata
动态增加2G的大小
[root@jxxdb2 ~]# lvextend -L+2G /dev/VolGroup00/LogVol00
Extending logical volume LogVol00 to 16.50 GB
Logical volume LogVol00 successfully resized
或者直接指定大小,用如下:
[root@jxxdb2 ~]# lvextend -L 18G /dev/VolGroup00/LogVol00
检查分区并自动调整文件系统到分区的新容量
[root@jxxdb2 ~]# e2fsck -f /dev/VolGroup00/LogVol00
[root@jxxdb2 ~]# resize2fs /dev/VolGroup00/LogVol00
重新mount分区
[root@jxxdb2 ~]# mount /u01/oracle/oradata
检查修改后的大小
[root@jxxdb2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
17G 3.7G 12G 24% /u01/oracle/oradata
[root@jxxdb2 ~]# lvdisplay | egrep ” Logical volume|LV Name|VG Name|LV Size”
— Logical volume —
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV Size 17.0 GB
— Logical volume —
LV Name /dev/VolGroup00/LogVol01
VG Name VolGroup00
LV Size 4.56 GB
直接在线操作
http://www.redhat.com/magazine/009jul05/features/lvm2/
lvextend -L+10G /dev/myvg/homevol
ext2online /dev/myvg/homevol
减少逻辑卷大小
先执 e2fsck, 再执行 resize2fs,然后才 lvreduce
[root@jxdb2 /]# umount /vm
[root@jxdb2 /]# e2fsck -f /dev/VolGroup00/LogVol02
[root@jxdb2 /]# resize2fs /dev/VolGroup00/LogVol02 20G
[root@jxdb2 /]# lvreduce -L 20G /dev/VolGroup00/LogVol02
WARNING: Reducing active logical volume to 20.00 GB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce LogVol02? [y/n]: y
[root@jxdb2 /]# mount /vm
[root@jxdb2 /]# cd /vm
[root@jxdb2 vm]# ls
[root@jxdb2 /]# du -sm /vm
检查数据无丢失,但这个操作要很很小心,提示也说可能:MAY DESTROY YOUR DATA
删除逻辑卷以前首先需要将其卸载,然后删除:
# umount /dev/VolGroup00/LogVol02
# lvremove /dev/VolGroup00/LogVol02
发表评论
你必须 登录 才能发表评论.