LVM (Logic Volume Management,逻辑卷管理),是传统商业Unix就带有的一项高级磁盘管理工具,异常强大.后来LVM移植到了Linux操作系统上,尽管不像原来Unix版本那么强大,但瘦死的骆驼比马大,Linux的LVM仍然非常强大,可以在生产运行系统上面直接在线扩展硬盘分区,可以把分区umount以后收缩分区大小,还可以在系统运行过程中把一个分区从一块硬盘搬到另一块硬盘上面去等等,简直就像变魔术, 这一切都可以在一个繁忙运行的系统上面直接操作,不会对你的系统运行产生任何影响,很安全.
还是拿JavaEye的网站服务器随便举个小例子吧.话说今天晚上我登录JavaEye网站服务器随便这么一查看磁盘使用状况:
C代码
df -h
df -h
竟然发现/home分区的磁盘消耗的很快
C代码
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-home 40G 32G 8G 80% /home
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-home 40G 32G 8G 80% /home
有点出乎意料,已经使用了80%,如果用光了,可就有点麻烦了, 为了安全,把/home分区扩大5GB,多给它点硬盘空间,敲入两条shell命令
C代码
lvextend -L 5G /dev/system/home
resize_reiserfs -s 5G /dev/system/home
lvextend -L 5G /dev/system/home
resize_reiserfs -s 5G /dev/system/home
先把逻辑卷扩大5GB,再把上面的reiserfs文件系统扩大5GB,前后耗时不超过3秒钟.再df -h查看一下:
C代码
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-home 45G 32G 13G 71% /home
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-home 45G 32G 13G 71% /home
哈哈,/home立刻多了5GB,搞定收工,这是不是很像变戏法,我没停任何服务,没重起服务器,大家没有任何感觉,就一切搞定,说实话我也一直觉得LVM很cool, 我一直是LVM Reiserfs的忠实拥趸.有兴趣学习LVM的同学可以下载后面的附件,这可是我珍藏多年的LVM秘籍!
另外强烈推荐Daniel Robbins在IBM DW网站上面关于LVM的系列文章:
拥有帝国一切,皆有可能。欢迎访问phome.net一、LVM系统分区
#安装系统的时候采用LVM分区
#先划分一个/boot分区
#将剩余空间划为一个物理卷(PV),创建一个名VolGroup00卷组(VG)
#并在VolGroup00卷组修建逻辑卷(LV)
二、LVM分区创建、大小调整
1、新添加一块硬盘,使用LVM对这个磁盘进行分区管理
#检测所有存储设备
lvmdiskscan #或者使用fdisk -l
#创建物理分区(将整块硬盘划为一个物理分区)
fdisk /dev/sdb
#创建物理卷(PV)
pvcreate /dev/sdb1
#创建卷组(VG)
#创建一个名为VolGroup01的卷组,并将/dev/sdb1这个刚创建的特理卷加放该卷组中
vgcreate VolGroup01 /dev/sdb1
当多个物理卷组合成一个卷组后时,LVM会在所有的物理卷上做类似格式化的工作,将每个物理卷切成一块一块的空间,这一块一块
的空间就称为PE(Physical Extent ),它的默认大小是4MB.
受内核限制的原因,一个逻辑卷(Logic Volume)最多只能包含65536个PE(Physical Extent), 一个PE的大小就决定了
逻辑卷的最大容量,4 MB 的PE决定了单个逻辑卷最大容量为 256 GB,若希望使用大于256G的逻辑卷,则创建卷组时需要指定更大
的PE.在Red Hat Enterprise Linux AS 4中PE大小范围为8 KB 到 16GB,并且 总是 2 的倍数.
例如,如果希望使用 64 MB 的PE创建卷组,这样逻辑卷最大容量就可以为4 TB,命令如下:
vgcreate - 64MB VolGroup01 /dev/sdb1
# |