LINUX.ORG.RU
решено ФорумAdmin

Zabbix agent не может выполнить скрипт.

 , ,


0

1

Добрый день, прошу помощи людей знакомых с Zabbix, в настройке мониторинга smart, упёрся в разрешение прав. Пациент sles 15+zabbix 4.4 Настройки производил по статье: https://github.com/v-zhuravlev/zbx-smartctl/blob/master/README.md Всё сделал по инструкции кроме установки пакетов для raid и nvme. В остальном насторожило что «/etc/zabbix/scripts» это файл, а не папка, и владельца я сменил на этот файл... С учетом этих изменений исправил путь во 2 строке у файла «/etc/sudoers.d/sudoers_zabbix_smartctl» на «/etc/zabbix/scripts» Скрипт стартует и выдаёт информацию о дисках. Затем после проверки на сервере агент выдал что пароль для рута не подходит, я пошёл смотреть файл /etc/sudoers. В ней последняя строка «закоменчена»: #includedir /etc/sudoers.d Убрал знак «#», проверил zabbix теперь если перезапустить службу агента через sudo:

/etc/sudoers: syntax error near line 89 sudo: parse error in /etc/sudoers near line 89 sudo: no valid sudoers sources found, quitting sudo: unable to initialize policy plugin

Запуск агента без sudo приводит к такой ошибке zabbix : parse error in /etc/sudoers near line 89 ; TTY=unknown ; PWD=/ ; USER=root ; ругается на строку которую я «разкомментировал», попробовал добавить строчку вида «zabbix ALL=(ALL) ALL NOPASSWD: smartctl,/etc/zabbix/scripts», но ошибка точно такая же. Что делать дальше не знаю.

Пользователь Zabbix в системе есть

Ответ на: комментарий от anonymous

внёс коррективы но из под zabbix, команда sudo /etc/zabbix/smartctl-disks-discovery.pl запрашивает пароль root. это скорее всего из за «sg_scan: Error opening /dev/sg0 : Permission denied», но sg_scan я тоже добавил в список разрешенных команд sudoers... Как разрешить открытие эти устройств?

Cmnd_Alias SMARTCTL = /usr/sbin/smartctl Cmnd_Alias SMARTCTL_DISCOVERY = /etc/zabbix/smartctl-disks-discovery.pl Cmnd_Alias SG_SCAN = /usr/bin/sg_scan

## Defaults specification ## Defaults!SMARTCTL !logfile, !syslog, !pam_session Defaults!SMARTCTL_DISCOVERY !logfile, !syslog, !pam_session Defaults!SG_SCAN = /usr/bin/sg_scan

## ## User privilege specification ## root ALL=(ALL) ALL zabbix ALL=NOPASSWD: SMARTCTL, SMARTCTL_DISCOVERY, SG_SCAN

qvaqsha ()