自动扩容失败时如何手动扩容Linux系统盘

自动扩容失败时如何手动扩容Linux系统盘

更新时间:2020-04-30 17:59:50

概述

由于部分Linux操作系统版本较旧,无法使用growpart等工具在线扩容时,这种情况下需要手动扩容Linux系统盘。本文主要针对MBR分区系统盘的手动扩容方式进行介绍。

详细信息

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

本文示例环境以Centos7.X系统为例,且分区为MBR格式分区,系统盘容量小于2T。分区以/dev/vda为例。

  1. 登录机器,执行blkid命令查看当前文件系统类型,确认为MBR格式分区。
  2. 执行以下命令,查看当前分区状态。
    fdisk -lu
    系统显示类似如下,重点关注分区起始位置,删除后新建分区时,起始位置需要与原分区一致,否则重启会异常。
  3. 执行以下命令,进行扩容操作,根据提示选择对应选项。
    fdisk -u /dev/vda
    系统显示类似如下,保存分区信息时,会出现警告信息,由于系统盘分区是busy状态,重新读取分区表会失败。
    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): p
    Disk /dev/vda: 47.2 GB, 47244640256 bytes, 92274688 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: 0x0008d73a
       Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *        2048    83884031    41940992   83  Linux
    Command (m for help): d
    Selected partition 1
    Partition 1 is deleted
    Command (m for help): n
    Partition type:
       p   primary (0 primary, 0 extended, 4 free)
       e   extended
    Select (default p): p
    Partition number (1-4, default 1): 1
    First sector (2048-92274687, default 2048): 
    Using default value 2048
    Last sector, +sectors or +size{K,M,G} (2048-92274687, default 92274687): 
    Using default value 92274687
    Partition 1 of type Linux and of size 44 GiB is set
    Command (m for help): wq
    The partition table has been altered!
    Calling ioctl() to re-read partition table.
    WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
    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)
    Syncing disks.
  4. 重启实例,启动后执行以下命令,进行扩容。
    resize2fs /dev/vda1
  5. 执行以下命令,确认已经扩容成功。
    df -h
    系统显示类似如下。

适用于

  • 云服务器ECS
  • 轻量应用服务器