当前位置:首页 » 《随便一记》 » 正文

Linux内核编译部分问题及解决方法_Tsarzizi的博客

10 人参与  2021年12月17日 14:33  分类 : 《随便一记》  评论

点击全文阅读


本方法仅适用于CentOS,其他版本酌情参考!!!

建议先看完文章在逐步进行操作!

具体问题具体分析!!!

建议虚拟机至少有60G磁盘容量,避免空间不足!

linux大小写敏感,请注意命令和字段的大小问题!!!

安装简中的路径可能出现问题,可手动解压或打开。

重要部分以做突出处理!!!

需要输入的命令

需要注意的信息

需要选中的字段

需要下载的包名

以更改内核版本号最后一位为例

下载Linux内核(www.kernel.org)我下载的是5.14.5版本

下载后使用 tar -zxvf 文件名 解压。例如:

tar -zxvf linux-5.14.5.tar.xz

(这里我并没有成功,可能是因为路径错误。所以直接双击压缩包解压,得到文件)

使用 cd + 路径 跳转到所解压的文件中。如找不到路径,可右键,在此文件中打开终端

cd linux-5.14.5

使用 sudo yum install 包名 命令 安装一些必要的包:(若没有权限,则使用sudo,或者使用su命令)

su

su命令的好处则是之后命令均不用使用sudo

sudo yum install make -y
  1. make
  2. gcc
  3. openssl-devel
  4. flex
  5. bison
  6. ncurses-devel
  7. elfutils-libelf-devel

安装好后使用 make menuconfig 命令,得到如下界面:

若报错,则根据报错内容下载安装对应的包

make menuconfig

我们选择 Device Drivers 这个选项(如图)

接着选择 Trust the bootloader to initialize Linux‘x GRNG (NEW)  

 然后使用小键盘左键选中 <Save> ,敲击回车键,并一直确定,完成后选择 <Exit> 退出。

使用 vi 命令打开编辑config文件

vi .config

打开后,会进入这个界面

 我们可以使用 :set nu 命令得到旁边的行数。(直接输入 :set nu

(此部分若未找到字段,可以跳过,寻找下一个字段)

如图直接输入 /CONFIG_DEBUG_INFO_BTF,敲击键盘的 i 键,进入输入模式,此时白色闪烁的光标则是选中的位置

将 CONFIG_DEBUG_INFO_BTF=y ,并改成 CONFIG_DEBUG_INFO_BTF=m

继续输入 /CONFIG_SYSTEM_TRUSTED_KEYS

并将其改为 CONFIG_SYSTEM_TRUSTED_KEYS=""

继续找到 # CONFIG_TEST_BLACKHOLD is not set

将其改为 CONFIG_TEST_BLACKHOLD=m

之后使用 :wq! 保存退出

配置完成后,我们使用 vim Makefile 编辑,使用 i 进入输入模式将SUBLEVEL改为我自己的学号尾号(这里当时忘记截图了)记得使用 :wq! 保存退出。

vim Makefile

编辑完成后,我们使用make命令(这里所用时间比较漫长,建议多核处理,可以通过虚拟机设置,处理器,来配置自己的处理器核数,并用 -j核数 来跑make指令,我这里设置的是8核,所以命令为

make -j8

make -j8

跑完中途没出错的话,我们继续使用

make modules_install 命令

make modules_install

如果还是没出错,我们再接着使用 make install 命令

make install

三个命令跑完之后,系统应该会自动配置,我们在终端重启系统

命令为reboot

reboot

如果成功的话就能看到我们所编译的内核版本,选择它,进入系统后,打开终端

输入 uname -r 查看版本号!

uname -r

注:具体问题具体分析,文中处理方法不唯一,且只能解决部分问题,如有更好的方法欢迎讨论!


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/31695.html

命令  字段  输入  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1