Linux内核及内核模块

1.Linux的组成

 由内核及相应的功能模块组成,内核/boot/vmlinuz-"内核版本号" 文件,模块文件在/lib/modules/版本号/目录下(为.ko的文件)

  在/proc/sys/目录下可以修改文件来修改内核的参数(注意这些文件不能用vim打开要修改只能用重定向的方式)

  echo "www.luochen.com" > /proc/sys/kernel/hostname

  也可以这样改

  sysctl -w kernel.hostname="luochen.com" 能立即生效,但无法永久有效

2./etc/sysctl.conf文件 永久有效,需要重启

   sysctl -p: 重读配置文件,立即有效

   sysctl -a: 显示所有内核参数及其值

3.内核模块管理

 a.lsmod: 查看所有装载的模块

 b.modprobe MOD_NAME:装载某模块

 c.modprobe -r MOD_NAME: 卸载某模块

 d.modinfo MOD_NAME: 查看模块的具体信息

 e.insmod /PATH/TO/MODULE_FILE: 装载模块

 f.rmmod MOD_NAME: 移除模块

 g.depmod /PATH/TO/MODILES_DIR: 生成模块依赖关系

4.内核编译

 内核中的功能除了核心功能之外,在编译时,大多功能都有三种选择:

   1、不使用此功能

   2、编译成内核模块

   3、编译进内核  

5.如何手动编译内核

 a. make gconfig: Gnome桌面环境 需要安装图形开发库组 GNOME Software Development

   make kconfig: Kde桌面环境 需要安装图形开发库组 KDE Software Development

  这里使用另外一种方法

   make menuconfig

 b.make

 c.make modules_install

 d.make install

 e.重启新系统

 f.手动编译内核是尽量不要用远程连接(编译花费时间较长,有可能意外中断)

  如果一定只能用远程的话使用screen命令

  yum -y install screen 安装screen  

  screen命令:

    screen -ls: 显示已经建立的屏幕

    screen: 直接打开一个新的屏幕

       Ctrl+a, d: 拆除屏幕

    screen -r ID: 还原回某屏幕

    exit: 退出

  g.二次编译时清理,清理前,如果有需要,请备份配置文件.config:

   make clean 或

   make mrproper





本文出自 “珞辰的博客” 博客,请务必保留此出处http://luochen2015.blog.51cto.com/9772274/1651912

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。