2015-05-20 2 views
0

Я создал простой плагин с использованием nagios для запуска с NRPE, и он отлично работает в командной строке, но когда я запускаю его через nrpe, он говорит: «NRPE: не читает вывод «Пользовательский плагин nagios не может читать вывод

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

Кто-нибудь знает, что происходит?

Вот это вызовы я использую:

/usr/lib64/nagios/plugins/check_nrpe -H 192.168.1.10 -p 5666 -c local_check 

Вот команда конфигурации в nrpe.conf

command[local_check]=/usrl/lib64/nagios/plugins/local_check 

Вот код для плагина (упрощенно я, очевидно, больше проверок, чтобы создать файл состояния):

#!/usr/bin/bash 

HOST="127.0.0.1" 
CACHE_FILE="/tmp/local_check" 

echo "0">$CACHE_FILE 
echo "This is the status code I want">>$CACHE_FILE 

ret_code=$(/usr/bin/cat $CACHE_FILE|/usr/bin/sed -n 1p) 
status=$(/usr/bin/cat $CACHE_FILE|/usr/bin/sed -n 2p) 
/usr/bin/cat $CACHE_FILE|/usr/bin/sed -n 2p 
exit $ret_code 

ответ

0

Я отключил SELinux и перезагрузил систему. После этого он работает, поэтому это проблема SELinux. Другие проблемы, которые могут возникнуть, открывают порт tcp 5666 в брандмауэре, отсутствующую библиотеку (сначала запускайте плагин из командной строки), и если это корневая операция, которая не может быть запущена плагином nagios, вам тоже нужно ее учитывать

 Смежные вопросы

  • Нет связанных вопросов^_^