у нас есть Linux машина Redhat 6
когда мы печатаем все параметры из /etc/sysctl.conf, мы видим только ~ 20, но когда мы выполняем sysctl -a, мы видим более 200
так откуда sysctl -a выводит все эти параметры?
или например
когда мы делаем
sysctl -w variable=value
как узнать, где следует сохранить переменную?
второй
как узнать каждый параметр, динамический или статический?
Опция -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