我们有 Linux 机器 Redhat 6
当我们从 /etc/sysctl.conf 打印所有参数时,我们只看到~20 个,但是当我们执行 sysctl -a 时,我们可以看到超过 200 个
那么 sysctl -a 从哪里打印所有这些参数?
或者例如
当我们这样做的时候
sysctl -w variable=value
如何知道变量应该保存在哪里?
第二
如何知道每个参数是动态的还是静态的?
答案1
-a
该选项sysctl
打印手册中所述的所有可用选项。
-a, --all
Display all values currently available.
这些选项来自内置或加载的 Linux 内核模块。部分(如果不是全部)模块提供了一些可通过 进行调整的变量sysctl
。/etc/sysctl.conf
已更改的变量。任何变量在未更改时都使用其默认值。
请注意,有多个文件可用于加载系统参数,例如下的文件/etc/sysctl.d/
。
如果你想知道一个变量是否可以改变,你可以查看 下的相应文件/proc/sys
。有些文件(变量)是只读的,而有些则可以读写。
下面是一个可改变变量(第一个)和一个只读变量(第二个)的示例/proc/sys/kernel/
-rw-r--r-- 1 root root 0 Apr 4 10:23 shmmax
-r--r--r-- 1 root root 0 Apr 4 10:14 version