Loongnix系统替换内核操作

2024-05-12 15:28

本文主要是介绍Loongnix系统替换内核操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Loongnix系统替换内核操作

一、终端下执行命令

sudo apt search linux-image*

在这里插入图片描述
返回结果中格式如: linux-image-4.19.0-19-loongson-3 为最新的内核源码。

二、下载内核源码包

sudo apt source linux-image-4.19.0-19-loongson-3

如提示:E: 您必须在 sources.list 中指定代码源(deb-src) URI , 需要修改/etc/apt/sources.list,将deb-src前#号去掉。

在这里插入图片描述

三、编译生成内核和模块文件

可以选择本地编译交叉编译,下面分别介绍两种方式操作流程。

3.1 本地编译

  1. 获取源码后,进入源码目录下
    cd linux-4.19.190.8.14
  2. 安装依赖包
    sudo apt install bison flex libelf-dev libssl-dev
  3. 用默认内核配置,进行本地编译
    sudo make menuconfig ARCH=loongarch 保存退出
    sudo make ARCH=loongarch -j8 编译内核
    sudo make modules_install -j8 安装模块

生成vmlinuz文件和4.19.190模块目录(默认在/lib/modules下)

3.2 交叉编译

  1. 将linux-4.19.190.8.14源码打包
    sudo tar zcvf linux-4.19.190.8.14.tar.gz linux-4.19.190.8.14

  2. 将源码包拷贝到交叉编译的机器上,进行解压
    sudo tar zxvf linux-4.19.190.8.14.tar.gz

  3. 进入源码目录下
    cd linux-4.19.190.8.14

  4. 用默认内核配置,进行交叉编译
    sudo make menuconfig CROSS_COMPILE=loongarch64-linux-gnu- ARCH=loongarch 保存退出
    sudo make CROSS_COMPILE=loongarch64-linux-gnu- ARCH=loongarch -j8 编译内核
    sudo make modules_install INSTALL_MOD_PATH=/tmp/mod/ CROSS_COMPILE=loongarch64-linux-gnu- ARCH=loongarch -j8 安装模块

    生成vmlinuz文件和4.19.190模块目录(在/tmp/mod/lib/modules下)

  5. 打包4.19.190模块目录
    cd /tmp/mod/lib/modules
    sudo tar zcvf 4.19.190.tar.gz 4.19.190

四、拷贝内核和模块到系统中

拷贝 vmlinuz文件拷贝到loongnix系统的 /boot目录下

备注:交叉编译执行拷贝并解压 4.19.190.tar.gz 到loongnix系统的/lib/modules目录下

五、生成新的启动项目

sudo dracut --force --kver 4.19.190

执行完上述命令后会在/boot 目录下生成initramfs-4.19.190.img

六、添加启动项

6.1 固件是UEFI

运行sudo update-grub2 ,然后重启

6.2 固件是PMON

修改/boot/boot.cfg文件,在showmenu 1这行下,位置如下:
在这里插入图片描述

添加如下内容:
sudo vim /boot/boot.cfg

title kernel 4.190kernel /dev/fs/xxxx@xxxx/vmlinuzinitrd /dev/fs/xxxx@xxxx/initramfs-4.19.190.imgargs root=UUID=xxxx  ro quiet

备注:xxxx 根据boot.cfg 里实际情况填写

修改后保存,重启

七、 查看内核版本

重启后运行uname -a查看,内核替换成功。
在这里插入图片描述

这篇关于Loongnix系统替换内核操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/983007

相关文章

MySQL 强制使用特定索引的操作

《MySQL强制使用特定索引的操作》MySQL可通过FORCEINDEX、USEINDEX等语法强制查询使用特定索引,但优化器可能不采纳,需结合EXPLAIN分析执行计划,避免性能下降,注意版本差异... 目录1. 使用FORCE INDEX语法2. 使用USE INDEX语法3. 使用IGNORE IND

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

linux批量替换文件内容的实现方式

《linux批量替换文件内容的实现方式》本文总结了Linux中批量替换文件内容的几种方法,包括使用sed替换文件夹内所有文件、单个文件内容及逐行字符串,强调使用反引号和绝对路径,并分享个人经验供参考... 目录一、linux批量替换文件内容 二、替换文件内所有匹配的字符串 三、替换每一行中全部str1为st

Python使用openpyxl读取Excel的操作详解

《Python使用openpyxl读取Excel的操作详解》本文介绍了使用Python的openpyxl库进行Excel文件的创建、读写、数据操作、工作簿与工作表管理,包括创建工作簿、加载工作簿、操作... 目录1 概述1.1 图示1.2 安装第三方库2 工作簿 workbook2.1 创建:Workboo

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

JSONArray在Java中的应用操作实例

《JSONArray在Java中的应用操作实例》JSONArray是org.json库用于处理JSON数组的类,可将Java对象(Map/List)转换为JSON格式,提供增删改查等操作,适用于前后端... 目录1. jsONArray定义与功能1.1 JSONArray概念阐释1.1.1 什么是JSONA

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon