Pomiń komunikat serwera w rsync

12

Kiedy ja rsynclub scpz określonego serwera otrzymuję dość długi komunikat informujący mnie o zasadach serwera. Jednak gdy konfiguruję regularne ściągnięcia, chciałbym móc ukryć te wiadomości w moich logach. Przejrzenie strony podręcznika sugeruje, że -qpowinno to działać, ale tylko ucisza wiadomości od samego scp. W jaki sposób mogę to zrobić?

Haczykowaty
źródło

Odpowiedzi:

6

W przypadku rsync --no-motdmożna go użyć do stłumienia motd skryptu i zobaczenia tylko tego, co rsync przenosi. Wygląda na to, że został dodany w rsync 3.x, ponieważ nie widzę tej opcji w 2.x.

Strona podręcznika zawiera ostrzeżenie o nieużywaniu go podczas próby uzyskania listy modułów, które można rsync:

--no-motd

Ta opcja wpływa na informacje wyprowadzane przez klienta na początku transferu demona. Pomija to tekst wiadomości dnia (MOTD), ale wpływa również na listę modułów wysyłanych przez demona w odpowiedzi na żądanie „host rsync ::” (z powodu ograniczenia protokołu rsync), więc pomiń tę opcję, jeśli chcesz zażądać listy modułów od demona.

W przypadku SCP próba dotknięcia pliku ~/.hushlogin. Kiedy skanuję pliki, nie widzę motd, ale twoja konfiguracja może być inna. Strona podręcznika użytkownika loginzawiera więcej informacji:

Jeśli plik .hushlogin istnieje, wykonywane jest „ciche” logowanie (wyłącza to sprawdzanie poczty oraz drukowanie czasu ostatniego logowania i wiadomości danego dnia). W przeciwnym razie, jeśli istnieje / var / log / lastlog, drukowany jest czas ostatniego logowania (i rejestrowane jest bieżące logowanie).

Mark McKinstry
źródło
7
rsync --no-motdnie działa dla mnie Nadal wyświetlany jest komunikat SSH MOTD.
Alicia,
17

W przypadku, gdy nie chcesz zadzierać z ~/.ssh/configplikiem lokalnym i --no-motdopcja ta również nie działa, udało mi się ustawić RSYNC_RSHzmienną env.

RSYNC_RSH="ssh -q" rsync

Możesz także spróbować użyć opcji rsync -e

rsync -e 'ssh -q'
166_MMX
źródło
To działało dla mnie, gdy --no-motdzawiodło.
RonJohn
5

Jeśli wersja rsyncnie obsługuje --no-motdopcji wsunąć LogLevel quietw ~/.ssh/configrade.

Robert Wallace
źródło
Ta LogLevel quietopcja działała dla mnie. Uwaga : musiałem utworzyć plik ( ~/.ssh/config), ale wstawiłem jedną linię i voila! nigdy więcej się nie /etc/issue.netpokazuje!
0

W moim systemie SuSE 11 znalazłem baner w /etc/issue.net, a następnie zaznaczyłem linię banera w moim pliku / etc / ssh / sshd_config.

#banner /etc/issue.net

Następnie zrestartował demona ssh

service sshd restart

To pomijało banner podczas używania scp wewnątrz skryptów i czyściło pliki dziennika.

Kłapouchy
źródło
-1

Prawdopodobnie możesz wyłączyć motd, przekierowując STDERRna / dev / null, ale w ten sposób przegapisz również wszystkie inne komunikaty o błędach.

scp src dst 2> /dev/null
jippie
źródło
To nie jest opcja, wszystkie dane wyjściowe są kierowane do pliku dziennika, który należy przejrzeć później - błędy są ważne!
Hooked