Я наполовину написал сценарий nagios и меня раздражает SSH.
Согласно странице руководства:
-q Quiet mode. Causes all warning and diagnostic messages to be
suppressed.
Тем не менее, если я включу флаг молчания, а затем передаю неверный порт, я все равно получаю сообщение об ошибке:
$ ssh user@localhost -q -p test
Bad port 'test'
Это проблема, потому что это сделает это сообщение первой строкой, и это то, что перехватывает Nagios. Мне нужно вывести что-то вроде «Предупреждение | Ошибка SSH» после получения != 0
код выхода из ssh, но первая строка, которую я могу вывести, будет строкой 2.
Как я могу сделать SSH ИСТИННО тихим?
Примечание: я не был уверен, стоит ли размещать этот вопрос на сервере, суперпользователе или stackoverflow. Я выбрал serverfault, так как пользовательская база, вероятно, больше всего знакома с обходными путями cli SSH и cli скриптов.
ssh user@localhost -q -p test 2> /dev/null
перенаправит stderr
в / dev / null.
Или самый простой способ сохранить LogLevel QUIET
в файле конфигурации:
$ cat ~/.ssh/config
Host *
IdentityFile ~/.ssh/id_rsa
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
LogLevel QUIET
...
В итоге получается тот же результат, что и выше, с меньшим набором текста.
Ура