1、提前做好备份镜像:

2、给虚拟机扩盘:

3、进入虚拟机扩展/目录磁盘空间:

3.1、磁盘信息:

[root@localhost ~]# df -Th
文件系统       类型      容量  已用  可用 已用% 挂载点
devtmpfs       devtmpfs   16G     0   16G    0% /dev
tmpfs          tmpfs      16G  4.0K   16G    1% /dev/shm
tmpfs          tmpfs      16G  8.7M   16G    1% /run
tmpfs          tmpfs      16G     0   16G    0% /sys/fs/cgroup
/dev/sda3      xfs       184G  184G   20K  100% /                  # 可以看到磁盘空间的格式为xfs
/dev/sda1      xfs      1014M  220M  795M   22% /boot
tmpfs          tmpfs     3.2G     0  3.2G    0% /run/user/0

[root@localhost ~]# fdisk -l 

磁盘 /dev/sda:429.5 GB, 429496729600 字节,838860800 个扇区       # 可以看到第1步中的虚拟机扩盘是生效的
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b9602

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    35131391    16516096   82  Linux swap / Solaris
/dev/sda3        35131392   838860799   401864704   83  Linux

3.2、删除原来的/目录分区表,创建/目录分区并保存:

[root@localhost ~]# fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。


命令(输入 m 获取帮助):m
命令操作
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

命令(输入 m 获取帮助):d                          # 删除/目录的分区表
分区号 (1-3,默认 3):3
分区 3 已删除

命令(输入 m 获取帮助):n                          # 创建新的/目录分区表
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): p
分区号 (3,4,默认 3):3
起始 扇区 (35131392-838860799,默认为 35131392):
将使用默认值 35131392
Last 扇区, +扇区 or +size{K,M,G} (35131392-838860799,默认为 838860799):
将使用默认值 838860799
分区 3 已设置为 Linux 类型,大小设为 383.3 GiB

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。

3.3、重新加载分区表:

partprobe

3.4、验证分区表是否生效:

[root@localhost ~]# fdisk -l

磁盘 /dev/sda:429.5 GB, 429496729600 字节,838860800 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b9602

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    35131391    16516096   82  Linux swap / Solaris
/dev/sda3        35131392   838860799   401864704   83  Linux

3.5、扩展文件系统:

xfs格式用:
xfs_growfs 

ext4格式用:
resize2fs /dev/sda3


[root@localhost ~]# xfs_growfs /
meta-data=/dev/sda3              isize=512    agcount=4, agsize=12009344 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=48037376, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=23455, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 48037376 to 100466176

3.6、验证/目录是否扩展成功:

[root@localhost ~]# df -h 
文件系统        容量  已用  可用 已用% 挂载点
devtmpfs         16G     0   16G    0% /dev
tmpfs            16G  4.0K   16G    1% /dev/shm
tmpfs            16G   17M   16G    1% /run
tmpfs            16G     0   16G    0% /sys/fs/cgroup
/dev/sda3       384G  184G  200G   48% /
/dev/sda1      1014M  220M  795M   22% /boot
tmpfs           3.2G     0  3.2G    0% /run/user/0
overlay         384G  184G  200G   48% /var/lib/docker/overlay2/0d94670116d63c02c74849fd2e2400fb61f08204bad2cd4861d2e56d9de2b8e6/merged
overlay         384G  184G  200G   48% /var/lib/docker/overlay2/c679654ea7cb4cd92d91735f0846cdd32703b829d8fddc63758d0e22b7aa206f/merged
overlay         384G  184G  200G   48% /var/lib/docker/overlay2/a6137993c0d92d7c2a03e96dbdbb73fd8244fc6c01a10715b4119fe76a4c957d/merged
overlay         384G  184G  200G   48% /var/lib/docker/overlay2/0c8d1b18b5e6a9cbbf3e5a617d311513523ef68a94c50a025b2cad03084fe456/merged
overlay         384G  184G  200G   48% /var/lib/docker/overlay2/645ca2f7a943792c312ae70ff208101d47e9cde2fa6693a9ecb31aaa7ae94b66/merged