双系统下扩容EFI分区后出现未使用空间的修复咨询
嗨,我完全懂你现在的困扰——好不容易把EFI分区扩容到525MB,结果新增的空间没法用,GParted检查还失败,确实挺闹心的。咱们一步步来搞定这个问题:
首先得明确:你用GParted调整的是分区的物理大小,但EFI分区用的是FAT32文件系统,分区变大后,文件系统本身并没有自动扩容,所以才会出现“未使用空间”的情况。咱们需要手动修复文件系统并扩容它:
操作前准备
确保你是在Ubuntu Live USB环境下操作,而且EFI分区处于未挂载状态(如果之前不小心挂载了,先卸载)。
具体步骤
找到EFI分区的设备名
打开终端,输入以下命令查看所有分区:lsblk找到标注为
/boot/efi的分区,它的设备名通常是/dev/nvme0n1p1(NVMe硬盘)或者/dev/sda1(SATA硬盘),记下来,后面用/dev/sdX1代替这个实际路径。卸载EFI分区
如果分区处于挂载状态,先卸载:sudo umount /dev/sdX1如果提示“target is busy”,重启一下Live USB系统再试就行。
彻底检查并修复FAT32文件系统
用dosfsck工具(比GParted的检查更针对FAT系统)修复可能存在的错误:sudo dosfsck -a -w /dev/sdX1-a:自动修复所有检测到的错误,不用手动确认-w:以写入模式运行,直接修复文件系统
扩容FAT32文件系统到分区最大容量
修复完成后,用fatresize工具把文件系统扩容到整个分区的大小:- 如果Live USB里没有
fatresize,先安装:sudo apt update && sudo apt install fatresize - 然后执行扩容命令:
sudo fatresize -s max /dev/sdX1
-s max参数就是让文件系统占满整个分区的所有空间。- 如果Live USB里没有
验证结果
最后挂载分区并查看空间使用情况:sudo mount /dev/sdX1 /mnt df -h /mnt这时候你应该能看到EFI分区的总容量已经是525MB,且空间都可以正常使用了。
另外,关于GParted检查失败的问题,大概率是之前文件系统存在小错误或者分区处于挂载状态,做完上面的修复后,再用GParted检查应该就能正常通过了。
备注:内容来源于stack exchange,提问作者rcc

