snmpd не регистрирует pid-файл в Ubuntu 18.04
Пакет snmpd в Ubuntu 18.04 (устанавливается с apt-get) не регистрирует файл pid под /var/run даже если /etc/default/snmpd гласит:
export MIBS=
SNMPDRUN=yes
SNMPDOPTS='-Lsd -Lf /dev/null -u Debian-snmp -g Debian-snmp -I -smux,mteTrigger,mteTriggerConf -p /run/snmpd.pid'
Просматривая запущенный процесс с ps -axu Я вижу, что у него нет -p определенный параметр:
Debian-+ 393 0.1 0.1 74052 12548 ? Ss Jun12 8:22 /usr/sbin/snmpd -Lsd -Lf /dev/null -u Debian-snmp -g Debian-snmp -I -smux mteTrigger mteTriggerConf -f
В Ubuntu 16.04 конфигурация более или менее одинакова:
export MIBS=
SNMPDRUN=yes
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -g snmp -I -smux,mteTrigger,mteTriggerConf -p /run/snmpd.pid'
А также ps -axu действительно показывает -p параметр и действительно /var/run/snmpd.pid файл генерируется:
snmp 1253 0.0 0.0 66364 6856 ? S Jun12 4:25 /usr/sbin/snmpd -Lsd -Lf /dev/null -u snmp -g snmp -I -smux mteTrigger mteTriggerConf -p /run/snmpd.pid
Есть идеи, почему это происходит? Я не мог найти ничего конкретного в /var/log/syslog пока snmpd перезагружается.
2 ответа
Файл snmpd.service находится в /lib/systemd/system/snmpd.service, Там не хватает -p PIDFILE параметр.
Похоже, это известная проблема, исправленная в более позднем выпуске: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=878828
Я не могу воспроизвести вашу проблему, но я уверен, что она связана с systemd. В Ubuntu 18 все сервисы запускаются systemd и настраиваются в /etc/systemd/system/snmpd.service
Где-то в этом файле должен быть такой раздел:
...
[Service]
EnvironmentFile=-/etc/default/snmpd
ExecStart=/usr/sbin/snmpd $SNMPDOPTS
...
Может быть, переменная $SNMPDOPTS перезаписан, изменен или не используется в этом файле.