几周前,我不小心更新了我的内核,突然间我的屏幕上出现了这些奇怪的像素化线条。因此,我决定尝试使用 linux-lts 内核。但是,当我尝试 chroot 到我的根目录运行时,
grub-mkconfig /dev/sda
我发现
/usr/bin/grub-probe: error: cannot find a device for / (is /dev mounted?)
我正在运行 32 位 Void。
答案1
在 chroot 进入根分区(例如“chroot /mnt/sysimage/”)之前,您需要先挂载一些系统目录。
mount --bind /proc /mnt/sysimage/proc
mount --bind /dev /mnt/sysimage/dev
mount --bind /sys /mnt/sysimage/sys
mount --bind /run /mnt/sysimage/run
然后chroot /mnt/sysimage
,重新生成grub.cfg和initramfs。
答案2
旧内核可以在新的 Void 条目后面的 grub 菜单中找到。如果在测试新内核之前使用 xbps-remove 删除旧内核,则可以使用 chroot 从实时无效 USB 驱动器或其他救援磁盘引导安装。 chroot 的说明可以在 Void wiki 中找到:
经验教训:默认情况下,vkpurge 命令将保留较旧的内核,从而允许从失败的内核安装中进行恢复。