ホスト定義で次のサービスが定義されています。
define service {
use generic-service
host_name myhost.com
service_description swapcheck
check_command check_ssh_swap
}
また、commands.cfg の次の内容:
define command {
command_name check_ssh_swap
command_line /home/nagios/bin/check_by_ssh -p port -H ip -C "/home/nagios/bin/check_swap -w 20% -c 5%"
}
両方の cfg ファイルがロード時に nagios にロードされます。そして nagios -v /etc/nagios/nagios.cfg はエラーを返しません。
コマンドを実行しようとすると
/home/nagios/bin/check_by_ssh -p port -H ip -C "/home/nagios/bin/check_swap -w 20% -c 5%"
nagios ユーザーと直接接続すると、問題なく動作し、結果が返されますが、nagios 自体がスケジュールされたチェックを実行すると、常に取得されます
Return code of 126 for check of host 'host' was out of bounds
ここで何が欠けていますか?明らかに、すべてのパス、キーなどは正しいです。そうでなければ、問題なく手動で実行することはできません。