磁盘扩容问题汇总

注意事项

  1. 已经给磁盘创建快照
  2. 允许umount 分区(针对数据盘尤其是不支持在线扩容的场景)
  3. 确认好当前是否可以操作,以及可能影响业务运行时间。
  4. 必须得到业务使用者和主机管理员授权才可以操作,如果约定好了停机时间,必须在约定时间内进行。
    目前大部分Linux 机器都可以在线扩容(业务上),但是并非所有机器都可以在不重启的情况下完成文件系统的扩容,在操作前先查看用户的分区起始扇区(fdisk -lu)和文件系统类型(df -T / blkid),根据不同的场景参考不同的文档处理。

提示

• 下面扩容均以扩容系统盘为例,除Freebsd、LVM 场景下,均按照系统盘只有一个分区进行操作。
• 数据盘在线扩容利用growpart 扩展分区时与系统盘操作一样。
• 当无法满足growpart扩展分区条件时,需要删除并新建分区方式,此类问题比较复杂;系统盘需要删除、新建分区后重启一次机器,数据盘在umount 情况下,需要执行partprobe /dev/vd 通知内核重新加载分区表,低版本fdisk 不一定是按照扇区来展示及分区,需要创建分区时选择起始位置时确认起始位置是否是前面看到的起始扇区。
• 当下面文档中的所有场景都不符合时,应按照实际情况采取扩容方案或者终止操作建议用户备份数据后重新分区、格式化并恢复数据的方案。

Linux

ext3/ext4 文件系统

⑴ 内核版本大于 等于3.6.0

   [该情况请参见高内核版本的操作步骤](链接地址https://help.aliyun.com/document_detail/113316.html?#section-cqo-5zn-ine)

① 安装扩容工具

 CentOS、Redhat、AliyunLinux 
 
 yum install cloud-utils-growpart

Ubuntu 、Debian

apt install cloud-guest-utils

② 查看分区情况,并扩容分区大小

growpart /dev/vda 1         #扩容系统盘

③ 扩容

EXT文件系统使用

resize2fs /dev/vda1

⑵ 内核版本小于3.6.0

该情况请参见低内核版本的操作步骤

如CentOS 6、Debian 7和SUSE Linux Enterprise Server 11 SP4等发行版,需要经过一次控制台重启或者API重启才能完成分区扩容。

①安装扩容工具

yum install -y dracut-modules-growroot

② 覆盖已有的initramfs文件

dracut -f

③ 扩容分区

growpart vda 1   

④ 控制台和API 重启实例
⑤ 登录后扩展文件系统大小

resize2fs /dev/vda1 

注意:
①以上两种方式均不用删除分区和新建分区。
②方法⑵低版本内核扩容需要在growpart 之后控制台或者API 重启一次实例,所以这个操作是必定会影响业务,操作前务必和业务方及主机管理员沟通好重启时间。
③ growpart 执行出错
④ 扩容ext4的文件系统并不需要 安装 xfsprogs

⑶ 删除分区新建分区(不推荐)

使用fdisk 删除分区然后新建分区,新建分区时分配所有空间,重启机器后直接resize2fs
要点是新建分区的起始位置要和老分区起始位置一致。
分区起始扇区位置不一致的问题
fdisk 查看分区起始位置不是2048
使用parted工具扩容分区

xfs 文件系统

(1)安装工具(通常已安装过)
Centos 、AliyunLinux

yum install xfsprogs   

Ubuntu Debian

apt install xfsprogs

(2)扩容分区

growpart /dev/vda 1

(3)扩容文件系统

需要在挂载状态下执行,不能写
xfs_growfs /dev/vda1
要写

xfs_growfs /

NTFS文件系统

Linux 机器使用NTFS分区时,不能在linux 下扩容分区和文件系统,应将磁盘卸载挂载到其它Widnows 机器上,然后用diskmgmt.msc 来扩展分区。

Windows

注意:Windows 机器磁盘涉及跨区卷(一个分区分布在两个甚至多个磁盘上)时,操作扩容前必须要求用户关机状态下给磁盘做所有快照,否则不予扩容。并推荐让用户备份数据后,重新分区使用简单卷。
NTFS文件系统,在控制台扩容后如果磁盘大小改变,直接利用diskmgmt.msc 来扩展卷
⑴ 磁盘大小未改变

   需要[升级驱动](链接地址https://help.aliyun.com/document_detail/113322.html),并通过控制台或API重启一次机器。

⑵ 分区大小和资源管理大小看到的不一致

分区已经变大但是资源管理器里看到的大小没有改变需要 扩展文件系统大小

Unix

Freebsd 系统盘扩容

其它

LVM

⑴ 直接扩容PV
⑵ 新建分区增加PV
https://developer.aliyun.com/article/776446

分区恢复

⑴磁盘简单分区恢复
【暂无】
⑵LVM恢复
https://developer.aliyun.com/article/776442

逻辑分区扩容

https://developer.aliyun.com/article/776447

在线扩容 https://help.aliyun.com/document_detail/113316.html
Windows 升级驱动 https://help.aliyun.com/document_detail/113322.html
NTFS 扩展文件系统 https://help.aliyun.com/knowledge_detail/148901.html
resize2fs 分区提示permission denied https://developer.aliyun.com/article/776407

上一篇:【MaxCompute 常见问题】 MaxCompute Spark


下一篇:《Adobe Illustrator CC经典教程》—第1课1.6节查找有关如何使用Illustrator的资源