全部博文(1015)
分类: LINUX
2012-02-06 15:45:33
[root@localhost ~]# df
文件系 统 1K-块 已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
2920216 2479008 290476 90% /
/dev/sda1 101086 11785 84082 13% /boot
tmpfs 257760 0 257760 0% /dev/shm
[root@localhost ~]# fdisk -l
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 522 4088542+ 8e Linux LVM
[root@localhost ~]# lvextend -L +2G /dev/VolGroup00/LogVol00
Extending logical volume LogVol00 to 4.88 GB
Insufficient free space: 64 extents needed, but only 0 available
上面的这个例子可以看出sda这 个设备至少还有一多半的空间没有使用。因为sda2分区是从14-522柱面,而整个硬盘一共有1305个柱面,523-1305都是自由空间。
但是直接用extend命令扩展 分区是不行的,会提示没有剩余空间。只是因为当初划分磁盘空间的时候逻辑卷组VolGroup00的大小已经固定了。卷组的大小确定后是不能更改的。只有 通过往卷组中添加物理卷来扩大卷组的空间。而物理卷要由新的 分区/磁盘 来创建。
因为概念比较多,所以听起来有些乱。总结一下思路:
利用剩下的自由空间 创建一个物理分区-->将这个物理分区装换为物理卷-->把这个物理卷添加到要扩展的卷组中-->然后才能用extend命令扩展此卷 组中的逻辑卷 。。。还是有些乱。。。
结合上面的例子的具体操作步骤为:
1.首先要再创建一个物理分区
(使用fdisk /dev/sda,选择n来创建一个新的分区比如sda3,主分区还是逻辑分区对此例子无所谓)
完成后需要重新启动。
可以用fdisk -l命令来查看已有分区
[root@localhost ~]# fdisk -l
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 522 4088542+ 8e Linux LVM
用fdisk /dev/sda命令,选择‘n’创建新分区,主分区,逻辑分区对这个例子来说都可以,‘w’保存。
重启机器生效。
2.接下来创建sda3分区 建为物理卷 (pvcreate /dev/sda3)
/dev/sda3这个路径可以参照 pvdisplay这个命令中sda1的路径,一般都是在dev下。
3.为卷组VolGroup00添加新的物理卷sda3来增大卷组的容量 (vgextend VolGroup00 /dev/sda3)
用vgdisplay来查看卷组名称。
4.现在才能扩展逻辑卷的大小 (lvextend -L +2G /dev/VolGroup00/LogVol00)
用lvdisplay查看逻辑卷绝对路径
*5.最后要使用resizefs2命令重新加载逻辑卷的大小才能生效。 (resize2fs /dev/VolGroup00/LogVol00)
如果不用这个命令的话,你会发现用df -h命令查看扩展的逻辑卷大小还是原来的值,没有发生变化。即使重启也不会变,所以一定要执行 resize2fs命令。