我该如何安装旧内核?

我正在运行一个Ubuntu 15.10的实例。我需要安装Ubuntu 14.10使用的最新内核,我认为是3.16.0-28-generic。输入sudo apt-get install linux-image-3.16.0-28-generic会返回一个错误消息,说明它不可用,可能已经过时了或其他什么原因。我想如果我在sources.list中添加一些内容,就可以获取到它。但是我应该添加什么呢?
还有,在任何人提到这可能会产生的麻烦之前,对我来说无关紧要。
4个回答

在Ubuntu中,使用浏览器导航至http://kernel.ubuntu.com/~kernel-ppa/mainline/。滚动到列表底部,选择您的内核版本。下载以下文件(xxxxxx将被替换为表示内核版本的数字。假设您使用的是64位操作系统):

linux-headers-xxxxxx-generic-xxxxxx_amd64.deb

linux-headers-xxxxxx_all.deb

linux-image-xxxxxx-generic-xxxxxx_amd64.deb

将所有这些文件移动到一个文件夹中。 进入该文件夹。 通过运行安装所有这些软件包。
sudo dpkg -i *.deb

从grub菜单中选择新的内核。
更新:由于这是一个Ubuntu实例,您可以手动获取链接并使用wget下载软件包。

1从grub菜单中选择新内核是什么意思? - Raj Pawan Gumdal
我写这个答案是针对Ubuntu桌面的,其中您将为每个内核获取每个条目。对于服务器实例,您只需重新启动服务器,它将自动引导到最新的内核。或者您可以编辑配置以选择特定的内核。 - Sijin T V
@Sijin Krishnan 在重新启动之前,我们需要手动编辑grub菜单以选择新的内核吗? - WebComer
引导程序将默认使用最新版本的内核进行启动,无需操作即可。只有在您想要使用其他较低版本的内核进行启动时,才需要修改配置文件。 - Sijin T V
你还需要下载linux-modules-version_amd64.deb,并且安装的顺序要求先安装模块,再安装内核镜像。Tony George管理一个私有ppa,发布了一个Ubuntu内核更新工具(ukuu),看起来很有前途,但我今天在18.04.2上无法安装它。似乎已经发布了其他Ubuntu版本的版本,我可以尝试在launchpad上修复18.04.2的打包问题。 - Jaglan Beta

如果你知道你想要的确切版本,例如5.4.0-26-generic,只需运行以下命令。
sudo apt install linux-image-5.4.0-26-generic

依赖项将会自动安装。然后在下一次启动时,在grub菜单中选择它。

对我来说,这个安装程序(在我的情况下)也安装了linux-modules-5.19.0-32-generic软件包,但是我感觉有些东西丢失了(因为通常在“卸载”内核时我会删除3个软件包)。系统确实启动了,但是Xorg/gnome没有运行,只有tty。我还需要运行sudo apt install linux-modules-extra--yourversion-generic才能让gnome正常工作。 - nuala

如果您想要官方的Ubuntu股票内核(而不是主线内核)来自一个不受支持的版本,请参见下文。
有关主线内核和股票内核之间的区别,请参阅https://askubuntu.com/a/91374/555474
我不得不安装一个更旧的内核(2.6.32.21-generic),以便股票模块能够与自定义内核配合使用。没有任何硬件工作,所以我不得不手动下载。
以下是如何从http://old-releases.ubuntu.com/ubuntu/手动获取已停用的内核。
基本上,您将需要适用于您的处理器的内核头文件,通用(全部)头文件以及适用于您的处理器的内核映像。
在下面的步骤中,将x.x.xx-xx替换为您的内核版本,将amd64替换为您的处理器类型。请注意,这适用于通用内核,不使用额外的功能,如PAE。
转到http://old-releases.ubuntu.com/ubuntu/pool/main/l/linux/(我相信这里列出了大部分旧的内核包)
在页面上按CTRL+F查找headers-x.x.xx-xx-generic并下载以下文件:
- linux-headers-x.x.xx-xx-generic_x.x.xx-xx.yy_amd64.deb - linux-headers-x.x.xx-xx-generic_x.x.xx-xx.yy_all.deb
在页面上按CTRL+F查找image-x.x.xx-xx-generic并下载以下文件:
- linux-image-2.6.32-21-generic_2.6.32-21.32_amd64.deb
将所有这些软件包放入一个单独的文件夹中,并从该文件夹中(使用cd命令进入)运行以下命令: sudo dpkg -i *.deb

最简单的方法是安装Ubuntu Mainline Kernel Installer。 在终端中输入以下命令:
sudo add-apt-repository ppa:cappelikan/ppa
sudo apt update
sudo apt install mainline

看截图:
在这里输入图片描述
它是基于图形用户界面的,非常容易使用,可以添加和删除主线(因此得名)内核。

如果我在命令行中输入mainline,没有图形界面出现。 - david.perez
@david.perez 试着在活动栏中搜索,你会找到它的。 - Raj
@david.perez,你安装了这个程序吗?然后你可以通过应用程序启动器打开它。 - HomerSimpson
1这是一个没有图形界面的控制台应用程序,我只能选择最近的内核。它是可用的。 - david.perez