grub-mkconfig 未检测到 /boot

grub-mkconfig 未检测到 /boot
lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 596.2G  0 disk 
├─sda1   8:1    0    25G  0 part /mnt/arch
├─sda2   8:2    0     2M  0 part 
├─sda3   8:3    0   4.5G  0 part /mnt/arch/boot
├─sda4   8:4    0     4G  0 part [SWAP]
├─sda5   8:5    0     4G  0 part /mnt/gentoo/boot
├─sda6   8:6    0 129.5G  0 part /mnt/arch/home
├─sda7   8:7    0 296.3G  0 part /
└─sda8   8:8    0 132.9G  0 part /mnt/gentoo    

sudo grub-mkconfig -o /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.18.0-rc7
Found initrd image: /boot/initrd.img-3.18.0-rc7
Found linux image: /boot/vmlinuz-3.13.11.10
Found initrd image: /boot/initrd.img-3.13.11.10
Found linux image: /boot/vmlinuz-3.13.0-24-generic
Found initrd image: /boot/initrd.img-3.13.0-24-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
  No volume groups found
Found Arch on /dev/sda1
Found Gentoo Base System release 2.2 on /dev/sda8
done
sudo os-prober
  No volume groups found
/dev/sda1::Arch:linux
/dev/sda8:Gentoo Base System release 2.2:Gentoo:linux

正如您在 lsblk 中看到的,我在 arch 和 gentoo 中分别在 /dev/sda 3 和 5 上有单独的启动分区。但是,即使安装了所有分区,grub 和 os-prober 也无法检测到 /boot 分区,这导致两个系统都无法启动,原因显而易见。我使用的是 Linux mint 设置,因此我可以访问 debian 和 ubuntu 存储库。我使用 GPT 分区布局,我可以接受丢失 gentoo,我不想重新安装 arch,我有一个 usb 可以用来启动,还有一个 sdcard 可用于文件存储,但绝不能覆盖。我尝试在 livecd 中使用 bootrepair,但当我这样做时,它使 mint 可启动,但 gentoo 和 arch 却无法启动。两者都可以通过 chroot 访问,我今天早上能够通过 SSH 连接到该框。我最近无法通过 SSH 连接,但这不是我的问题。顺便说一句,从源代码编译没有问题,只要让我知道在哪里获取代码和依赖项,这样我就不必浪费更多时间了。我已经做过几次内核编译,有作弊的也有不作弊的,所以如果我需要的话,那里没有问题。

我知道我忽略了一些琐碎的事情,现在回想起来,这些事情似乎很明显。

EDIT:

paste2.org/0MOHzMKN

此外,我已成功启动到 arch linux。我使用 live cd 进入 chroot,pacman -R grub ; pacman -Sy grub ; grub-install (args) 现在有什么问题吗?Gentoo 和 linux mint 没有出现在列表中。

编辑 2:使用 INSIDE arch 中的 os-prober 和 grub-mkconfig 的 1-2 拳,我已恢复 Linux mint 的功能,并将 gentoo 添加到列表中。我现在知道如何使用完整的 grub 菜单,可以启动到 arch 和 mint,但不能启动到 gentoo。

编辑3: https://wiki.archlinux.org/index.php/Chroot

pacman -R grub
pacman -Sy grub
grub-install
os-prober
grub-mkconfig -o /boot/grub/grub.cfg

我使用了 yannubuntu 的 bootrepair 脚本的帮助。它完成了识别 arch 的 /boot 分区所需的所有配置,但没有识别 gentoo。问题在技术上得到了解决。我已经达到了一个舒适的状态。然而,这个问题并没有完全得到解答。对于所有阅读本文的人,这将在 72 小时后被接受为答案。如果有人想要 15 个免费堆栈代表。”“

答案1

paste2.org/0MOHzMKN

此外,我已成功启动 arch linux。我使用 live cd 进入 chroot 并 pacman -R grub ; pacman -Sy grub ; grub-install (args) 现在有问题吗?Gentoo 和 linux mint 没有出现在列表中。

编辑 2:使用 INSIDE arch 中的 os-prober 和 grub-mkconfig 的 1-2 拳,我已恢复 Linux mint 的功能,并将 gentoo 添加到列表中。我现在知道如何使用完整的 grub 菜单,可以启动到 arch 和 mint,但不能启动到 gentoo。

编辑3:https://wiki.archlinux.org/index.php/Chroot

pacman -R grub pacman -Sy grub grub-install 操作系统探测器 grub-mkconfig -o /boot/grub/grub.cfg

我使用了 yannubuntu 的 bootrepair 脚本的帮助。它完成了识别 arch 的 /boot 分区所需的所有配置,但没有识别 gentoo 的。从技术上讲,问题已经解决。我已经达到了一个舒适的状态。

相关内容