在 arch 安装过程中运行 grub-install 时出现错误“设备上没有剩余空间”。我该如何解决这个问题?

在 arch 安装过程中运行 grub-install 时出现错误“设备上没有剩余空间”。我该如何解决这个问题?

我正在双启动 Windows 11 和 Arch Linux(我现在正在安装 Arch)。

我已为 /mnt 创建了一个分区(我在同一分区中创建了一个交换文件,而不是创建单独的分区),并将 EFI 分区挂载在 /mnt/boot 上,就像安装指南中说的那样。一旦我 chroot 到 /mnt 并到达需要安装 grub 的位置,我就会收到错误消息:

grub-install: error: cannot copy '/usr/share/locale/en@quot/LC\_MESSAGES/grub.mo' to '/boot/grub/locale/[email protected]': No space left on device.

我尝试用谷歌搜索并发现了这个问题https://bbs.archlinux.org/viewtopic.php?id=234954,并按照第一个答案,为了腾出空间,我UEFI HTTPs boot从给出的列表中删除了efibootmgr -v,但问题仍然存在,并出现相同的错误消息......

“efibootmgr -v” 的列表现在只有这些:Windows 启动管理器、我用作安装介质的 USB 记忆棒,以及这个UEFI RST KBG50ZNS1T02 NVMe KIOXIA 1024GB Z2FPC3S3Q6DK... 我可以像删除“UEFI HTTPs Boot”选项一样删除最后一个选项吗?还是会弄得一团糟?这有帮助吗?它显示 1024GB,而我的硬盘是 1TB,所以我想这就是我的硬盘(这有意义吗?有必要吗?)

我不知道该怎么办...有什么帮助吗?

这张照片是现在的样子(抱歉质量较差,我没能做得更好):https://imgur.com/a/33Mkc8k

我检查了 /etc/fstab 文件,启动分区中有errors=remount-ro部分内容我读到可能有问题,但我不知道是否必须直接更改它或做其他事情。我甚至不知道是否可以重新启动电脑并稍后尝试处理它。

我也阅读了一些有关 Bootx64.efi 文件的信息,但我不知道该用它做什么。

编辑:我重启了电脑,然后回到 Windows,ESP 确实已满(200MB 中 195MB,根据 wiki 的说法,这已经很小了),但即使使用 AOMEI 等第三方软件,我也无法将未分配的空间合并到 ESP,这很糟糕(为什么我不能这样做?)。我还发现 HTTPs Boot 条目根本没有被删除,它仍然存在,所以也许实际删除它会给我足够的空间用于 grub...我该怎么办?编辑 2:这是 Windows 上磁盘管理的屏幕截图(我删除了 linux 分区,所以一旦我弄清楚了,我就可以从头开始):https://imgur.com/a/MNVhxku

答案1

您需要将 ESP 的大小调整为 500 MB 以上。您在 后面确实有一个很大的未分配空间C:,但C:它位于 ESP 和 ESP 之间。您需要C:向下移动至少 500 MB 以在 ESP 后面创建未分配空间。然后您可以调整 ESP 的大小以包含这个新空间。

由于 Windows 没有移动分区的工具,您需要使用第三方分区编辑器来移动和调整分区大小。

警告:分区编辑很危险,因为任何错误都可能毁掉你的磁盘。确保你对数据进行了良好的备份,我还建议对整个磁盘进行映像备份。

可以移动和调整分区大小的第三方产品示例是 AOMEI分区助手标准版免费软件 或其 备择方案

我也建议 AOMEI Backupper 免费版 及其 基于 Windows PE 或 Linux 创建可启动光盘,用于获取磁盘映像并能够启动到 AOMEI USB 磁盘并在发生严重问题时返回上一个磁盘的映像,以便能够恢复磁盘。

这一切都是技术性很强的操作,需要一些有关分区的知识。

相关内容