17

スクリプトの実行中にランダムなポイントで WAN 接続をリセットする、くだらない ISP を扱っています。転送がこのリセットを生き延びて続行することを望みます。このスクリプトを手動で起動するのではなく、現在 cron / launchd を使用しています。

以下に示すように、かなり基本的なスクリプトがあります。

rsync -rltv --progress --partial -e "ssh -i <key> -o ConnectTimeout=300" <remotedir> <localdir>

代わりに、タイムアウトを rsync セクションに配置したほうがよいでしょうか?

例えば:

rsync -rltv --progress--partial --timeout=300 -e "ssh -i <key>" <remotedir> <localdir>

ありがとう!

4

2 に答える 2

17

ConnectTimeoutSSH がサーバーとの接続を確立しようとしている場合にのみ適用され、データ転送中のタイムアウトとは関係ありません。したがって、--timeoutオプションを使用して、必要なことを行う必要があります。

于 2012-10-17T17:05:08.017 に答える
0

rsync を再実行してみてください。また、ssh オプションなしで試してください。ネットワーク接続が失われたため、ジョブが失敗した可能性があります。cron を介して 2 時間ごとに実行されているデータセンター間でファイルをコピーする rsync ジョブがあり、1 日に約 1 回失敗します。

于 2014-07-09T14:29:26.837 に答える