使用fdisk扩容新分区起始位置无法与扩容前保持一致

问题描述

使用fdisk扩容新分区起始位置无法与扩容前保持一致,具体信息如下所示。

  1. 查看vdb1磁盘分区情况,如下图所示,扩容前分区起始位置63。
  2. 使用fdisk删除分区后,新建分区时最小起始位置为2048,无法与原分区保持一致。

问题原因

  • 用户在最初进行分区格式化时,可能使用了其他工具,例如,使用了parted命令指定了小于2048的分区起始位置。
  • 用户在最初进行分区格式化时,在进行“切换dos兼容性标志”的操作时,可以指定小于2048的值作为分区起始位置。

解决方案

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
  • 若原始分区起始位置为63和2048之间,可参考如下步骤进行操作。本文以/dev/vdb分区为例。
    1. 使用fdisk命令扩容时,需要按“c”切换dos兼容性标志。
    2. 然后再进行对应的删除、新建即可。
  • 若分区起始位置小于63,可尝试使用parted进行分区扩容。
    1. 执行以下命令,查看原分区起始位置。
      fdisk -l /dev/vdb
      系统显示类似如下,Start值为7,若此时使用fdisk切换dos兼容性标志,依然无法设置为7。
    2. 可使用3.0版本的parted工具的resizepart命令,进行分区扩容,操作如下图所示。“resizepart 1 100%”代表将Number为1的分区的End位置调整到磁盘尾部。
    3. 然后依次执行以下命令即可。
      e2fsck -f /dev/vdb1
      resize2fs /dev/vdb1

适用于

  • 云服务器ECS