zoukankan      html  css  js  c++  java
  • 内核编译步骤及模块管理

    内核编译步骤及模块管理
     
    设定内核参数的方法:
    echo VALUE > /proc/sys/TO/SOMEFILE
    sysctl -w kernel.hostname=
    能立即生效,但无法永安有效。
     
    永久有效需要修改配置文件/etc/syctl.conf
    修改完配置文件不会理解生效,需要执行以下命令才能立即生效。
    sysctl -p 让内核从读配置文件
     
    sysctl -a 显示所有内核参数及其值
     
     
    内核模块管理
    lsmod 查看内核加载的模块
     
    modprobe MOD_NAME 装载某个内核模块,只需要在modprobe后面接内核文件名即可
    modprobe -r MOD_NAME 卸载某个内核模块,同样只需要在modprobe后面接内核文件名即可
     
    modinfo MOD_NAME 查看某个内核模块的详细信息
     
    insmod /PATH/TO/MODULE_FILE 装载某个内核模块,与modprobe不同的用法,insmod后面接的是内核模块的文件路径
    rmmod MOD_NAME 卸载某个内核模块,与modprobe -r 的用法相同,都是后面接内核模块名
     
    depmod /PATH/TO/MOD_DIR
     
    内核中的功能除了核心功能之外,在编译时,大多功能都又三种选择:
    1、不使用此功能
    2、编译成内核模块
    3、编译进内核,也就是成为内核的组成部分
     
    对于红帽系列来讲,一个系列的版本内核版本号是一至的。
    例如
    RHEL 5系列的内核版本号是2.6.18 5.1 、5.2 、5.5.。。。5.9的内核版本号都是2.6.18
    RHCE 6(centos 6) 的内核版本号是2.6.32 6.1、6.2、6.3、6.5。。。6.10的内核版本号都是2.6.32
     
     
    如何手工编译内核
    准备:需要安装安装Development tools开发工具
    第一步下载内核文件
    第二步解压内核文件,需要解压到/usr/src
    第三步创建解压出内核文件的软连接,需要命名为linux
    第四步需要使用到内核编译工具
    make gconfig :GNOME桌面环境使用的,需要安装图形开发工具
    GNOME Software Development 图形配置工具
    make kconfig : KDE桌面环境使用的,需要安装KDE图形开发工具
    KDE Software Development 图形配置工具
    make menuconfig : 命令行下使用的
    第五步进入linux目录,打开make menuconfig
    备注,建议可以先把/boot/config-VERSION文件复制到/usr/src/linux目录下,改名成.config,以此文件为模版,来修改,以免出来编译好内核启动不了。
    第六步make
    第七步make modules_install这一步很重要,先去安装内核模块
    第八步make insatll 最后一步安装内核
     
     
    二次编译时清理
    make clean 清理之前编译好的二进制文件
    make mrproper 清理之前编译的操作,包括.config文件,所以在执行make mrproper 之前先备份之前配置的.config文件
     
     
    实现部分编译
    1、只编译某个子目录下的相关代码
    make dir/
    make SUBDIR=arch/
    make drivers/net/
    2、只编译部分模块
    make M=drivers/net/
    3、只编译某一模块
    make drivers/net/pcnet32.ko
    4、将编译完成的结果放置于别的目录中
    make o=/tmp/kernel
  • 相关阅读:
    Elkstack2.0部署
    ZABBIX自定义用户KEY与参数USERPARAMETERS监控脚本输出
    elasticsearch 管理工具
    指定时间开启、结束定时器
    异步的作用
    快速生成几百万条测试数据
    查看查询索引
    蠕虫复制
    导出数据库
    header
  • 原文地址:https://www.cnblogs.com/fengciaimei/p/12901120.html
Copyright © 2011-2022 走看看