我最近买了一台新电脑,并将我的旧 SSD 移植到它上面。我使用双启动,并首先设置 Windows 端。这会清除以前的 Windows,但保留其启动文件(包括 efi),而我的包含 Ubuntu 的分区有一个空的 efi 文件。
不幸的是,系统一直以只读模式打开,而我的 fstab 中含有错误的目录。我不知道如何在根目录中找到新目录(而不是使用我从中获取的十六进制地址lsblk -f | grep -v loop
来更新 /etc/fstab)。
如果有人能帮助我解决这个问题,我很乐意听取您的建议。
答案1
Boot-Repair 是一个基于 GUI 的工具,用于修复 grub 或更新 grub 菜单。它不会修复 Windows。它可能提供默认修复(通常有效,但具有高级模式,用户可以在其中进行更多设置)。
其最佳功能之一是系统启动配置报告,我们可以使用它来查看问题是什么或您的配置是什么。
请复制并粘贴 BootInfo 摘要报告的 pastebin 链接(不要发布报告),在审核之前不要运行自动修复。使用经常更新的 ppa 版本,而不是使用稍旧的 ISO 和 USB 安装程序或任何可运行的安装。
https://help.ubuntu.com/community/Boot-Repair& https://sourceforge.net/p/boot-repair/home/Home/
如果您确实运行高级模式修复来安装 grub,请确保使用正确的 UUID 更新 fstab。
您可以看到一些详细信息。此信息也在 Boot-Repair 报告中。
lsblk -e 7 -o name,mountpoint,label,size,fstype,uuid,partuuid
sudoedit /etc/fstab
sudo efibootmgr -v
UEFI 启动使用 GUID/partuuid 来了解在哪个 ESP 中查找启动文件。然后在 ESP 中有一个 3 行 grub.cfg,使用 UUID 在您的 /boot 中查找完整的 grub.cfg。
每个驱动器上都可以有一个 ESP,但 Ubuntu 22.04 及之前版本的 Ubiquity 安装程序仅默认在第一个驱动器上有 ESP(无论 UEFI 将其定义为第一个驱动器)。