环境说明:

 虚拟机下,CentOS6.3系统,默认采用最小化安装,默认分3个区,即根分区、boot分区及swap分区:
[root@localhost home]# df -h 文件系统 容量 已用 可用 已用%% 挂载点 /dev/mapper/VolGroup-lv_root 14G 13G 1G 92% / tmpfs 246M 0 246M 0% /dev/shm /dev/sda1 485M 52M 408M 12% /boot

因该系统仅用作测试,因此仅给了15G的空间(磁盘总空间为30G),没用多久就发现磁盘空间快满了,于是计划对磁盘进行扩展。

目标:由于系统本身占用空间并不多,主要在于/home目录,于是计划将原来的home目录挂载到一个新的分区下,具体实现如下:

一、对磁盘剩余空间进行分区:
[root@localhost ~]# fdisk /dev/sda

按【p】键可以看到该磁盘当前分区情况,按【m】可以查看帮忙,我们按【n】创建分区
然后按【e】创建扩展分区,输入分区号和分区大小等参数后建立分区返回
然后再按【n】,再按【l】创建逻辑分区sda5

返回后按【t】并输入分区号【5】,然后输入8e,将刚才创建的逻辑分区sda5类型改为linux lvm

按【w】后返回。

二、创建pv
[root@localhost ~]# pvcreate /dev/sda5
Device /dev/sda5 not found (or ignored by filtering).

    居然提示找不到,我这里迷惑了很久,不知道哪里出问题了,为此我还在51cto的linux论坛发帖提问,但没得到解决,后来无意中看到一篇介绍fdisk命令的文章,说分区后要刷新分区表,否则看不到刚才的分区,我赶紧用ls看了下分区情况,的确看不到:
[root@localhost ~]# ls /dev/ |grep sda
sda
sda1
sda2

重新读取分区表,partprobe或 kpartx /dev/sda 不行就只能重启了。

   我重启了下linux,再次使用pvcreate /dev/sda5,正常完成!
[root@localhost ~]# ls /dev/ |grep sda
sda
sda1
sda2
sda4
sda5
[root@localhost ~]# pvcreate /dev/sda5
Writing physical volume data to disk "/dev/sda5"
Physical volume "/dev/sda5" successfully created

三、扩展vg(系统默认vg为VolGroup

    前面的完成扩展VG就很简单了
[root@localhost ~]# vgextend VolGroup /dev/sda5
Volume group "VolGroup" successfully extended

   可以使用vgdisplay查看vg的空间是否真的扩展了。

四、创建新的lv并格式化

    我这里为home目录创建大小为10G,名字为lv_home的lv,命令如下:
[root@localhost ~]# lvcreate --size 10G -n lv_home VolGroup
Logical volume "lv_home" created
 

    使用lvscan和lvdisplay命令查看执行结果!

    格式化新的lv
[root@localhost ~]# mkfs.ext4 /dev/VolGroup/lv_home

五、备份和移动home

    用root用户进入单用户模式后,用mv命令将原home目录移动到home.old目录
[root@localhost ~]# init 1
[root@localhost /]# mv home home.old

六、挂载新的lv到/home

    同样是在单用户模式下:
[root@localhost ~]# mkdir /home
[root@localhost ~]# mount /dev/mapper/VolGroup-lv_home /home ##注意
[root@localhost ~]# vi /etc/fstab ##添加为自动挂载home

七、将home.old中的文件全部移动到新的home目录下即可(命令就不写了),完成后记得切换回多用户模式,否则其他用户无法登陆。

再次用df -h查看结果:

[root@localhost home]# df -h
文件系统              容量  已用  可用 已用%% 挂载点
/dev/mapper/VolGroup-lv_root
                       14G  1.2G   12G   9% /
tmpfs                 246M     0  246M   0% /dev/shm
/dev/sda1             485M   52M  408M  12% /boot
/dev/mapper/VolGroup-lv_home
                      9.9G  151M  9.2G   2% /home