(扩容系统盘)如何将扩容系统盘的空白分区在线扩容到末尾的root分区?

主宰稳场 提交于 2020-01-09 16:38:40

操作场景
弹性云服务器创建成功后,如果发现系统盘分区的容量大小和实际购买的系统盘大小不一致,可以将空白分区扩容到根分区,扩容系统盘的空白空间。
本节介绍了怎样将空白分区在线扩容到末尾的root分区。
操作步骤
以CentOS 6.5 64bit 50GB系统盘为例,root分区在最末尾分区(e.g: /dev/xvda1: swap,/dev/xvda2: root)的扩容场景。
执行以下命令,查询当前弹性云服务器的分区情况。
parted -l /dev/xvda
[root@sluo-ecs-5e7d ~]# parted -l /dev/xvda
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 53.7GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 1049kB 4296MB 4295MB primary linux-swap(v1)
2 4296MB 42.9GB 38.7GB primary ext4 boot
执行以下命令,获取文件系统类型、UUID。
blkid
/dev/xvda1: UUID="25ec3bdb-ba24-4561-bcdc-802edf42b85f" TYPE="swap"
/dev/xvda2: UUID="1a1ce4de-e56a-4e1f-864d-31b7d9dfb547" TYPE="ext4"
执行以下命令,安装growpart工具。
工具growpart可能集成在cloud-utils-growpart/cloud-utils/cloud-initramfs-tools/cloud-init包里,可以直接执行命令yum install cloud-*确保growpart命令可用即可。
yum install cloud-utils-growpart
执行以下命令,使用工具growpart将第二分区的根分区进行扩容。
growpart /dev/xvda 2
[root@sluo-ecs-5e7d ~]# growpart /dev/xvda 2
CHANGED: partition=2 start=8390656 old: size=75495424 end=83886080 new: size=96465599,end=104856255
如果扩容报错执行 partprobe #系统重读分区表
kpartx /dev/xvda2 #让 Linux 内核读取一个设备上的分区表,然后生成代表相应分区的设备
执行以下命令,检查在线扩容是否成功。
parted -l /dev/xvda
[root@sluo-ecs-5e7d ~]# parted -l /dev/xvda
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 53.7GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 1049kB 4296MB 4295MB primary linux-swap(v1)
2 4296MB 53.7GB 49.4GB primary ext4 boot
执行以下命令,扩容文件系统。
resize2fs -f $分区名
假设分区名为/dev/xvda2,则命令如下:
[root@sluo-ecs-a611 ~]# resize2fs -f /dev/xvda2
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/xvda2 is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 3
....
[root@sluo-ecs-a611 ~] # df -hT //检查文件系统扩容情况

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!