Linux 内核(kernel)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 内核(kernel)相关的知识,希望对你有一定的参考价值。

1、内核是什么,内核是操作系统的核心。
在Linux中,其实内核就是系统上面的一个文件而已,这个文件包含了驱动主机各项硬件的检测程序与驱动模块。内核文件就是在/boot 目录下以vmlinuz开头的文件,有时候会发现boot下有好几个以vmlinuz开头的文件,说明可以有多个内核,不过启动的时候只能选择一个来加载,Linux是单内核、模块化体系的。
技术分享图片
输出的三列信息分别为模块名称、占用内存大小、是否在被使用,如果第三列为0,则该模块可以随时卸载,非0则无法执行modprobe删除模块。
2、查看已经加载的内核模块:
a.lsmod命令
技术分享图片
b.查看内核模块的文件
技术分享图片
c.可以查看指定模块的信息modinfo
技术分享图片
查看bridge模块的信息
d.装载与卸载模块 modprode
装载 modprode MOD_NAME(自动解决依赖关系)
卸载 modprode -r MOD_NAME
e.手动装载与卸载模块文件
装载 insmod /path/to/module_file(不会自动解决依赖关系)
卸载 rmmod MOD_NAME
3、/proc目录是系统与内核交互的一个伪文件系统接口,/proc目录下的每个文件名都是内核参数,目录名为内核参数节点(子系统或子功能)信息。比如:
net.ipv4.ip_forward = 1 该参数表示ipv4的核心路由转发功能,对应的内核文件为
/proc/sys/net/ipv4/ip_forward
在该目录下的一些只读文件表示的是输出的内核信息,一些可写的文件表示的是可以修改的内核特性,这些可写的文件分布在/proc/sys目录下。
伪文件系统特点为:文件不能直接使用编辑器编辑,可以通过以下方式修改
(1) echo
echo "New_Value">/proc/sys/path/to/file
(2) sysctl -w
sysctl -w path.to.file = New_Value
/proc/sys/net/ipv4/ip_forward
技术分享图片
这两种方式设定立即生效,但是内核重启后无效。
内核参数配置文件/etc/sysctl.conf
path.to.paramter=New_Value
注意,此种设定不能立即生效,但重启系统后一直生效;为了不重启系统而使其生效的方式为:
sysctl -p
查看当前运行中的内核的所有参数及其值
sysctl -a
技术分享图片

以上是关于Linux 内核(kernel)的主要内容,如果未能解决你的问题,请参考以下文章

Linux kernel模块管理相关详解

编译安装kernel 5.1.10及删除内核

Linux内核参数优化

什么是linux kernel?有什么作用

Linux Kernel是啥

Linux 内核(kernel)