Назад | Перейти на главную страницу

sysctl.conf не запускается при загрузке

В какой момент предполагается, что sysctl.conf будет прочитан во время загрузки и почему он может не работать? У меня есть следующие настройки, которые не применяются при перезагрузке:

net.bridge.bridge-nf-call-arptables = 0
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-filter-pppoe-tagged = 0
net.bridge.bridge-nf-filter-vlan-tagged = 0

fs.nfs.nlm_udpport = 32768
fs.nfs.nlm_tcpport = 32768

Первый раздел необходим для моста KVM, а второй - для запуска диспетчера блокировок NFS на известном порту. Однако после загрузки эти значения не вступили в силу. Если я сбегу sysctl -p, тогда они это делают.

Это не будет большой проблемой, за исключением того, что я не могу понять, как перезапустить диспетчер блокировок без перезагрузки. Я действительно хотел бы знать, почему sysctl.conf не работает при загрузке, но я бы согласился просто перезапустить диспетчер блокировок.

Это на сервере Ubuntu 10.04.2, ядро ​​2.6.32-31-server. Я знаю, что некоторые демоны проверяют разрешения в своих файлах конфигурации и отказываются работать, если они слишком разрешающие, но sysctl.conf - это 644 root: root, что, я уверен, используется по умолчанию.

Посмотри на Некоторые sysctl игнорируются при загрузке. Короче говоря, настройки применяются раньше, чем загружаются некоторые модули ядра.

В ubuntu он будет загружен как часть демона выскочки, запускающего файл /etc/init/procps.conf.

Убедитесь, что он есть, и что вы не отключили его.

Если это что-то вроде Debian, то при загрузке sysctl управляется /etc/init.d/procps. Для сравнения, мой стандартный выглядит так.

# /etc/init.d/procps: Set kernel variables from /etc/sysctl.conf
# Description:  Loads kernel parameters that are specified in /etc/sysctl.conf
which sysctl > /dev/null || exit 0
                   for file in /etc/sysctl.conf /etc/sysctl.d/*.conf ; do
                                   sysctl $quiet -p "$file"

Возможно, стоит проверить, есть ли он там, и не повреждены ли ваши символические ссылки инициализации уровня запуска. (мой в rcS.d только.). Это не конфиденциальный файл конфигурации, поэтому 644 разрешения не должны быть проблемой.