阿里云服务器ECS在线扩容

线上运行的阿里云服务器40G云盘不够用啦!

1、登录阿里云ECS服务器,在"本实例磁盘"->选择"磁盘扩容,输入要扩的容量,付款后ok. (还挺便宜的)


image.png
  1. 登录云服务器, 安装growpart扩容格式化工具
sudo apt-get install xfsprogs
sudo apt-get install cloud-guest-utils
  1. 检查一下服务器的内核版本.
:~$ uname -a  # 4.4.0是现在服务器内核版本.
Linux szbafj 4.4.0-146-generic #172-Ubuntu SMP Wed Apr 3 09:00:08 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
  1. 运行 fdisk -l命令查看磁盘实际大小
Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x47fcbfe6

Device     Boot Start      End  Sectors Size Id Type
/dev/vda1  *     2048 83886046 83883999  40G 83 Linux

从上图分析, /dev/vda容量是100G, 但分区 /dev/vda1只有 40G。

  1. 运行 df -h命令查看磁盘分配大小
Filesystem      Size  Used Avail Use% Mounted on
udev            2.0G     0  2.0G   0% /dev
tmpfs           396M  2.8M  393M   1% /run
/dev/vda1        40G   33G  4.5G  88% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
tmpfs           396M     0  396M   0% /run/user/1000
  1. 运行 growpart 命令,调用 growpart 为需要扩容的云盘和对应的第几个分区扩容。

sudo growpart /dev/vda 1 ,表示为系统盘的第一个分区(/dev/vda1)扩容。

sudo growpart /dev/vda 1
 
# 报错
unexpected output in sfdisk --version [sfdisk,来自 util-linux 2.23.2]
 
运行LANG=en_US.UTF-8

我的云服务器运行LANG=en_US.UTF-8 后还是报错
locale命令查询系统语言
设置系统语言参照链接:https://blog.csdn.net/gatieme/article/details/50991584
vim /etc/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
# 以下是中文设置
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"
# 以下是英文
LANG="en_US.UTF-8" 
LANGUAGE="en_US:en"

必要时sudo reboot重启服务

  1. 重设分区大小,运行 resize2fs 命令调用 resize2fs 扩容文件系统。
    sudo resize2fs /dev/vda1
# sudo resize2fs /dev/vda1
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/vda1 is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 7
The filesystem on /dev/vda1 is now 26214139 (4k) blocks long.
  1. 再次查看磁盘分区大小
    df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            2.0G     0  2.0G   0% /dev
tmpfs           396M  2.8M  393M   1% /run
/dev/vda1        99G   33G   62G  36% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
tmpfs           396M     0  396M   0% /run/user/1000
  • 可以看到分区(/dev/vda1)容量已经是99GiB,表示已经成功扩容。

  • 在整个过程中,无需重启服务器(设置系统语言时可能要重启服务器),所以不会影响到服务器上正在运行的服务。

你可能感兴趣的:(阿里云服务器ECS在线扩容)