这个界面就是GRUB界面
输入以下命令来列出分区,确认 Ubuntu 根分区的位置(通常是 ext4 格式):
ls
你应该看到类似 (hd0,gpt1)、(hd0,gpt2) 等分区列表。
依次输入以下命令,查找包含 /boot 或 /vmlinuz 文件的分区。假设根分区为 (hd0,gpt4),请根据实际情况替换:
ls (hd0,gpt4)/
输入以下命令,手动启动 Ubuntu 系统(假设根分区为 /dev/sda4,替换为你的实际根分区):
set root=(hd0,gpt4)
linux /vmlinuz root=/dev/sda4 ro
initrd /initrd.img
boot
进入 Ubuntu 后修复 GRUB
如果手动启动成功并进入了 Ubuntu 系统,按照以下步骤修复 GRUB 配置:
在终端中运行以下命令,确保 GRUB 正确安装到 EFI 分区:
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu
生成新的 GRUB 配置文件,确保所有引导项正确:
sudo update-grub
运行以下命令重启,检查是否能够显示 GRUB 菜单:
sudo reboot
如果无法手动进入Ubuntu界面则手动进入
1.打开终端,输入以下命令列出分区信息,确认 Ubuntu 的根分区(通常为 ext4 格式):
lsblk
2.检查并修复 Ubuntu 分区: 假设 Ubuntu 根分区为 /dev/sda4(请根据实际情况替换),运行以下命令检查分区:
sudo fsck /dev/sda4
如果分区检查成功,可以手动挂载 Ubuntu 根分区,重新安装 GRUB:
1.挂载 Ubuntu 根分区: 假设根分区为 /dev/sda4(根据实际情况替换):
sudo mount /dev/sda4 /mnt
2.挂载 EFI 分区: 假设 EFI 分区为 /dev/sda2,将其挂载到 /mnt/boot/efi:
sudo mkdir -p /mnt/boot/efi
sudo mount /dev/sda2 /mnt/boot/efi
for i in /dev /dev/pts /proc /sys /run; do sudo mount --bind "$i" "/mnt$i"; done
4.进入 chroot 环境: 进入挂载的 Ubuntu 系统环境:
sudo chroot /mnt
5.重新安装 GRUB: 在 chroot 环境中,重新安装 GRUB 到 EFI 分区:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu
update-grub
6.退出 chroot 并重启: 输入以下命令退出 chroot 环境并重启系统(先别着急重启,看后面的)
exit
sudo reboot
如果已经进入了 Ubuntu 系统,但 lsblk 命令仍然没有显示 sda2 的挂载点 /boot/efi,说明 EFI 分区可能没有在系统启动时自动挂载。我们可以通过以下步骤来确保 EFI 分区被正确挂载:
sudo mount /dev/sda2 /boot/efi
验证挂载: 使用 lsblk 或 df -h 命令,确保 sda2 已经成功挂载到 /boot/efi。
2.将 EFI 分区添加到 /etc/fstab
为了确保 EFI 分区在每次启动时自动挂载,可以将它添加到 /etc/fstab 文件中:
获取 sda2 分区的 UUID:
sudo blkid /dev/sda2
这会输出类似于 UUID=“XXXX-XXXX” 的信息,记下这个 UUID。
3.编辑 /etc/fstab 文件
sudo nano /etc/fstab
修改efi的那一行
UUID=XXXX-XXXX /boot/efi vfat defaults 0 1
将 UUID 替换为你在上一步获取到的值。
保存并退出编辑器(按 Ctrl + X,然后按 Y 确认保存,最后按 Enter)。
4.测试 /etc/fstab 配置: 运行以下命令测试 fstab 配置是否正确(这会重新挂载所有分区):
sudo mount -a
正常情况输入完之后没有任何报错。系统会安静地返回到命令提示符。这表示所有分区都成功挂载,没有错误。
5.验证挂载: 再次运行 lsblk 或 df -h,确认 sda2 已成功挂载到 /boot/efi。
如果 sudo mount -a 成功挂载了 EFI 分区,并且你确认 /dev/sda2 已经挂载到 /boot/efi,接下来可以进行以下操作以确保系统的 GRUB 配置正常,保证系统能够正确引导:
sudo update-grub
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu
sudo reboot