使用系统:CentOS 7
使用工具:growpart

这个方法只能把空间加在最后一个分区上,不能跨分区增加容量(这个软件没有玩的很转)。

1. 首先安装growpart

直接yum安装即可:

yum install cloud-utils-growpart

注意:由于growpart获取部分系统参数是通过分析系统命令返回的结果,所以需要保证当前环境语言为US

# 设置为空即可
export LANG=

2. 查看当前虚拟内存情况

部分系统中swap是单独使用一个分区的,这种情况就要先卸载swap

# 查看当前内存情况,查看KiB Swap那一行,不为0则继续
top

# 查看当前分区情况,查看最后System那一列,有swap则继续
fdisk -l

# 关闭swap
swapoff -a

# 卸载swap分区
umount /swap

# 删除swap分区,先进入交互模式
fdisk /dev/vda

# 依次输入d->2->w->q,然后再次查看当前分区情况
fdisk -l

3. 扩容分区大小

# 将多余的容量都加在第一分区
growpart /dev/vda 1

# 将多余的容量都加在第一分区
resize2fs /dev/vda1

# 这时fdisk已经改变,但df查看还未改变,这时就需要重启以重新加载硬盘
reboot

4. (可选)重新启用虚拟内存

跳过第二步的可以直接跳过这一步,如果按第二步删除swap后,还想再添加个swap,则继续往下看

# 分配swap空间
fallocate -l 512M /swapfile

# 调整文件权限
chmod 600 /swapfile

# 转为swap格式
mkswap /swapfile

# 启用这个swap
swapon /swapfile

# 添加自动启动
vi /etc/fstab