# 怎样调整系统盘分区？
#### 操作场景
弹性云服务器创建成功后，如果发现系统盘分区的容量大小和实际创建的系统盘大小不一致，可以通过手动调整系统盘分区，扩容系统盘的空白空间。
扩容的方法有如下两种：
- 将空白分区划分成新分区，并将新分区格式化后挂载到root根分区的某个目录下。具体方法请参见本节内容。
- 将扩容的空白分区直接扩容到根分区。具体方法请参见FAQ：
  - [如何将扩容系统盘的空白分区在线扩容到末尾的root分区？](https://support.huaweicloud.com/ecs_faq/zh-cn_topic_0078300749.html)
  
  - [如何将扩容系统盘的空白分区在线扩容到非末尾的root分区？](https://support.huaweicloud.com/ecs_faq/zh-cn_topic_0078300750.html)
   
 
#### 操作步骤
以镜像为CentOS 7.3 64bit的弹性云服务器为例，用户在创建弹性云服务器时，创建了容量为60GB的系统盘，但是查询系统盘分区后，显示的容量大小仅为40GB。
为使用增加的20GB容量，需调整系统盘分区，具体操作如下：
1. 查看磁盘分区。 
   1. 以root用户登录Linux弹性云服务器。
   
   2. 执行以下命令，查看云服务器的磁盘详情。 **fdisk -l**
      回显类似如下，其中，"/dev/xvda"或"/dev/vda"表示系统盘。
      图1查看磁盘详情   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076540987.png "点击放大") 
   
   3. 执行以下命令，查看磁盘分区。 **parted -l /dev/xvda**
      图2查看磁盘分区   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076598858.jpg "点击放大") 
   
   
   
   
2. 将系统盘扩容后的空间划分为一个新的分区。 
   1. 执行以下命令，进入fdisk模式。以"/dev/xvda"为例： **fdisk /dev/xvda**
      回显类似如下：
      ```
      [root@ecs-8d6c ]# fdisk /dev/xvda
      Welcome to fdisk (util-linux 2.23.2).
      Changes will remain in memory only, until you decide to write them.
      Be careful before using the write command.
      Command (m for help):
      ```
      
   
   2. 输入"n"，按"Enter"，开始新建分区。 本例中由于系统盘原来已经有2个分区，所以系统自动添加第3个分区。
      回显类似如下：
      图3新建分区   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076540988.png "点击放大") 
   
   3. 输入新分区的起始磁柱编号，按"Enter"。 其中，起始磁柱编号必须大于原有分区的结束磁柱编号。本例中设置新分区的起始磁柱编号为默认值，直接按"Enter"，则回显类似如下：
      图4输入新分区的起始磁柱编号   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076595619.jpg "点击放大") 
   
   4. 输入新分区的结束磁柱编号，按"Enter"。 本例中设置新分区的结束磁柱编号为默认值，直接按"Enter"，则回显类似如下：
      图5输入新分区的结束磁柱编号   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076595620.jpg "点击放大") 
   
   5. 输入"p"，按"Enter"，查看新建分区。 回显类似如下：
      图6查看新建分区   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076596029.jpg "点击放大") 
   
   6. 输入"w"，按"Enter"，保存并退出分区信息。 系统会自动将分区结果写入分区表中，完成分区创建。
      回显类似如下：
      图7完成分区创建   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076596326.jpg "点击放大") 
   
   7. 执行以下命令，查看磁盘分区。 **parted -l /dev/xvda**
      图8查看新的磁盘分区   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076600080.jpg "点击放大") 
   
   
   
   
3. 执行以下命令，将分区表的变更同步至操作系统。 
   **partprobe**
   
   
4. 执行以下命令，设置新建分区文件系统的格式。 
   1. 执行以下命令，查看文件系统的格式。 **df -TH**
      图9查看文件系统的格式   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076541187.png "点击放大") 
   
   2. 以"ext4" 文件格式为例，命令行如下： **mkfs -t ext4 /dev/xvda3**
      ![](https://support.huaweicloud.com/ecs_faq/public_sys-resources/note_3.0-zh-cn.png)
      格式化需要等待一段时间，请观察系统运行状态，不要退出。
      回显类似如下：
      ```
      [root@ecs-86dc ]# mkfs -t ext4 /dev/xvda3
      mke2fs 1.42.9 (28-Dec-2013)
      Filesystem label=
      OS type: Linux
      Block size=4096 (log=2)
      Fragment size=4096 (log=2)
      Stride=0 blocks, Stripe width=0 blocks
      1790544 inodes, 7156992 blocks
      357849 blocks (5.00%) reserved for the super user
      First data block=0
      Maximum filesystem blocks=2155872256
      219 block groups
      32768 blocks per group, 32768 fragments per group
      8176 inodes per group
      Superblock backups stored on blocks:
              32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
              4096000
      Allocating group tables: done
      Writing inode tables: done
      Creating journal (32768 blocks): done
      Writing superblocks and filesystem accounting information: done
      ```
      
   
   
   
   
5. 将新建分区挂载到需要增加空间的目录下。 
   新增加的分区挂载到不为空的目录时，该目录下原本的子目录和文件会被隐藏，所以，新增的分区最好挂载到空目录或者新建目录。如果确实要挂载到不为空的目录，可将该目录下的子目录和文件临时移动到其他目录下，待新分区挂载成功后，再将子目录和文件移动回来。
   以新建目录/root/new为例：
   1. 执行以下命令，在/root下新建目录new。 **mkdir /root/new**
      
   
   2. 执行以下命令，将新分区挂载至"/root/new"目录。 **mount /dev/xvda3 /root/new**
      回显类似如下：
      ```
      [root@ecs-86dc ]# mount /dev/xvda3 /root/new
      [root@ecs-86dc ]#
      ```
      
   
   3. 执行以下命令，查看挂载结果。 **df -TH**
      回显类似如下：
      图10查看挂载结果   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076543500.jpg "点击放大") 
    
   
   
6. 根据需要，判断是否需要将新增磁盘设置为开机自动挂载。 
   如果未设置开机自动挂载，重启弹性云服务器后，用户需要将新建分区重新挂载至指定目录。
   - 是，执行[7]。
   
   - 否，任务结束。
    
   
   
7. 设置开机自动挂载新增磁盘。
   
   ![](https://support.huaweicloud.com/ecs_faq/public_sys-resources/note_3.0-zh-cn.png)
   禁止将未经过格式化的磁盘设为开机自动挂载，否则会导致弹性云服务器无法正常启动。
   1. 执行以下命令，获取文件系统类型、UUID。 **blkid**
      图11查看文件系统类型   
      ![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0076543501.jpg "点击放大")
      则新建分区的UUID=96e5e028-b0fb-4547-a82a-35ace1086c4f。
      
   
   2. 执行以下命令，使用vi编辑器打开"fstab"文件。 **vi /etc/fstab**
      
   
   3. 按"i"，进入编辑模式。
   
   4. 将光标移动至文件末尾，按"Enter"，并添加如下语句： **UUID=96e5e028-b0fb-4547-a82a-35ace1086c4f /root/new ext4 defaults 0 0**
      
   
   5. 按"Esc"，执行以下命令，并按"Enter"，保存设置并退出编辑器。 **:wq**
      
   
   
   ![](https://support.huaweicloud.com/ecs_faq/public_sys-resources/note_3.0-zh-cn.png)
   将新增磁盘设置为开机自动挂载后，如果要卸载该磁盘，必须先删除新增磁盘的自动挂载配置信息，否则卸载该磁盘后，会导致弹性云服务器无法正常启动。删除自动挂载配置信息的方法为：
   1. 执行以下命令，使用vi编辑器打开"fstab"文件。 **vi /etc/fstab**
      
   
   2. 按"i"，进入编辑模式。
   
   3. 删除如下语句： **UUID=96e5e028-b0fb-4547-a82a-35ace1086c4f /root/new ext4 defaults 0 0**
      
   
   4. 按"Esc"，执行以下命令，并按"Enter"，保存设置并退出编辑器。 **:wq**
      
    
   
   
 
