首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >卸载安装内核不匹配

卸载安装内核不匹配
EN

Unix & Linux用户
提问于 2020-10-14 05:23:32
回答 1查看 739关注 0票数 0

我尝试使用Debian安装一个新的Debian 10系统:

代码语言:javascript
复制
mount /dev/sda5 /mnt/chroot
debootstrap --variant=minbase buster /mnt/chroot ftp.au.debian.org

到目前为止,这个鞋带看起来不错。现在切换到色度

代码语言:javascript
复制
mount --bind /dev /mnt/chroot/dev
mount --bind /proc /mnt/chroot/dev
mount --bind /sys /mnt/chroot/dev 

chroot /mnt/chroot/
apt-get update
apt-get --no-install-recommends install busybox linux-image-amd64 systemd-sysv pciutils usbutils
passwd

这也没有错误地完成。安装的内核是/vmlinuz -> boot/vmlinuz-4.19.0-11-amd64,内核模块在/lib/modules/4.19.0-11-amd64中。

现在,通过GRUB重新启动新安装,使用

代码语言:javascript
复制
insmod all_video; search --label test; linux /vmlinuz root=LABEL=test; initrd /initrd.img

我得到了

代码语言:javascript
复制
uname -r
4.9.0-13-amd64

它不是由kernel安装的内核(4.19.0-11)!相反,当我运行debootstrap时,它是来自父系统的4.9.0-13内核。重要的是,新安装没有任何匹配的4.9.0-13内核模块,因此新系统缺少了一组设备驱动程序。

如果我用

代码语言:javascript
复制
insmod all_video; set root=(hd1,gpt5); linux /vmlinuz root=/dev/sda5; initrd /initrd.img; boot

相反,我使用新内核启动新系统。

有什么想法,这可能是从哪里来的,以及如何解决?

非常感谢。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-10-14 08:52:22

你使用的GRUB命令,

代码语言:javascript
复制
insmod all_video; search --label test; linux /vmlinuz root=LABEL=test; initrd /initrd.img

从默认的GRUB根获取内核(/vmlinuz)和initramfs (/initrd.img),这是父系统的。

这就是为什么指定

代码语言:javascript
复制
insmod all_video; set root=(hd1,gpt5); linux /vmlinuz root=/dev/sda5; initrd /initrd.img

相反,这不是标签问题,而是设置GRUB根来使用新系统的分区,然后从那里加载内核和initramfs。

要解决这个问题,假设您希望/dev/sda5中的安装成为新的默认设置,最好的解决方案是启动它(使用上面的第二个GRUB命令行),然后从引导系统安装GRUB,运行Debian 10。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/614438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档