Придушити повідомлення сервера в rsync


12

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

Відповіді:


6

Для rsync він має --no-motdви можете використовувати для придушення motd для вашого сценарію і бачити лише вихід того, що передає rsync. Схоже, він був доданий у rsync 3.x, оскільки я не бачу цього варіанту в 2.x.

На сторінці "man" перелічено застереження про його використання при спробі отримати список модулів, які ви можете синхронізувати:

--no-motd

Цей параметр впливає на інформацію, яка виводиться клієнтом на початку передачі демона. Це пригнічує текст повідомлення MOTD, але також впливає на перелік модулів, які демон надсилає у відповідь на запит "rsync host ::" (через обмеження в протоколі rsync), так пропустіть цю опцію, якщо ви хочете запитати список модулів у демона.

Для scp, намагаючись торкнутися файлу ~/.hushlogin. Коли я копіюю файли, я не бачу motd, хоча ваш налаштування може бути іншим. Довідкова сторінка для 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не вдалося.
RonJohn

5

Якщо ваша версія rsyncне підтримує цю --no-motdопцію, введення LogLevel quietв дію ~/.ssh/configзробить свою справу.


Цей LogLevel quietваріант спрацював для мене. Примітка : я мусив створити файл ( ~/.ssh/config), але я ставлю в один рядок і voila! більше не /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.