Я новый пользователь системы Linux.
Как перезагрузить все переменные sysctl без перезагрузки моего сервера?
Команда sysctl используется для изменения переменных ядра Linux во время выполнения.
Переменные считываются и записываются из /proc/sys/location с использованием procfs.
Синтаксис следующий для определения переменной:
variable=value
Чтение переменной из командной строки
Введите следующую команду
$ sysctl kernel.ostype
Пример вывода:
kernel.ostype = Linux
Чтобы увидеть все переменные, передайте опцию -a:
$ sysctl -a $ sysctl -a | grep kernel $ sysctl -a | more
Пример вывода
abi.vsyscall32 = 1 crypto.fips_enabled = 0 debug.exception-trace = 1 debug.kprobes-optimization = 1 dev.hpet.max-user-freq = 64 dev.mac_hid.mouse_button2_keycode = 97 dev.mac_hid.mouse_button3_keycode = 100 dev.mac_hid.mouse_button_emulation = 0 dev.raid.speed_limit_max = 200000 dev.raid.speed_limit_min = 1000 dev.scsi.logging_level = 0 fs.aio-max-nr = 65536 fs.aio-nr = 5352 fs.binfmt_misc.status = enabled fs.dentry-state = 1076563 1034844 45 0 0 0 fs.dir-notify-enable = 1 fs.epoll.max_user_watches = 418058 fs.file-max = 204059 fs.file-nr = 1664 0 204059 fs.inode-nr = 280530 70402 fs.inode-state = 280530 70402 0 0 0 0 0 fs.inotify.max_queued_events = 16384 fs.inotify.max_user_instances = 128 fs.inotify.max_user_watches = 8192 fs.lease-break-time = 45 fs.leases-enable = 1 fs.mqueue.msg_default = 10 fs.mqueue.msg_max = 10 fs.mqueue.msgsize_default = 8192 fs.mqueue.msgsize_max = 8192 fs.mqueue.queues_max = 256 fs.nfs.nfs_congestion_kb = 45760 fs.nfs.nfs_mountpoint_timeout = 500 fs.nfs.nlm_grace_period = 0 fs.nfs.nlm_tcpport = 0 fs.nfs.nlm_timeout = 10 ..... .. .. vm.page-cluster = 3 vm.panic_on_oom = 0 vm.percpu_pagelist_fraction = 0 vm.scan_unevictable_pages = 0 vm.stat_interval = 1 vm.swappiness = 60 vm.user_reserve_kbytes = 63568 vm.vfs_cache_pressure = 100 vm.zone_reclaim_mode = 0
Записать переменную из командной строки
Синтаксис:
# sysctl -w variable=value
Чтобы включить пересылку пакетов для IPv4, введите:
# sysctl -w net.ipv4.ip_forward=1
Перезагрузите настройки из всех файлов конфигурации системы
Введите следующую команду, чтобы перезагрузить настройки из файлов конфигурации без перезагрузки системы:
# sysctl --system
Настройки считываются из всех следующих файлов конфигурации системы:
- /run/sysctl.d/*.conf
- /etc/sysctl.d/*.conf
- /usr/local/lib/sysctl.d/*.conf
- /usr/lib/sysctl.d/*.conf
- /lib/sysctl.d/*.conf
- /etc/sysctl.conf
Постоянная конфигурация
Вам нужно отредактировать файл /etc/sysctl.conf для установки системных переменных:
# vi /etc/sysctl.conf
Изменить или добавить в файл.
Закройте и сохраните файл.
Чтобы загрузить настройки sysctl из указанного файла или /etc/sysctl.conf, если ничего не указано, введите:
# sysctl -p