有关Linux系统的模块,其信息及参数可以在/sys/module里进行查找或设置。
/sys/module文件夹由以下结构组成:
内容:/sys/module/<MODULENAME>。
描述:
内核中的模块的名称。 如果该模块是作为动态模块加载的,这个模块的名字就会一直显示出来。 如果它被直接内置到内核中,只有当它有一个版本或至少一个参数时才会显示出来。
注意:内置情况下的创建条件不是设计要求,将来可能会被删除。
内容:/sys/module/<MODULENAME>/parameters
描述:
这个目录包含多个文件,每一个都是模块的参数,能够在运行时改变。 关于这些参数的内容和它们的作用,请参见各个模块的文档。
注意:各个参数的名称和值并不稳定,只是它们将被放在sysfs的这个位置。 关于不同参数的稳定性,请参见各个驱动程序的文档。
内容:/sys/module/<MODULENAME>/refcnt
描述:
如果该模块能够从内核中卸载,这个文件将包含该模块的当前引用计数。
注意:如果模块被内置到内核中,或者如果CONFIG_MODULE_UNLOAD内核配置值没有被启用,这个文件将不会出现。
内容:/sys/module/<MODULENAME>/srcversion
描述:
如果模块的源代码有MODULE_VERSION,这个文件将包含源代码的校验和(checksum)。
举个例子,比如printk模块的是否显示时间戳的参数是:
$ cat /sys/module/printk/parameters/time
Y
这个表示的是在使用dmesg显示内核log信息时,是否显示前面的时间戳。
$ dmesg | tail -n 2
[ 3724.744187] usbcore: registered new interface driver rndis_host
[ 3724.752540] usbcore: registered new interface driver rndis_wlan
参考:
https://www.kernel.org/doc/Documentation/ABI/stable/sysfs-module