[转]linux2.6内核编译方法详述

简介:
linux2.6内核成功编译
1) 需要的工具:
     (1) 模块工具:modutils-2.4.21-23.src.rpm
 
          //负责加载模块,在2.4之前是不需要单独编译
          //模块存放位置:/lib/modules/内核版本目录/kernel/drivers
          //lsmod: 查看已经加载的模块
     (2) 源代码:linux-2.6.9.tar.gz
         //选择需要编译的部分: 最新内核2.6.9 支持NTFS分区(只读)
         //查看现有系统支持的文件系统: cat /proc/filesystems
         //显示内核版本:  uname -r
           反引号: 当作命令执行 cd /lib/modules/`uname -r`
     (3) 可以加上补丁:patch-2.6.9.gz
(2) 编译内核的基本步骤
    (1) 主要用的编译命令: make make modules_install make install
    (2) 基本安装: 安装模块、安装内核
------------------------------------------------------------------------------------------------------------------------------------------------
                        安装2.6内核的步骤
1 安装模块:(1)执行rpm命令将modutils-2.4.21-23.src.rpm
                安装到/usr/src/redhat/SOURCES
             //rpm -ivh modutils-2.4.21-23.src.rpm
             //模块工具是RPM包安装后默认安装在/usr/src/redhat/SOURCES
            (2)在SOURCIES中含有2个文件module-init-tools.tar.gz 
                                      modutils-2.4.21.tar.gz
               将module-init-tools.tar.gz接压
              //tar -xzvf module-init-tools.tar.gz
              // modutils-2.4.21.tar.gz文件不是主要要用的,不用接压
            (3)module-init-tools.tar.gz文件接压后会有一个
               module-init-tools-3.0-pre1
 
            (4)进入到module-init-tools-3.0-pre1  文件夹中
                //cd module-init-tools-3.0-pre1 
            (5)在module-init-tools-3.0-pre1  下编译
               //./configure --prefix=/modules然后执行make接着
                 make install到这模块编译完成
               //注释:/modules是自己建立的文件夹,为了以后管理方便
            当编译模块完成后在/modules文件下会有bin  man  sbin这3个文件夹
            (6)开机自动加载模块编辑/etc/profile
               //vi /etc/profile
             
            (7)在/etc/profile文件中在添加 export上面一行                PATH=/modules/bin:/modules/sbin:$PATH
            (8)进入到模块的文件夹/modules
               进入到其中的sbin中执行一下命令
              ./generate_modprobe.conf /etc/modprobe.conf
              //注释:generate_modprobe.conf在文件sbin中有这个执行命令
                     /etc/modprobe.conf是自己输入的,是规定的
                 //以上操作是为了规定init
           
            (9)重新启动计算机,或着source /etc/profile让其本次操作有效
 
            (10)现在开始编译内核将linux-2.6.9.tar.gz接压到/usr/src
               //tar -xzvf linux-2.6.9.tar.gz -C /usr/src
           
            (11)接压后在/usr/src会有 linux-2.6.9文件夹
            (12)将 linux-2.6.9做一个连接文件
                  //创建链接文件: ln -s linux-2.6.9/  linux     
                  //创建链接文件是为了方便管理
       
            (13)进入到创建链接文件linux中开始编译内核
               首先运行make menuconfig选择要编译的内容,默认也可以
                //注释M: 以模块形式加载
                     *: 直接编译进内核
                    空: 不做操作,不编译
               然后执行make
               再后执行modules_install
               最后执行make install
               到此内核编译完成









本文转自 张宇 51CTO博客,原文链接:http://blog.51cto.com/zhangyu/33865,如需转载请自行联系原作者
目录
相关文章
|
安全 网络协议 Linux
深入理解Linux内核模块:加载机制、参数传递与实战开发
本文深入解析了Linux内核模块的加载机制、参数传递方式及实战开发技巧。内容涵盖模块基础概念、加载与卸载流程、生命周期管理、参数配置方法,并通过“Hello World”模块和字符设备驱动实例,带领读者逐步掌握模块开发技能。同时,介绍了调试手段、常见问题排查、开发规范及高级特性,如内核线程、模块间通信与性能优化策略。适合希望深入理解Linux内核机制、提升系统编程能力的技术人员阅读与实践。
1070 1
|
Ubuntu Linux
Ubuntu 23.04 用上 Linux 6.2 内核,预计下放到 22.04 LTS 版本
Linux 6.2 带来了多项内容更新,修复了 AMD 锐龙处理器设备在启用 fTPM 后的运行卡顿问题,还增强了文件系统。
|
Ubuntu Linux
Ubuntu 23.10 现在由Linux内核6.3提供支持
如果你想在你的个人电脑上测试一下Ubuntu 23.10的最新开发快照,你可以从官方下载服务器下载最新的每日构建ISO。然而,请记住,这是一个预发布版本,所以不要在生产机器上使用或安装它。
|
传感器 监控 Ubuntu
10 月发布,Ubuntu 23.10 已升级到 Linux Kernel 6.3 内核
硬件方面,Linux 6.3 引入了在 HID 中引入了原生的 Steam Deck 控制器接口,允许罗技 G923 Xbox 版赛车方向盘在 Linux 上运行;改善 8BitDo Pro 2 有线控制器的行为;并为一系列华硕 Ryzen 主板添加传感器监控。
|
Ubuntu Linux
Ubuntu24.04LTS默认采用Linux 6.8内核,实验性版本可通过PPA获得
IT之家提醒,当下的 Ubuntu 23.10 也是一个“短期支持版本”,该版本将在今年 7 月终止支持,而今年 4 月推出的 Ubuntu 24.04 LTS 长期支持版本将获得 5 年的更新支持。
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
2688 10
|
监控 Ubuntu Linux
什么Linux,Linux内核及Linux操作系统
上面只是简单的介绍了一下Linux操作系统的几个核心组件,其实Linux的整体架构要复杂的多。单纯从Linux内核的角度,它要管理CPU、内存、网卡、硬盘和输入输出等设备,因此内核本身分为进程调度,内存管理,虚拟文件系统,网络接口等4个核心子系统。
1155 0
|
Web App开发 缓存 Rust