是否可以?我只想要一些选定的软件包,例如内核(用于硬件支持),并将其他所有内容保留在 jessie 上。如何做呢?谢谢。
答案1
您可以下载巴斯特linux-image
来自 Debian 存储库的软件包(它包含内核、内核模块和安装脚本post-inst
)。我刚刚测试了这个场景,但是对于 Stretch(内核是 4.9.0-5,现在是 4.15.0-2)并且 VM 已成功加载。
UPD
我还忘记补充一点,您可以从以下位置安装新的内核包向后移植 Jessie 存储库直接或添加到/etc/apt/sources.list
下一个字符串并像平常一样通过以下方式下载新的内核包apt-get
:
# Backports repository
deb http://deb.debian.org/debian jessie-backports main contrib non-free
deb http://deb.debian.org/debian jessie-backports-sloppy main contrib non-free
如果反向移植的软件包对您来说足够了,那么这是最好的方法,然后是 Buster 软件包。
答案2
Debian 以其灵活的软件包组合而闻名。在 jessie 上运行巴斯特的内核是没有问题的。
以下步骤可确保您仅从 buster 获取必要的软件包,并保持其他所有内容不变。
1.添加破坏源
将buster源添加到您的apt源中,以便apt可以从更高版本中获取包。
打开/etc/apt/sources.list.d/buster.list
并添加相应的源、您选择的组件和镜像。
# Buster repository
deb http://deb.debian.org/debian buster main
2.添加apt偏好设置
添加 apt 首选项文件以确保在安装期间只选择必要的包。
打开/etc/apt/preferences.d/buster.pref
并添加首选项。
Package: *
Pin: release n=buster
Pin-Priority: 50
Package: linux-image-* grub* firmware-*
Pin: release n=stretch
Pin-Priority: 500
优先级为 50 将确保其包不会被自动拉取,除非需要解决依赖关系。
注意:grub 不必升级,但是 jessie 附带了 2.02~beta2,而 buster 附带了 2.02 GA,所以为什么不呢?
3. 升级内核和grub
apt-get install linux-image-amd64 grub-pc
reboot
重新启动后,您应该会发现新内核正在运行。
# uname -a
Linux pony 4.18.0-2-amd64 #1 SMP Debian 4.18.10-2 (2018-11-02) x86_64 GNU/Linux
上述方法已经在stretch-kernel-over-jessie和buster-kernel-over-jessie上得到了验证。