linux内核安装:

安装内核步骤

  1. 下载相应内核版本【我这里用的是linux-4.19.90.tar.gz】

    下载网址:https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/

  2. 解压缩到自定位置【我这里是/root/桌面/send/】

  3. 安装内核图像界面依赖【已安装则跳过】

 yum install ncurses-devel

注意事项:如果不安装这个,会引发内核make menuconfig错误

  1. 使用图形化界面对内核配置的更改

 make menuconfig

成功后如图所示:

可能遇到的问题

4-1 以前编译过内核【清理过去内核编译产生的文件】

  • 解决方案

 make mrproper

4-2 出现如下错误:

 /bin/sh: flex:未找到命令
 make[1]: *** [scripts/Makefile.lib:188:scripts/kconfig/zconf.lex.c] 错误 127
 make: *** [Makefile:534:x86_64_defconfig] 错误 2
  • 解决方案:

    安装 bisonflex 软件依赖

     yum install flex bison
  1. 内核配置细节参考:

    •  general setup // 基础设置
       processor type and features   //处理器类型和特征设置
       power management and ACPI options //电源管理和APCI选项
       bus options //总线(bus)设置
       binary emulations //二进制仿真
       firmware drivers //固件驱动设置
       ​
       virtualization //虚拟化设置
       General architecture-dependent options //一般架构的依赖选项
       enable loadable module support //启用可加载模块支持
       enable the block layer //启用 块 层级
       executable file formats //可执行文件(exe)文件格式
       memory management options //内存管理选项
       ​
       networking support //网络支持选项
       device drivers //设备驱动程序
       file systems //文件系统
       security options //安全选项
       ​
       Cryptographic API //加密API
       library routines //库习惯【默认设置?】

      扩充选项阅读 linux 内核配置选项

  2. 自定义选择完成后save退出

    • 内核选项中: y为选中此内核配置

      n为不选中此内核配置

    • esc为退出

    • 方向键为选取下方选项

    • / 为搜索

  3. 退出后安装所需依赖:

     yum install elfutils-libelf-devel openssl-devel bc
  4. make 编译

    编译完如图所示:

  5. 安装内核模块

     make modules_install

  6. 安装内核

    make install

    报错的话可能是make编译的过程中提前中断了,重来吧TAT

  7. 安装成功后在boot里面能看到对应的内核

    cd boot

    ll

  8. 更新引导:

    下面的命令会根据 /boot/ 目录下的内核文件自动更新启动引导文件。

    grub2-mkconfig -o /boot/grub2/grub.cfg

  9. 点亮了之后就大致成功了,后续的是优化体验:

    备注:我自己内核头文件存放位置为:/usr/src/kernels/4.19.90-2204.4.0.0146.oe1.x86_64/include/linux/

  10. 修改默认启动内核:

    查看当前系统所有可用内核

    cat /boot/grub2/grub.cfg |grep "menuentry "

  11. 查看当前默认启动内核

    grub2-editenv list

  12. 修改默认启动内核,grub2-set-default后的参数即要默认启动的版本,就是之前查看当前系统所有可用内核结果里面系统名称后的括号里的内容。

    grub2-set-default 4.19.90-2106.3.0.0095.oe1.x86_64
  13. 再次查看默认启动内核(15)

  14. 删除旧内核:

    cd /boot
    ll

    删除旧内核相关文件

    rm -rf System.map-4.19.90.old vmlinuz-4.19.90.old

    更新引导文件:

    grub2-mkconfig -o /boot/grub2/grub.cfg
  15. 参考资料,引用:

    OpenEuler内核编译及替换

    Make Menuconfig详解 (配置内核选择)

内核相关指令

验证内核模块是否成功成功加载

  1. 当你运行了某个.ko文件

    设:insmod kernel_name

  2. 可使用如下指令来验证是否成功加载

lsmod | grep kernel_name
  • kernel_name为加载的模块

载入内核模块(install module)

  • 示例:加载kernel_name模块

    insmod kernel_name

卸载内核模块

  • 示例:删除kernel_name模块

    rmmod kernel_name

    进阶参数可用

    • -a  删除所有目前不需要的模块。

    • -s  把信息输出至syslog常驻服务,而非终端机界面。

检查内核日志:

dmesg
 

openeuler linux内核4.19安装(centos 同理)的更多相关文章

  1. Linux Centos7部署环境安装-CentOS

    Linux Centos7部署环境安装-CentOS Centos7部署环境安装及Linux常用命令 centos系统下各文件夹的作用 centos7修改系统默认语言 centos7安装rz/sz命令 ...

  2. Linux内核4.19.1编译

    linux内核编译 1.1 大致步骤 下载linux内核4.19.1 官网链接: https://www.kernel.org/ 官网下载经常速度太慢,无法下载,提供另一个链接: http://ftp ...

  3. 在CentOS上编译最新版linux内核(linux-5.19.9)

    从官网下载最新版的Linux内核源码,本教程使用linux-5.19.9进行编译. 实验环境(CentOS-Stream-8) $ uname -a Linux localhost.localdoma ...

  4. Linux内核编译、安装流程

    原文链接:https://blog.csdn.net/qq_28437139/article/details/83692907 此处只讲linux内核编译步骤至于安装虚拟机,安装ubuntu操作系统请 ...

  5. Linux内核编译与安装

    2013-04-16    Linux内核介绍  Linux内核是一个用C语言写成的,符合POSIX标准的类Unix操作系统.内核是操作系统中最基本的一部分,提供了众多应用程序访问计算机硬件的机制.L ...

  6. Linux内核的编译安装

    前言 Linux内核是Linux操作2347系统的核心,也是整个Linux功能体现的核心,就如同发动机在汽车中的重要性.内核主要功能包括进程管理.内存管理.文件管理.设备管理.网络管理等.Linux内 ...

  7. 初涉定制linux系统之——自动化安装Centos系统镜像制作

    最近碰到个需求:要在内网环境安装centos6.5系统并搭建服务,但由于自动部署脚本里安装依赖包使用的是yum安装,而服务器无法连接外网,实施人员也不会本地yum源搭建O__O "….. 本 ...

  8. 【Linux】个人笔记本安装Centos并开放22端口供外网连接

    〇.参考资料 一.配置及安装内容 (一)配置 [today]低配笔记本(装centos):4+500G 个人电脑(装三个节点的虚拟机集群环境):8+628G (二)所装软件 Linux系统(可选cen ...

  9. Percona MySQL 5.7 Linux通用二进制包安装(CentOS 6)

    Linux 安装 Percona http://blog.itpub.net/26506993/viewspace-2136501/ https://www.cnblogs.com/snowwhite ...

  10. LINUX Mysql5.6.19 安装

    1.需要扩展安装 yum -y install make bison gcc-c++ cmake ncurses ncurses-devel 2.下载Mysql5.6.19 wget ftp://mi ...

随机推荐

  1. 8.21考试总结(NOIP模拟45)[打表·蛇·购物·ants]

    有型的东西终究会消逝,不过--终于,这份回忆还是永远不朽的- 前言 这次考试暴露出来了不少问题. 比如答题策略策略不当导致 T2 的 65pts 暴力根本没有打. 知识遗忘太快不牢固,T4 是之前的一 ...

  2. 7.22考试总结(NOIP模拟23)[联·赛·题]

    不拼尽全力去试一下,又怎么会知道啊 前言 又是被细节问题搞掉的一天. T1 的话,与正解相差无几,少打了两个 else 一个 ls 打成了 rs,然后就爆零了(本来还有 45pts 的),然后加了一个 ...

  3. OpenCV笔记(9) calcHist绘制直方图

    直方图只是简单地将数据归入预定义的组,并在每个组内进行计数.也可以选择对数据提取特征,再对特征进行计数,这里的特征可以是梯度的长度.梯度的方向.颜色或其他任何可以反应数据特点的特征.也就是说,直方图是 ...

  4. itest(爱测试) 开源接口测试,敏捷测试管理平台10.1.0发布

    一:itest work 简介 itest work 开源敏捷测试管理,包含极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口Mock,还有压测 ,又有丰富的统计分析,8合1工作站.可按 ...

  5. docker inspect 格式化输出

    docker inspect 例子 [root@hmm ~]# docker run -tid --name YUN-teSt ubuntu 337170fc3109a824273a7f04dd5c5 ...

  6. jquery浏览器的上卷高度 节点的创建和写入 节点的删除

    // js 的兼容语法         // let scrollT = document.documentElement.scrollTop || document.body.scrollTop; ...

  7. The requested operation cannot be completed because the connection has been broken

    具体报错 The requested operation cannot be completed because the connection has been broken. -- xxxForyy ...

  8. 又跳槽!3年Java经验收割成都大厂的面试心得(干货满满&文末有福利)

    中厂->阿里->字节,成都->杭州->成都 系列文章目录和关于我 0.前言 笔者在不足两年经验的时候从成都一家金融科技中厂跳槽到杭州阿里淘天集团,又于今年5月份从杭州淘天跳槽到 ...

  9. UniRx-unirx中的对象池

    UniRx-unirx中的对象池 对象池Unirxunity 对象池 一.对象池模式 <游戏设计模式-对象池模式> 1.概念 定义一个池对象,其包含了一组可重用对象. 其中每个可重用对象都 ...

  10. W5100 硬件协议栈 调试经验

    --- title: W5100 硬件协议栈 调试经验 date: 2020-06-21 11:22:33 categories: tags: - debug - tcpip - w5100 - su ...