web-dev-qa-db-ja.com

io.cでのrsyncエラーの原因不明のエラー(コード255)

スクリプトを使用してSudo crontabでrsyncを実行していました。スクリプトは、双方向のrsyncを実行します(serverAからserverBへ、およびその逆)。両方のサーバーマシンを再起動した後、rsyncがSudo crontabで機能しません。新しいcronjobもセットアップしましたが失敗します。エラーは次のとおりです。

rsync error: unexplained error (code 255) at io.c(600) [sender=3.0.6]
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]

ただし、ターミナルから実行すると、ryncスクリプトは問題なく期待どおりに動作します。助けてください。

8
kabeer

rsync接続が予期せず閉じられる原因の1つは、特にリモートホストの違いを確認するためにファイルチェックサムを計算するのに時間がかかる場合のタイムアウトの問題です。

この問題を回避するには、これらの設定を~/.ssh/configまたは/etc/ssh/ssh_configに追加する必要があります。

Host *
  ServerAliveInterval 30
  ServerAliveCountMax 6

オプションで、リモートサーバー(/etc/ssh/sshd_config内)でも同様です。

ClientAliveInterval 30
ClientAliveCountMax 6

参照: オプションServerAliveIntervalおよびClientAliveIntervalの意味?

3
kenorb

これは、接続が拒否されたときに発生するようです。

ssh:ホストポート2222に接続:接続が拒否されました

rsyncエラーが続く:

rsync:接続が予期せず閉じました(これまでに0バイトを受信しました)[レシーバー] rsyncエラー:/SourceCache/rsync/rsync-45/rsync/io.c(453)での原因不明のエラー(コード255)[レシーバー= 2.6.9]


考えられる理由:

  • 私のシナリオでは、ファイアウォールの問題がありました。穴をあけます。
  • 間違ったパスワード(問題に対処する可能性は低いですが、同じエラーが発生します)
3
SwiftArchitect

関連情報がほとんどないことを考えると、少し難しいですが、一般的なルールとして、コマンドがプロンプトからは機能するがcronジョブからは機能しない場合は、完全なパスを指定する必要があるためです。コマンド。 cronジョブには通常のユーザー環境がありません。これは特に、通常のユーザーと同じPATHを持っていないことを意味します。

3
John Gardeniers

Fail2banリストをご覧ください。

コマンド「fail2ban-client set YOURJAILNAMEHERE unbanip IPADDRESSHERE」を使用して禁止を解除し、再試行してください。

0
Linkinall