我有几个关于处理procfs或sysctl值的问题。
一个function可以启用丢失/ proc文件?
缺less/proc或sysctl条目是否意味着该特定内核没有启用该选项? 换句话说:一个内核是否可以启用或支持一个function,而不需要相应的/proc条目呢? 我认为没有人通过删除填充/proc的代码部分来更改内核源代码。
如果可以的话 – 是否默认为特定的值?
我想知道如果相应的proc文件不存在/proc值默认值。 如果由于某种原因,我的内核支持aslr ,但/sys/kernel/randomize_va_space不存在,是否会导致aslr处于活动状态?
所有设置的行为是否相同?
所有内核,版本和function的行为是否相同? 还是必须分别获取每个设置的这些信息?
例如:
如果/proc/sys/kernel/sysrq在我的机器上不存在,这是否意味着
Magic SysRQfunction在我的内核上不可用?
它是可用的?
它可以或不可以取决于其他一些我不知道的选项?
该function的特定代码是否包含硬编码的默认设置,并且该设置对于内核上的每个function都不同? 所以如果我想知道它默认的值是什么,我必须看看每个function的代码。
有很好的文档可以阅读关于内核设置的含义。 有没有解释默认行为的文档?
/proc和/sys目录用于暴露Liunx内核的“调整旋钮”。 在/proc或/sys有一些没有任何条目的工作内核特性是完全可能的(例如,如果这个内核特性没有任何参数,也没有任何发布给用户的话),没有条目需要。
但是,如果内核文档有一些logging/引用的条目,但是找不到它们,则有两种可能性:
如果你认为在你的内核上启用了一些function,但是在/proc和/sys找不到任何条目,请查看你的内核configuration文件(通常可以通过/boot或者/proc/config.gz的文件/proc/config.gz )