linux磁盘扩容
openstack上的centos6.4镜像中,只使用了10G不到的磁盘空间,其他都没动。跑个mysql后没过多久硬盘就100%了,mysql就很应景的跪了。悲催的人啊,国庆过完一上班就来调这玩意儿。因为之前没搞过这事,就写个博客记录下来,以供日后翻阅。
fdisk命令请点fdisk
操作步骤
- 首先使用df -T查看使用情况
悲剧吧,只有8G空间。 - fdisk -l 查看磁盘情况
/dev/vda明明有107G,可是只用了8G…… - 来来来,fdisk /dev/vda进去分个区,把剩下的90多G空间整出来用。
选项p可以打印分区表
n创建一个新的主分区,设置好起始柱面,结束可以不填,默认最后一个。然后用w保存。 - 再使用fdisk -l命令,就可以看到刚刚分区的vda3出现了。
- 挂载新建分区
使linux内核识别分区信息1
cat /proc/partitions
可以看到我们刚刚分出来的vda3分区并没有被系统识别到。这里就需要使用partprobe(redhat 5.x ,redhat 6.x需要重启)或者partx(redhat 6.x)命令来让系统识别新建的分区。1
2
3partx -a /dev/vda
partx -a /dev/vda
cat /proc/partitions
ps:partx命令的时候,第一次会出现
BLKPG: Device or resource busy
error adding partition 1
BLKPG: Device or resource busy
error adding partition 2
再执行一次后,就出现
BLKPG: Device or resource busy
error adding partition 1
BLKPG: Device or resource busy
error adding partition 2
BLKPG: Device or resource busy
error adding partition 3
这时/dev/vda3才成功挂载。
这里为什么会出现这个问题,还有待研究。
将新分区格式化为ext4格式(这一步可以不做)
1
mkfs.ext4 /dev/vda3
动态扩展系统分区
1
2
3
4pvcreate /dev/vda3 #创建pv
vgextend vg_centos /dev/vda3 #将pv添加到vg(volume group)中
lvextend -L +90G /dev/vg_centos/lv_root #扩展lv_root。这里的容量视情况来定
resize2fs /dev/vg_centos/lv_root #激活扩展后的配置
查看磁盘使用情况,扩容成功。