Подавить сообщение сервера в rsync


12

Когда я rsyncили scpс определенного сервера, я получаю довольно длинное сообщение, сообщающее мне правила сервера. Однако, когда я настраиваю регулярные извлечения, я хотел бы иметь возможность подавлять эти сообщения в своих журналах. Просматривая справочную страницу, можно предположить, что это -qдолжно работать, но это только успокаивает сообщения от самого scp. Как я могу это сделать?

Ответы:


6

Для rsync у него есть функция, которую --no-motdвы можете использовать для подавления motd для вашего скрипта и просмотра только того, что передает rsync. Похоже, что он был добавлен в rsync 3.x, так как я не вижу эту опцию в 2.x.

Страница man содержит предупреждение о том, что его нельзя использовать при попытке получить список модулей, которые вы можете использовать rsync:

--no-MOTD

Эта опция влияет на информацию, которая выводится клиентом в начале передачи демона. Это подавляет текст сообщения дня (MOTD), но также влияет на список модулей, которые демон отправляет в ответ на запрос «rsync host ::» (из-за ограничения в протоколе rsync), поэтому опустите эту опцию, если вы хотите запросить список модулей у демона.

Для scp, пытаюсь дотронуться до файла ~/.hushlogin. Когда я копирую файлы, я не вижу motd, но ваши настройки могут отличаться. Страница man для loginболее подробной информации:

Если файл .hushlogin существует, то выполняется «тихий» вход (это отключает проверку почты и печать времени последнего входа в систему и сообщения дня). В противном случае, если / var / log / lastlog существует, печатается время последнего входа в систему (и записывается текущий вход в систему).


7
rsync --no-motdне работает для меня. SSH MOTD все еще показывается.
Алисия

17

Если вы не хотите связываться с вашим локальным ~/.ssh/configфайлом и --no-motdопция не работает для вас, я успешно установил RSYNC_RSHпеременную env.

RSYNC_RSH="ssh -q" rsync

Вы также можете попробовать использовать опцию rsync -e

rsync -e 'ssh -q'

Это сработало для меня, когда --no-motdне удалось.
РонДжон

5

Если ваша версия rsyncне поддерживает --no-motdопцию, кладя LogLevel quietв ~/.ssh/configбудет делать трюк.


LogLevel quietВариант работал для меня. Примечание : мне нужно было создать файл ( ~/.ssh/config), но я поместил в одну строку, и вуаля! больше не /etc/issue.netпоявляется!

0

В моей системе SuSE 11 я нашел баннерное сообщение в /etc/issue.net, а затем отметил строку баннера в моем файле / etc / ssh / sshd_config.

#banner /etc/issue.net

Затем перезапустил демон ssh

service sshd restart

Это подавляло баннер при использовании scp внутри скриптов и очищало лог-файлы.


-1

Вероятно, вы можете подавить motd, перенаправив STDERRна / dev / null, но таким образом вы пропустите все другие сообщения об ошибках.

scp src dst 2> /dev/null

Это не вариант, весь вывод направляется в файл журнала, который необходимо просмотреть позже - ошибки важны!
Зацепил
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.