Linux内核是Ubuntu操作系统的核心。 Linux内核是用于计算机操作系统的单片Unix类内核,由Linux Torvalds创建,由所有Linux发行版(包括Ubuntu,CentOS,OpenSuSE,ReadHat和Debian)使用。
在本教程中,我将向您展示如何将Ubuntu内核升级为使用Ubuntu内核团队提供的最新主线内核构建。 我将使用Ubuntu 16.04.2 Xenial Xerus与默认内核版本4.4作为基础升级到4.11.2内核版本。
什么是“主线内核构建”?
Mainline Kernel Build是一个从kernel.org开发的一个vanilla内核,作为deb包打包。 Canonical Kernel Team构建和定制Ubuntu的内核源代码,并将其构建为.deb包,以便于apt包管理器进行安装。 只有在需要最新的内核功能的情况下才能使用Mainline内核,因为与Ubuntu一起运行的生产内核可能不太稳定。
我们将要做什么:
- 更新存储库并升级所有软件包。
- 检查内核活动。
- 安装新内核版本。
- 删除旧内核。
第1步 - 更新Ubuntu存储库并升级所有软件包
在升级内核之前,我们要做的第一件事是更新Ubuntu存储库并将所有软件包升级到最新版本。
通过SSH登录连接到您的ubuntu服务器。 您必须是root用户才能执行下一步。 如果您的服务器上禁用root登录,请以正常用户身份登录,并运行'sudo -s成为root用户。
ssh root@ubuntu16.04.2
更新系统的所有存储库。
sudo apt update
然后使用以下命令升级安装的所有软件包。
sudo apt upgrade -y
最后,重新启动服务器以确保应用可能安装的内核更新。
sudo reboot
现在再次检查可升级包,并使用以下命令。
sudo apt list --upgradeable
确保您没有更新更新。
第2步 - 检查活动内核版本
在这一步中,我们将检查系统的活动内核。 我们需要知道在系统上使用的系统架构和内核版本。
使用uname命令检查系统使用的活动内核。
uname -msr
您将获得如下内核版本。
Linux 4.4.0-78-generic x86_64
这意味着我们正在使用具有x86_64 / 64位系统的Generic Linux内核版本4.4。
通用内核是通用内核。 如果您想使用您的盒子进行编辑,编码视频和音频等任务,那么建议您使用其中的“低级”内核。
第3步 - 安装新的内核版本
现在我们知道我们目前正在使用内核4.4。 在这一步中,我们将使用内核升级到最新的主线内核版本4.11.2。 所有主线内核构建可以从本站下载 - http://kernel.ubuntu.com/~kernel-ppa/mainline/ 。
为主线内核版本创建一个新的目录。
sudo mkdir -p ~/4.11.2
cd ~/4.11.2
下载通用内核版本软件包(因为我们使用通用版本)使用wget命令。
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.2/linux-headers-4.11.2-041102_4.11.2-041102.201705201036_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.2/linux-headers-4.11.2-041102-generic_4.11.2-041102.201705201036_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.2/linux-image-4.11.2-041102-generic_4.11.2-041102.201705201036_amd64.deb
现在使用下面的dpkg命令安装软件包。
dpkg -i *.deb
内核程序包安装完成后,更新grub并重新启动系统。
sudo update-grub
sudo reboot
服务器重启后,再次检查内核版本。
uname -msr
您将在系统上获得一个新内核:4.11.2。
Linux 4.11.2-041102-generic x86_64
第4步 - 删除旧的内核
在这个阶段,我们的服务器的内核版本更新到4.11.2。 在这一步中,我们将删除旧的内核,只需离开我们现在使用的新版本。
为此,我们将使用一个名为' byobu '的命令行实用程序。 安全地从系统中删除和清除旧内核是一个很好的工具,永远不会删除当前正在运行的内核。
用以下apt命令安装byobu。
sudo apt install byobu
完成它,检查系统上安装的内核版本。
dpkg -l | grep linux-image
我们将得到如下结果。
在服务器上,我已经安装了三个版本的Ubuntu内核:4.4.62 - 4.4.78 - 4.11.2。 而现在,系统正在使用最新的内核4.11.2。 我们将删除旧的内核4.4并离开最新的4.11.2。
运行下面的命令删除旧内核。
sudo purge-old-kernels
如果你看到以下结果:
No kernels are eligible for removal
那么你只有安装了2个内核版本。 默认情况下,byobu将在系统上至少保留2个内核版本,以确保在第一个失败时具有备用内核。
如果你想保留唯一一个(最新的)内核,那么你可以使用下面的命令除去一个内核以外的所有内核。
purge-old-kernels --keep 1 -q
现在更新grub,您将获得系统上安装的唯一一个内核版本。
sudo update-grub
Ubuntu内核现在从主线内核版本升级到最新版本4.11.2,旧的内核版本已从系统中删除,以释放磁盘空间。