linux内核学习—Linux内核更新(2)

【自取】最近整理的,有需要可以领取学习:

一:场景

openvswitch不同版本编译,可能对linux内核的要求不同,不一致的版本可能导致各种错误,比如:宏定义错误,结构体成员、回调函数缺失…

比如在VM下使用的Ubuntu 16.04.1 LTS系统,默认为下面的4.4.0版本内核。

linux内核学习---Linux内核更新(2)
注意:本文所有图片均是在成功后截图,所以其中的部分数据是更新内核后才显示! 比如上图中的其他内核信息,和后面hostnamectl显示的内核信息(应该是4.4.0),我们已经更新过了,所以为4.15.0-142

而我们需要编译的openvswitch版本为openvswitch2.11.4,与之最合适的内核版本为Linux 4.15.0-142-generic。

因此本文的需求:为了编译OVS源码,我们更新Ubuntu系统的内核版本从 4.4.0-31-generic —–> 4.15.0-142-generic

二:命令补充

1.hostnamectl : 包括主机名,操作系统信息,内核版本信息等等……

linux内核学习---Linux内核更新(2)

2.uname -r : 只查看内核版本

linux内核学习---Linux内核更新(2)

3. sudo dpkg –get-selections : 显示包含标记install或deinstall的包

linux内核学习---Linux内核更新(2)

4.apt-cache search :查询支持的所有安装包

linux内核学习---Linux内核更新(2)

5.grep submenu /boot/grub/grub.cfg : 查看子菜单下的启动的内核信息

linux内核学习---Linux内核更新(2)

三:内核更新

(一)查看当前启动的内核信息

grep submenu /boot/grub/grub.cfg

linux内核学习---Linux内核更新(2)

注意:本系统原始4.4.0的信息为(gnulinux-advanced-ecb83edd-4b85-4496-a8f3-40468ea1b71d),我们记录自己的内核信息数据即可!

(二)查看系统支持linux内核安装包

apt-cache  search linux | grep linux-image

linux内核学习---Linux内核更新(2)

可以发现,我们需要的内核版本存在。

(三)查找所有需要的内核安装包信息

apt-cache  search linux | grep 4.15.0-142-generic

linux内核学习---Linux内核更新(2)

(四)通过apt指令进行内核安装

sudo apt install linux-headers-4.15.0-142 linux-headers-4.15.0-142-generic linux-image-4.15.0-142-generic linux-modules-4.15.0-142-generic linux-modules-extra-4.15.0-142-generic linux-tools-4.15.0-142-generic

(五)查看内核信息,后面编辑grub引导文件需要

linux内核学习---Linux内核更新(2)

(六)切换默认启动的内核

sudo gedit /etc/default/grub

原本文件信息:

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

更新GRUB_DEFAULT字段:

GRUB_DEFAULT="gnulinux-advanced-ecb83edd-4b85-4496-a8f3-40468ea1b71d>gnulinux-4.15.0-142-generic-advanced-ecb83edd-4b85-4496-a8f3-40468ea1b71d"
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

注意:前面为4.4.0原始内核信息,后面为新的4.15.0内核信息,两者通过”>”进行连接!

(七)更新grub

sudo update-grub

(八)重启,查看内核信息

sudo reboot
hostnamectl

linux内核学习---Linux内核更新(2)

可以看到内核更新成功,后面可以正常编译ovs了!!

Original: https://www.cnblogs.com/ssyfj/p/15756169.html
Author: 山上有风景
Title: linux内核学习—Linux内核更新(2)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/8771/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • (原)通过clash在ubuntu下做旁路由

    (本文假设阅读者已经熟练使用clash for windows。) 目的: 把一台闲置ubuntu,搞成旁路由(下文里的”旁路由”或”ubunt…

    Linux 2022年8月26日
    0650
  • qt学习:信号,槽

    [C.GUI.Qt.4编程(第二版)](加)布兰切特,(英)萨默菲尔德.扫描版[学习库www.xuexi111.com].pdf 信号和槽是Qt编程的基础,它可以让各种对象联系在一…

    Linux 2022年8月24日
    0300
  • linux下pppoe连接管理

    一、安装pppoe组件 二、配置pppoe 图形界面配置pppoe,在terminal里输入 然后就会弹出图形界面让你配置网络,只要新建一个DSL连接即可。填好用户名密码,服务不用…

    Linux 2022年8月20日
    0520
  • ubuntu 21.10 上的一些必备库的安装 opengl, opencv

    gtk: opengl: <span class=”token preprocessor property”># &#x5B89;&#x88C5;Ope…

    Linux 2022年8月26日
    0260
  • Ubuntu安装scrcpy完成手机投屏和控制

    PC端安装scrcpy 运行 ~$ sudo snap install scrcpy 手机端设置在手机端开发者模式中找到USB调试和USB调试(安全设置)并打开 打开scrcpy将…

    Linux 2022年8月26日
    0270
  • linux中apt-get和yum和wget的区别

    1.RedHat系列:Redhat、Centos、Fedora等 yum 2.Debian系列:Debian、Ubuntu等 apt-get wget类似迅雷 Original: …

    Linux 2022年8月8日
    01260
  • git merge与git rebase区别(转载)

    这是最近看的讲的比较通俗易懂的rebase与merge的区别了https://www.jianshu.com/p/4079284dd970 一点、一点才能到达彼岸 Original…

    Linux 2022年8月30日
    0300
  • git pull 和本地文件冲突问题解决

    具体方法如下 git pull origin 分支 //出现错误 git stash 缓存起来 git pull origin 分支 git stash pop //还原 git …

    Linux 2022年8月30日
    0220
  • Linux xargs命令

    xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理。通常情况下,xargs从管道或者stdin中读取…

    Linux 2022年8月26日
    0250
  • 查看LINUX进程内存占用情况(转)

    可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令: (1)top top命令是Lin…

    Linux 2022年8月24日
    0340
  • Linux:环境变量

    变量定义:declare tmp,declare是可选的。 变量赋值:tmp=1,=号左右不要有空格。 变量引用:echo $tmp,不要忘记了$号。 环境变量 简单理解了变量的概…

    Linux 2022年8月24日
    0570
  • Linux 环境变量

    linux 环境变量的原理是用 export命令导入。导入的根据导入时机的不同会有一些差别 export PATH=$PATH:/ust/local/boost os级别 #os启…

    Linux 2022年8月20日
    0250
  • Typora-导出文件到github指令

    Typora – 导出文件到github指令 可以通过设置Typora将写好的博客备份到Github. 指令如下: git add "${currentPat…

    2022年8月30日
    0410
  • Linux netstat命令详解

    最常用 netstat -ntl netstat -natp Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics…

    Linux 2022年8月24日
    0250
  • linux shell中”2>&1″含义

    在计划任务中经常可以看到。例如我们公司的计划任务举例: 对于& 1 更准确的说应该是文件描述符 1,而1标识标准输出,stdout。对于2 ,表示标准错误,stderr。2…

    Linux 2022年8月13日
    0280
  • Linux下修改mysql的root密码

    一、知道原来的myql数据库的root密码; 1、 在终端命令行输入 mysqladmin -u root -p password "新密码" 回车 ,Ente…

    Linux 2022年8月24日
    0310
  • Linux的内存分页管理

    作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁转载 内存是计算机的主内存。内存为进程打开存储数据的进程空间。我将从内存的物理属性开始,深入研…

    Linux 2022年8月24日
    0230
  • git批量恢复所有删除的文件

    ![git批量恢复所有删除的文件](https://johngo-pic.oss-cn-beijing.aliyuncs.com/articles/20220830/"I…

    Linux 2022年8月30日
    0230
  • linux内核启动之ARM概述(一)

    对于不同体系结构的处理器来说Linux的启动过程也有所不同。以S3C2410 ARM处理器为例,详细分析了系统上电后 bootloader的执行流程及 ARM Linux的启动过程…

    Linux 2022年8月11日
    0290
  • ELK收集日志之logstash使用

    一、logstash使用 1.logstah收集文件日志 不难理解,我们的日志通常都是在日志文件中存储的,所以,当我们在使用INPUT插件时,收集日志,需要使用file模块,从文件…

    Linux 2022年9月10日
    0280
  • Ubuntu 20.04上启用SSH

    Secure Shell(SSH)是用于客户端和服务器之间安全连接的网络协议。服务器与客户端之间的每次交互均被加密。 本教程说明了如何在Ubuntu计算机上启用SSH。 启用S​​…

    Linux 2022年8月26日
    0410
  • Docker镜像构建之docker commit

    我们可以通过公共仓库拉取镜像使用,但是,有些时候公共仓库拉取的镜像并不符合我们的需求。尽管已经从繁琐的部署工作中解放出来了,但是在实际开发时,我们可能希望镜像包含整个项目的完整环境…

    Linux 2022年9月10日
    0340
  • ubuntu20.04安装rime输入法,设置简体输入,同时更改fcitx皮肤,导入搜狗词库

    1、安装rime输入法,安装完重启电脑我电脑上已经安装了fcitx框架所以安装这个,ibus框架安装对应的,可以参考官方说明2、更改输入法为fime 3、更改简体中文安装的rime…

    Linux 2022年8月26日
    02370
  • Linux配置和管理设备映射多路径multipath

    (一)多路径管理软件的由来在企业中,服务器和存储通常是分开放置的,服务器上的硬盘通常用于安装操作系统和应用软件,业务数据存储在单独的存储设备上,那么,服务器是如何连接到存储的呢?根…

    2022年8月13日
    0400
  • Linux(CentOS)下安装Elasticsearch5.0.0

    一.ES5.0解压安装到Windows之后(可能)需要进行的设置: 1.如果不设置,直接运行elasticsearch.bat 文件 ,会报错: 2.解决方式 调节 conf/jv…

    2022年8月24日
    0270
  • Git提交到其他分支了,需要把其他分支上的部分commit迁回-cherry-pick

    场景: 在开发中,有时候在几个版本间切换,本计划要提交到T分支上。不小心提交的代码到了N分支,但这时候已经提交了不少commit了,还有其他的人的commit,但我想把N分支自己提…

    Linux 2022年8月30日
    0660

发表回复

登录后才能评论
免费咨询
免费咨询
扫码关注
扫码关注
联系站长

站长Johngo!

大数据和算法重度研究者!

持续产出大数据、算法、LeetCode干货,以及业界好资源!

2022012703491714

微信来撩,免费咨询:xiaozhu_tec

分享本页
返回顶部