web-dev-qa-db-ja.com

rsyncでサーバーメッセージを非表示にする

特定のサーバーからrsyncまたはscpを実行すると、サーバーのルールを伝えるかなり長いメッセージが表示されます。ただし、定期的なプルを設定する場合は、ログでこれらのメッセージを抑制できるようにしたいと考えています。 manページを見ると、-qは機能するはずですが、scp自体からのメッセージを静めるだけです。これどうやってするの?

12
Hooked

Rsyncの場合、--no-motdスクリプトのmotdを抑制して、rsyncが転送しているものの出力のみを表示するために使用できます。 2.xではそのオプションが表示されないため、rsync 3.xで追加されたようです。

マニュアルページには、rsyncできるモジュールのリストを取得しようとするときに、それを使用しないことに関する警告がリストされています。

--no-motd

このオプションは、デーモン転送の開始時にクライアントによって出力される情報に影響します。これは、今日のメッセージ(MOTD)テキストを抑制しますが、(rsyncプロトコルの制限により)デーモンが「rsync Host ::」要求に応答して送信するモジュールのリストにも影響を与えるため、デーモンからモジュールのリストを要求する場合は、このオプションを省略してください。

Scpの場合、ファイル~/.hushlogin。ファイルをscpしてもmotdは表示されませんが、設定が異なる場合があります。 loginのmanページに詳細情報があります:

.hushloginファイルが存在する場合は、「静かな」ログインが実行されます(これにより、メールのチェックと、最後のログイン時刻とその日のメッセージの印刷が無効になります)。それ以外の場合、/ var/log/lastlogが存在すると、最終ログイン時刻が出力されます(現在のログインが記録されます)。

6
Mark McKinstry

ローカルの~/.ssh/configファイルをいじりたくなく、--no-motdオプションも機能しない場合は、RSYNC_RSH環境変数の設定に成功しました。

RSYNC_RSH="ssh -q" rsync

Rsyncオプション-eを使用することもできます

rsync -e 'ssh -q'
17
166_MMX

お使いのバージョンのrsync--no-motdオプションをサポートしていない場合は、LogLevel quiet~/.ssh/configに入れるとうまくいきます。

5
Robert Wallace

SuSE 11システムでは、/ etc/issue.netでバナーメッセージを見つけ、/ etc/ssh/sshd_configファイルでバナー行を書き直しました。

#banner /etc/issue.net

次に、sshデーモンを再起動しました

service sshd restart

これにより、スクリプト内でscpを使用するときにバナーが抑制され、ログファイルがクリーンアップされました。

0
Eeyore