为什么升级到较新的版本时内核版本没有更新?

为什么升级到较新的版本时内核版本没有更新?

我认为我的 Debian 8.0 (Jessie) 安装已经过时了,但是包更新程序总是说所有包都是最新的

的结果:

sudo apt-get update
sudo apt-get -u upgrade

0 已升级,0 已新安装,0 已删除,0 未更新

sudo apt-get -u dist-upgrade

说的一样。

运行uname --all显示:

Linux DebianWorkstation 3.16.0-4-amd64
#1 SMP Debian 3.16.7-ckt7-1 (2015-03-01) x86_64 GNU/Linux

官方消息来源假设当前版本是 2015-04-25,当前 Debian-Kernel 应该是 3.16.7-ctk9。我究竟做错了什么?

编辑- 来源.列表:

# deb cdrom:[Debian GNU/Linux stable _Jessie_ - Official Snapshot amd64 DVD Binary-1 20141222-06:43]/ jessie contrib main

deb http://ftp.de.debian.org/debian/ jessie main contrib non-free
deb-src http://ftp.de.debian.org/debian/ jessie main contrib non-free

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

# jessie-updates, previously known as 'volatile'
deb http://ftp.de.debian.org/debian/ jessie-updates main contrib non-free
deb-src http://ftp.de.debian.org/debian/ jessie-updates main contrib non-free

# jessie-backports, previously on backports.debian.org
deb http://ftp.de.debian.org/debian/ jessie-backports main contrib non-free
deb-src http://ftp.de.debian.org/debian/ jessie-backports main contrib non-free

# jessie non-free http
deb http://http.debian.net/debian/ jessie main contrib non-free

仍然没有可用的更新:/

答案1

输出中的“(2015-03-01)”uname --all可能是内核编译的日期。

Debian 不会在升级时自动删除现有的内核。每个版本都有自己的默认二进制内核,它们都对应于单个内核版本,但当然是针对不同的体系结构构建的。对于给定的版本使用默认内核通常是一个好主意。

升级到新版本时,您可以手动安装新的默认内核,但获取此内核的便捷方法是安装 linux 内核元包。该包的名称采用以下形式:linux-image-<arch>where<arch>是您的架构。因此,对于 amd64 而言,它是linux-image-amd64.

该元包被设计为始终依赖于当前的默认内核,无论元包所属的发行版/版本如何。因此,它将引入当前默认内核作为依赖项。

但是,您当前的内核将保持安装状态,当然,除非您自己将其删除。您将需要重新启动才能切换到较新的内核。

此外,您还应该确保如果您安装了不稳定或实验性源,则文件中有合适的条目/etc/apt/preferences,否则您的软件包将升级到不稳定/实验版本。但这与你的问题没有直接关系。

答案2

只是为了扩展 @Faheem Mitha 的答案,您可以添加 /etc/apt/preferences如下内容:

Package: *
Pin: release a=stable
Pin-Priority: 700

对我来说,这解决了类似的问题。更多信息:http://jaqque.sbih.org/kplug/apt-pinning.html

相关内容