Инструменты пользователя

Инструменты сайта


sysctl

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

sysctl [2018/08/13 01:23] (текущий)
Строка 1: Строка 1:
 +====== sysctl ======
  
 +{{htmlmetatags>​
 +metatag-description=(Примеры использования программы sysctl для настройки ядра Linux и FreeBSD.)
 +}}
 +{{ ::​proc-sysctl.jpg?​nolink |}}
 +
 +**sysctl** в BSD и Linux - программа,​ предназначенная для управления отдельными параметрами ядра, безопасности,​ сетевой подсистемы. Файл настроек /​etc/​sysctl.conf
 +После редактирования sysctl.conf применить изменения,​ без перезагрузки ОС, можно командой
 +<​file>​
 +# sysctl ​ -p
 +</​file>​
 +  * Показать максимальное количество файлов,​ которые могут быть открыты в ОС.<​code>​$ sysctl fs.file-max
 +fs.file-max = 202019</​code>​
 +
 +===== FreeBSD sysctl =====
 +Для просмотра всех доступных для чтения переменных:​
 +
 +  % sysctl -a
 +
 +Чтобы прочитать определённую переменную,​ например,​ kern.maxproc,​ введите:​
 +
 +  % sysctl kern.maxproc
 +  kern.maxproc:​ 1044
 +
 +Для присвоения значения переменной,​ используйте выражение вида переменная=значение:​
 +
 +  # sysctl kern.maxfiles=5000
 +  kern.maxfiles:​ 2088 -> 5000
 +
 +Изменяемые с помощью sysctl переменные обычно принимают значения либо строкового,​ либо целого,​ либо булевого типа. Переменные булевого типа могут принимать два значения (1 (истина) и 0 (ложь)).
 +
 +Если вы хотите устанавливать некоторые переменные автоматически при каждой загрузке компьютера,​ добавьте их в файл /​etc/​sysctl.conf. За дополнительной информацией обращайтесь к странице справочника sysctl.conf(5).
 +
 +<​file>​
 +net.inet.tcp.msl=7500 -- время ожидания ACK в ответ на SYN-ACK или FIN-ACK
 +net.inet.tcp.blackhole=2 -- все пакеты на закрытый порт отбрасываются без отсылки RST
 +net.inet.udp.blackhole=1 -- отбрасывать пакеты для ​ закрытых UDP портов net.inet.icmp.icmplim=50 -- чтобы не флудили по ICMP
 +kern.ipc.somaxconn=32768 -- увеличение числа одновременно открытых сокетов
 +kern.polling.enable=1 ​      -- небольшой тюнинг
 +kern.polling.user_frac=50 --  поллинга
 +net.inet.icmp.drop_redirect=1 -- редиректить нам не надо
 +net.inet.ip.redirect=0 -- запрещаем ответ на часть "​лишнего"​ icmp эти переменные,​
 +начиная с 6.0 уже имеют такие значения,​ но для успокоения души лучше их выставить принудительно
 +net.inet.icmp.maskrepl=0
 +net.inet.ip.sourceroute=0
 +net.inet.ip.accept_sourceroute=0
 +net.inet.icmp.bmcastecho=0
 +net.inet.ip.random_id=1
 +</​file>​
 +===== Linux sysctl =====
 +  * [[wpru>​Explicit Congestion Notification]] (ECN) — (Явное Уведомление о Перегруженности) <​file>​
 +# sysctl net.ipv4.tcp_ecn
 +net.ipv4.tcp_ecn = 2
 +</​file>​
 +====== Ссылки ======
 +  * [[wpru>​sysctl]]
 +  * [[http://​netsago.org/​ru/​notes/​2008/​10/​|«Настройка ядра Linux с помощью sysctl»]] — перевод на русский статьи с сайта linux.com.
 +  * [[http://​www.freebsd.org/​doc/​ru_RU.KOI8-R/​books/​handbook/​configtuning-sysctl.html|«Настройка с помощью sysctl»]] — Руководство FreeBSD.
sysctl.txt · Последние изменения: 2018/08/13 01:23 (внешнее изменение)