LinuxGod

LinuxGod.net
Linux大神网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

如需最新mainline内核版本下载并安装新版本删除旧内核

2023年1月2日 343点热度

请关注本头条号,每天坚持更新原创干货技术文章。

如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习

前言

本文主要如何安全地升级Ubuntu内核linux系统内核,以18.04 Server版为例纂写本教程。

我们先来了解一下什么是主线内核构建(Mainline Kernel Build)

Mainline Kernel Build是一个从开发的一个vanilla内核linux命令详解词典,作为deb包打包。 Canonical Kernel Team构建和定制Ubuntu的内核源代码,并将其构建为.deb包,以便于apt包管理器进行安装。 只有在需要最新的内核功能的情况下才能使用Mainline内核,因为与Ubuntu一起运行的生产内核可能不太稳定。

我们可以从 Canonical Kernel Team Mainline Kernel Build官方网站查找需要的内核:

~kernel-ppa/mainline/

确认升级目标版本

确认升级目标版本

可以看出,目前Ubuntu最新的mainline内核版本为4.20.5和v5.0-rc2。确定升级内核的步聚

把当前系统所有软件包和内核升级到最新检查当前内核版本下载并安装新内核版本删除旧内核

把当前系统所有软件包和内核升级到最新

zcwyou@ubuntu1804:~$ sudo apt update

已下载 61.7 MB,耗时 1分 13秒 (842 kB/s)

正在读取软件包列表… 完成

正在分析软件包的依赖关系树

正在读取状态信息… 完成

有 29 个软件包可以升级。请执行 ‘apt list --upgradable’ 来查看它们。

查询系统更新包

查询系统更新包

linux系统内核版本_linux系统内核_高桥浩和linux内核精髓:精通linux内核必会的75个绝

可以看出,有29个软件包需要升级。

查看哪些软件包需要升级,这个步聚非必要:

zcwyou@ubuntu1804:~$ sudo apt list --upgradable

开始升级系统所有的软件包,类似于Windows系统更新。

zcwyou@ubuntu1804:~$ sudo apt upgrade -y

[sudo] password for zcwyou:

Reading package lists… Done

Building dependency tree

Reading state information… Done

Calculating upgrade… Done

0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

1 not fully installed or removed.

After this operation, 0 B of additional disk space will be used.

Setting up docker-ce (5:18.09.1~3-0~ubuntu-bionic) …

update-alternatives: warning: forcing reinstallation of alternative /usr/bin/dockerd-ce because link group dockerd is broken

高桥浩和linux内核精髓:精通linux内核必会的75个绝_linux系统内核版本_linux系统内核

系统更新

正在显示系统更新过程

重启服务器,既然已经决定要升级内核了,服务器应该可以重启吧?

zcwyou@ubuntu1804:~$ sudo reboot

重新登录系统,再次检查可升级包,并使用以下命令。

zcwyou@ubuntu1804:~$ sudo apt list --upgradeable

如果执行命令的结果为:Listing... Donepuppy linux,就说明系统组件已经是最新的,没有需要更新的软件。

检查当前内核版本

zcwyou@ubuntu1804:~$ uname -r

4.15.0-43-generic

可以看出当前的内核版本为4.15.0-43-generic

下载并安装最新的内核

正如上文所说的,主线内核的官方地址为~kernel-ppa/mainline/

我们的目标是安装最新稳定的版本v4.20.5,它对应的下载页面是:

~kernel-ppa/mainline/v4.20.5/

下载最新内核文件

下载最新内核文件

选择我们服务器的架构,我们的服务器一般使用AMD64架构吧?注意,由于64位架构是AMD先推出的,所以Intel 64位处理器也被称为AMD64架构。所以这里并不仅仅是指因特尔的64位CPU。

generic表示通用版内核。

lowlatency表示低延迟内核。

我们一般选择通用版内核

先安装下载工具wget

zcwyou@ubuntu1804:~$ sudo apt install -y wget

linux系统内核_高桥浩和linux内核精髓:精通linux内核必会的75个绝_linux系统内核版本

创建专用目录

zcwyou@ubuntu1804:~$ cd ~ && mkdir newkernel && cd newkernel

我们应该使用wget分别下载4个generic版本的内核文件:

wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20.5/linux-headers-4.20.5-042005_4.20.5-042005.201901260434_all.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20.5/linux-headers-4.20.5-042005-generic_4.20.5-042005.201901260434_amd64.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20.5/linux-image-unsigned-4.20.5-042005-generic_4.20.5-042005.201901260434_amd64.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20.5/linux-modules-4.20.5-042005-generic_4.20.5-042005.201901260434_amd64.deb

使用dpkg安装最新内核:

zcwyou@ubuntu1804:~$ sudo dpkg -i *.deb

看到如下即表示安装成功:

Replacing config file /run/grub/menu.lst with new version

Updating /boot/grub/menu.lst … done

/etc/kernel/postinst.d/zz-update-grub:

Generating grub configuration file …

Found linux image: /boot/vmlinuz-4.20.5-042005-generic

Found initrd image: /boot/initrd.img-4.20.5-042005-generic

Found linux image: /boot/vmlinuz-4.15.0-43-generic

Found initrd image: /boot/initrd.img-4.15.0-43-generic

Found linux image: /boot/vmlinuz-4.15.0-29-generic

linux系统内核版本_高桥浩和linux内核精髓:精通linux内核必会的75个绝_linux系统内核

Found initrd image: /boot/initrd.img-4.15.0-29-generic

done

安装最新内核:

安装最新内核

更新grub,其实上面一步安装时也会自己更新grub配置。

zcwyou@ubuntu1804:~$ sudo update-grub

重启服务器

zcwyou@ubuntu1804:~$ sudo reboot

进入系统后,重新确认版本。

zcwyou@ubuntu1804:~$ uname -r

4.20.5-042005-generic

已经看到内核已经升级为最新版本4.20.5-042005-generic

验证刚刚安装的内核

linux系统内核版本_高桥浩和linux内核精髓:精通linux内核必会的75个绝_linux系统内核

验证刚刚安装的内核

删除旧内核

我们需要借助byobu这个工具删除旧内核:

oucanrong@zcwyou:~$ sudo apt install byobu -y

安装byobu用于删除旧内核

linux系统内核_linux系统内核版本_高桥浩和linux内核精髓:精通linux内核必会的75个绝

安装byobu用于删除旧内核

查看系统已经安装的内核:

oucanrong@zcwyou:~$ dpkg -l | grep linux-image

查询当前系统的内核包

查询当前系统的内核包

使用byobu删除旧内核,

oucanrong@zcwyou:~$ sudo purge-old-kernels

默认情况下,byobu将在系统上至少保留2个内核版本,以确保在第一个失败时具有备用内核。

使用byobu删除旧内核

linux系统内核版本_高桥浩和linux内核精髓:精通linux内核必会的75个绝_linux系统内核

使用byobu删除旧内核

如果你想保留唯一一个(最新的)内核,那么你可以使用下面的命令除去一个内核以外的所有内核。执行以下命令:

oucanrong@zcwyou:~$ purge-old-kernels --keep 1 -q

正常情况,purge-old-kernels命令会自动更新grub,为了保证安全linux系统内核,我们可以考虑再更新一次。

oucanrong@zcwyou:~$ sudo update-grub

Ubuntu内核现在从主线内核版本升级到最新版本4.20.5-042005-generic,旧的内核版本已从系统中删除,以释放磁盘空间。

总结:内核是Linux系统中最基础最重要的文件,即使你是一个Linux老手,也不建议手工升级和删除,强烈建议使用工具进行操作,避免发生严重后果。

本文已同步至博客站,尊重原创,转载时请在正文中附带以下链接:

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 主线 内核 延迟 构建 视频
最后更新:2023年1月2日

Linux大神网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux大神网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
如何在Linux安装字体中用到各种命令如mkfontscale? 自带几个预设,你可以在Numix、Arc或Materia主题样式上创建自己的GTK主题 (架构)为什么要在Linux下写C++程序? Ubuntu中各种类型频繁发生的更新错误以及修复方法 图1.3编程的7个步骤,你知道吗? 虚拟机Linux安装教程及安装流程介绍-苏州安嘉 常用且流行的Linuxshell脚本编写工具:/Vim编辑器 Linux下统计C语言程序执行时间的几种常用方法 Grafana常见的配置选项及常见配置文件介绍-苏州安嘉 开机流程:(BasicInputOutputSystem)基本输入输出系统 (知识点)LinuxGCC的使用方法及汇总 bash和rc有什么区别?文件描述文件问题 (Linux基础知识)定期自动运行程序Linux的基本操作 嵌入式Linux驱动学习笔记01-Ubuntu系统入门教程01 虚拟机模拟分布式结构的安装步骤和安装方法 Linux实现开机自定义的系统服务开机程序主要有两种方法 snap软件包的应用程序之间的依赖问题是什么? (Linux基础知识)Linux自主招生常见问题及解决办法 unix网络编程百度云 Python:为什么要学Python? Linux基础知识:启动脚本文件系统的应用程序分析方法
lrzsz服务器使用命令在线安装使用rz命令本地linux服务器80端口无法访问问题解决可以依次从上往下排查虚拟存储器的操作系统课程,你了解多少?Linux操作系统内核的启动过程及使用者有所启迪HDFS分布式文件系统的设计目标是什么?生态系统上海会计培训-如何获取日期字符串的时间戳?Android应用程序框架篇(2017年9月1日)Linux系统的优化调优策略:优化的分区策略Linux/Unix社区的版块不热闹,高手太忙,偶把自己这几年的Linux学习过程讲讲教程讨论Excel中日期和Unix时间戳之间的转换发车!Linux进程的内存分布长什么样?从服务器获取数据中的时间戳格式的java方法指定端口被哪个进程占用的情况怎么办?探讨!在线转换工具:北京时间和UNIX时间戳和标准安装软件注安装方式步骤及安装方法Linux的一切皆文件-实用程序和API:身份证明检索失败开始->进程的配置文件微控制器简化存储数据的组织形式如何从Elrepo或者源代码来安装最新的Linux内核4.0Linux下ldd命令的使用方法本身不是一个程序
5假设你的Linux服务器上有一个超大的ISO镜像文件 及帐户管理、bash内部命令帮助$helppwd2 Linux启动过程中的几个部分内核的引导(图) 安装启动引导器的设备修改成你/boot对应的 如何用Perl检测Linux的发行版相关的代码? linux默认启动命令行 不会面面俱到各个细节,望原谅细节!细节 Torvalds:Linux内核开发的创新前景充满了热情 新的Linux虚拟机--镜像为-16.04 学习嵌入式linux编程开发应该要必备什么条件?(一) 2022年最适合旧PC的10款轻量级Linux发行版 LINUX设备驱动程序(第3版)-设备 Linux中的8个有用命令,你知道几个? 玩蛇网推荐图文教程:python列表Linux系统补全输出重定向历史记录 豆瓣高评分书籍,快来看看你都读过哪几本? 发车!Linux进程的内存分布长什么样? Linux上运行Windows可执行文件和运行可执行文件的基本信息开始了 DRAM中的虚拟地址空间的缓存简化内存管理(组图) img创建一个cronjob要创建,你可以使用crontab命令 1.给ens33网卡配置静态IP、网关、DNS,检查是否生效 linux怎么安装输入法Linux系统可以通过以下步骤步骤安装
标签聚合
文件 linux服务器 虚拟机 linux系统 软件 操作 内核 应用 文件目录 命令
书籍
课程
技术群
技术干货大合集↓
  • 2023年12月 / 3篇
  • 2023年11月 / 88篇
  • 2023年10月 / 94篇
  • 2023年9月 / 90篇
  • 2023年8月 / 93篇
  • 2023年7月 / 94篇
  • 2023年6月 / 90篇
  • 2023年5月 / 93篇
  • 2023年4月 / 90篇
  • 2023年3月 / 129篇
  • 2023年2月 / 84篇
  • 2023年1月 / 161篇
  • 2022年12月 / 187篇
  • 2022年11月 / 76篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2024 linuxgod.net ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang