如何将/dev/sda5分区扩容10GB?已生成未分配空间但无法利用
如何将/dev/sda5分区扩容10GB?已生成未分配空间但无法利用
别着急,我来给你一步步讲清楚怎么搞定这个问题!首先一定要先做数据备份——分区操作有风险,重要文件先拷到外部存储或者其他安全的地方,避免意外丢失。
前提确认
先搞清楚两个关键信息:
- 未分配空间是否和
/dev/sda5相邻,且在它的后方(如果在前方,操作会更复杂,后面单独说) /dev/sda5使用的文件系统类型(用命令df -T /dev/sda5就能看到)
情况1:未分配空间在/dev/sda5后方,文件系统是ext2/ext3/ext4
步骤1:查看分区布局
先运行lsblk或者fdisk -l,确认/dev/sda5和未分配空间的位置关系,确保两者连续。
步骤2:处理分区(区分根分区和非根分区)
- 如果
/dev/sda5不是根分区(比如挂载在/home这类目录):
先卸载分区:sudo umount /dev/sda5 - 如果是根分区:不能直接卸载,需要用Linux Live CD/USB启动系统,进入试用模式再操作。
步骤3:重新调整分区大小
运行fdisk工具修改分区表:
sudo fdisk /dev/sda
在fdisk交互界面里执行以下操作:
- 输入
d删除原有的/dev/sda5分区,接着输入分区号5确认 - 输入
n创建新分区:- 选择分区类型(主分区
p或扩展分区e,和原来的一致) - 起始扇区直接按回车,沿用原来
/dev/sda5的起始位置 - 结束扇区按回车,直接用满所有未分配空间(或者手动输入“+10G”来精确扩容10GB)
- 选择分区类型(主分区
- 输入
w保存修改并退出fdisk
步骤4:检查并扩容文件系统
先检查文件系统完整性(必须做,防止损坏):
sudo e2fsck -f /dev/sda5
然后扩容文件系统到分区的新大小:
sudo resize2fs /dev/sda5
如果是非根分区,最后记得重新挂载:sudo mount /dev/sda5 /your/mount/point
情况2:未分配空间在/dev/sda5后方,文件系统是XFS
XFS的操作更灵活,支持在线扩容:
- 同样先确认分区布局(
lsblk/fdisk -l) - 用fdisk重新调整分区大小(步骤和上面ext系列的一致:删除原分区→新建分区,起始扇区不变)
- 如果是根分区,直接在线扩容文件系统:
sudo xfs_growfs / # 这里的/是根分区的挂载点,根据实际情况修改 - 如果是非根分区,先卸载再挂载,然后扩容:
sudo umount /dev/sda5 sudo mount /dev/sda5 /your/mount/point sudo xfs_growfs /your/mount/point
特殊情况:未分配空间在/dev/sda5前方
这种情况没法直接扩容,得先把/dev/sda5移动到未分配空间的后方,再进行扩容。推荐用图形化工具GParted来操作,更直观:
- 用Linux Live CD/USB启动系统,打开GParted
- 找到
/dev/sda5,右键选择「Resize/Move」 - 拖动分区的左侧滑块到未分配空间的开头,把分区移到未分配空间后面
- 再拖动右侧滑块到末尾,把未分配空间合并进去
- 点击工具栏的「Apply」按钮,等待操作完成(移动分区耗时较长,耐心等)
备注:内容来源于stack exchange,提问作者Mohammad Faisal
相关产品推荐
相关产品推荐

