阿里云ecs磁盘使用率较高,可以在线扩容磁盘。

本次扩容主要使用到两个命令growpart、resize2fs
🔍 两个命令的作用详解
1. growpart /dev/vda 1
- 
命令作用: 扩展磁盘 分区 的大小。 
- 
具体说明: - 
growpart 是一个用于调整分区表的工具。 
- 
/dev/vda 指定了要操作的 物理磁盘(通常是第一块磁盘)。 
- 
1 指定了要扩展的 分区号 ,即 /dev/vda1 这个分区。 
- 
这个命令的作用是:将 /dev/vda1 分区占据的空间扩展到其所在磁盘 (/dev/vda) 的最大可用空间。它只修改分区表,让分区变大,但文件系统本身还没有感知到这个变化。 
 
- 
2. resize2fs /dev/vda1
- 
命令作用: 扩展分区上的 文件系统 大小。 
- 
具体说明: - 
resize2fs 是一个用于调整 ext2、ext3 或 ext4 文件系统大小的工具(这是 Linux 上最常见的文件系统类型)。 
- 
/dev/vda1 指定了要调整大小的 分区(该分区上的文件系统)。 
- 
这个命令的作用是:将 /dev/vda1 上面的文件系统(例如 ext4)扩展到它现在所处的分区(已经被 growpart 扩大了)的全部容量。 
- 
只有执行了这一步,系统才能真正使用新增的磁盘空间。 
 
- 
📝 总结步骤
这两个命令是一个 完整的磁盘扩容流程:
- 
growpart :扩充分区 的边界到磁盘末尾。 
- 
resize2fs :扩充文件系统 的大小,使其填满新的分区边界。 
扩容流程

步骤一:扩展云盘容量
1. 首先创建快照,再进行扩容。

2. 云盘扩容

步骤二:扩容分区及文件系统
在完成云盘容量扩展后,需要扩容分区和文件系统方可使用新增的容量。阿里云提供了两种方式:
- 
通过控制台扩容(推荐):在控制台利用云助手进行扩容,无需手动输入命令,操作便捷。 
- 
通过命令行扩容:登录实例手动输入命令来执行扩容。该方式操作性强,适用范围广泛。 

因控制台方式无法执行,需要通过命令行执行扩容。先执行fdisk、lsblk、df -Th查看基本情况。
            
            
              cpp
              
              
            
          
          [root@localhost ~]# fdisk -lu
Disk /dev/vda: 1073.7 GB, 1073741824000 bytes, 2097152000 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
Disk label type: dos
Disk identifier: 0x000b2d99
   Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048  1048562549   524280251   83  Linux
[root@localhost ~]# lsblk 
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda    253:0    0 1000G  0 disk 
└─vda1 253:1    0  500G  0 part /
[root@localhost ~]# df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs   31G     0   31G   0% /dev
tmpfs          tmpfs      31G     0   31G   0% /dev/shm
tmpfs          tmpfs      31G  900K   31G   1% /run
tmpfs          tmpfs      31G     0   31G   0% /sys/fs/cgroup
/dev/vda1      ext4      493G  438G   35G  93% /
tmpfs          tmpfs     6.2G     0  6.2G   0% /run/user/0通过执行growpart、resize2fs 命令扩容分区和文件系统
            
            
              cpp
              
              
            
          
          [root@localhost ~]# growpart  /dev/vda  1
CHANGED: partition=1 start=2048 old: size=1048560502 end=1048562550 new: size=2097139117,end=2097141165
[root@localhost ~]# resize2fs  /dev/vda1
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vda1 is mounted on /; on-line resizing required
old_desc_blocks = 32, new_desc_blocks = 63
The filesystem on /dev/vda1 is now 262142389 blocks long.再次查看已扩容完成
            
            
              cpp
              
              
            
          
          [root@localhost ~]# df -TH
Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs   34G     0   34G   0% /dev
tmpfs          tmpfs      34G     0   34G   0% /dev/shm
tmpfs          tmpfs      34G  914k   34G   1% /run
tmpfs          tmpfs      34G     0   34G   0% /sys/fs/cgroup
/dev/vda1      ext4      1.1T  471G  544G  47% /
tmpfs          tmpfs     6.7G     0  6.7G   0% /run/user/0
[root@localhost ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda    253:0    0 1000G  0 disk 
└─vda1 253:1    0 1000G  0 part /