首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ubuntu内核更新会自动发生吗?

Ubuntu内核更新会自动发生吗?
EN

Ask Ubuntu用户
提问于 2016-09-01 20:56:34
回答 3查看 14.2K关注 0票数 11

我是一个新的Linux用户,所以我有一个关于内核更新的问题。它们会自动发生吗?在一些站点上,我看到内核更新是自动的。但是,关于新的4.6和4.7内核,我看到您需要手动更新它们。

EN

回答 3

Ask Ubuntu用户

发布于 2016-09-01 21:08:50

新的Ubuntu内核确实是作为正常更新和升级过程的一部分来安装的。例如,这个星期,当我运行我的每日4.4.0-34-generic时,我的16.04内核版本从4.4.0-36-generic变成了sudo apt update && sudo apt full-upgrade

如果您不经常运行这些命令,当新内核这样的重要更新可用时,弹出就会提示您更新软件。您必须对这些更新进行身份验证,否则不会发生这些更新,@AndroidDev指出。

默认情况下,系统将始终引导最新的内核。在内核更新之后,运行sudo apt autoremove删除旧内核是个好主意(它留下一个额外的备用老内核)

如果您出于某种特殊原因想安装一个较新的主线内核(4.6*4.7*),那么您必须手动安装,但这并不是一个好主意,因为Ubuntu内核是经过修补和配置的,可以很好地与Ubuntu一起工作。

票数 8
EN

Ask Ubuntu用户

发布于 2016-09-01 21:53:33

您可以通过启动终端并输入:

代码语言:javascript
运行
复制
uname -a

您将看到类似于:

代码语言:javascript
运行
复制
Linux z97 4.7.2-040702-generic #201608201334 SMP Sat Aug 20 17:37:03 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

在本例中,内核版本是: 4.7.2

  • 第一个数字是内核版本(4)。
  • 第二个数字是主要修订(7)。
  • 第三个数字是小修改(2)。

要了解有关升级选项的更多信息,请运行:

代码语言:javascript
运行
复制
man apt-get (<-- old/deprecated, kind of)

代码语言:javascript
运行
复制
man apt

如前所述,如果您运行:

代码语言:javascript
运行
复制
sudo apt update && sudo apt full-upgrade

您将得到少量的修改内核更新,与更新的内核不兼容的包将被删除。这就是为什么您不会自动获得自动的主要修订更新,因为您已经安装(使用)的某些软件包很可能不兼容,因此您的系统可能会中断。

如果您更喜欢冒险,并且想要尝试一个非常好的内核,您可以在这里找到为Ubuntu预先构建的Linux内核:

http://kernel.ubuntu.com/~kernel-ppa/mainline/

例如,如果您想安装最新的4.7.2内核:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.2/

在那一页上你会看到:

代码语言:javascript
运行
复制
Build for amd64 succeeded (see BUILD.log.amd64):
  linux-headers-4.7.2-040702_4.7.2-040702.201608201334_all.deb
  linux-headers-4.7.2-040702-generic_4.7.2-040702.201608201334_amd64.deb
  linux-headers-4.7.2-040702-lowlatency_4.7.2-040702.201608201334_amd64.deb
  linux-image-4.7.2-040702-generic_4.7.2-040702.201608201334_amd64.deb
  linux-image-4.7.2-040702-lowlatency_4.7.2-040702.201608201334_amd64.deb

我通常忽略“低延迟”的东西(我仍然不完全确定它们是什么)。如果您右键单击该页面中的链接以获取链接位置,则可以下载"headers“、"headers”和"image generic“deb文件:

代码语言:javascript
运行
复制
mkdir /tmp/kernels && cd /tmp/kernels

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.2/linux-headers-4.7.2-040702_4.7.2-040702.201608201334_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.2/linux-headers-4.7.2-040702-generic_4.7.2-040702.201608201334_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.2/linux-image-4.7.2-040702-generic_4.7.2-040702.201608201334_amd64.deb

然后用以下方式安装:

代码语言:javascript
运行
复制
sudo dpkg -i *.deb

如果您的系统出现故障,并且希望卸载您刚刚安装的内核,请进入终端提示符(如果桌面没有启动,则必须使用ALT+CTRL+F1 ):

代码语言:javascript
运行
复制
sudo apt-get remove 'linux-headers-4.7.2*' 'linux-image-4.7.2*'

目前我正在运行4.7.2,到目前为止还没有出现任何严重的问题(我有几次在启动时看到了崩溃报告,但是系统仍然启动得很好)。

票数 3
EN

Ask Ubuntu用户

发布于 2016-09-01 21:31:32

另一个答案是,新内核会自动安装,但如果发现新内核上有问题,则可以使用旧版本启动计算机。为此,输入GRUB菜单。当您的计算机启动并显示“启动选项”(通常在启动期间显示计算机品牌的位置)时,您会持有shift。它应该会带您到grub菜单,在那里您可以进入高级选项,并选择一个以前的(非恢复模式)内核来引导。纯粹是可选的,但在您可能更喜欢旧内核的情况下,它是可用的(出于任何给定的原因,例如您的硬件更好的系统稳定性)。

我提到这一点,因为在自动更新之后,我不得不使用以前的内核,新内核在我的系统中造成了一些不稳定。希望这些信息在某一时刻对你有用。

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

https://askubuntu.com/questions/819766

复制
相关文章

相似问题

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