BackupPCは私のLANでうまく機能しますが、私のリモートサーバーのバックアップに問題があります。 ssh経由でrsyncを使用していますが、リモートサーバーが遠く離れているため、最大pingを500に増やしました。
これが私のエラーログです(ユーザーと1.2.3.4はマスクされた情報です):
ディレクトリの完全バックアップが開始されました/実行中:/ usr/bin/ssh -p 2222 -q -x -l user 1.2.3.4/usr/bin/rsync --server --sender --numeric-ids --perms --owner --group -D --links --hard-links --times --block-size = 2048 --recursive--ignore-times。 /
Xfer PIDs are now 5705 Got remote protocol 30 Negotiated protocol version 28 Sent include: /home Sent include: /home/user Sent exclude: /* Sent exclude: /home/* Sent exclude: /home/user/folder1 Sent exclude: /home/user/folder2 Xfer PIDs are now 5705,5744 [ skipped 22380 lines ] Read EOF: Tried again: got 0 bytes Can't write 4 bytes to socket finish: removing in-process file home/user/site15/something/else/here/p4677545.jpg Child is aborting Done: 19205 files, 799171349 bytes Got fatal error during xfer (aborted by signal=PIPE) Backup aborted by user signal Saving this as a partial backup
ユーザーbackuppcとしてリモートサーバーにsshしようとすると、パスワードを要求しなくても機能します。一般的なログは次のようになります。
> 2012-02-2900:00:00ディレクトリ/の完全バックアップが開始されました
> 2012-02-2901:00:12シグナルPIPE後のバックアップを中止します
> 2012-02-29 01:00:13 xfer中に致命的なエラーが発生しました(signal = PIPEによって中止されました)
> 2012-02-2902:00:01ディレクトリ/の完全バックアップが開始されました
> 2012-02-2903:01:09シグナルPIPE後のバックアップを中止します
> 2012-02-29 03:01:11 xfer中に致命的なエラーが発生しました(signal = PIPEによって中止されました)
> 2012-02-2910:56:16ディレクトリ/の完全バックアップが開始されました
> 2012-02-2911:59:18シグナルPIPE後のバックアップの中止
> 2012-02-29 11:59:20 xfer中に致命的なエラーが発生しました(signal = PIPEによって中止されました)
> 2012-02-2911:59:20保存された部分ダンプ0
> 2012-02-2912:25:15ディレクトリ/の完全バックアップが開始されました
> 2012-02-2911:26:55シグナルPIPE後のバックアップを中止します
> 2012-02-29 13:26:57 xfer中に致命的なエラーが発生しました(signal = PIPEによって中止されました)
> 2012-02-2916:48:52ディレクトリ/の完全バックアップが開始されました
> 2012-02-2919:51:41シグナルPIPE後のバックアップを中止します
> 2012-02-29 17:51:42 xfer中に致命的なエラーが発生しました(signal = PIPEによって中止されました)
> 2012-02-2919:51:42保存された部分ダンプ0
> 2012-02-2918:13:27ディレクトリ/の完全バックアップが開始されました
> 2012-02-2919:15:19シグナルPIPE後のバックアップを中止します
> 2012-02-29 19:15:20 xfer中に致命的なエラーが発生しました(signal = PIPEによって中止されました)
> 2012-02-2919:15:20保存された部分ダンプ0
> 2012-02-2919:19:55ディレクトリ/の完全バックアップが開始されました
ほとんどの場合、1h01 'または1h02'の後に終了します。秒単位のこれらの値は3660と3720です。多分それらはいくつかのオプションで表示されます...?何かコメントはありますか?
ありがとう
編集:私が試したが機能しなかったもの:-ServerAliveInterval = 300、ServerAliveInterval = 60-PingMaxMsecを500に増やしました-rsyncオプション--timeoutと--contimeoutを20秒と200秒に設定しました(両方の値を両方のオプションで試しました) -rsyncからブロックサイズオプションを削除します
何も機能しませんでした。通常、サイズに関係なく、さまざまなファイルで停止します。
新しい編集:このリモートsshサーバーに手動でログインし、ターミナルを1時間26インチそのままにしておくと、切断されます。これがBackupPCも切断される理由のようです。の実行をシミュレートする方法はありますか? BackupPCのセッション内のコマンド?
フルバックアップコマンドを次々に手動で発行してみることができます。実行するたびに、backuppcはデータの異なるチャンクを転送します。バックアップが成功すると、すべてのデータが転送されたことがわかります。
Sshの圧縮オプションを使用して、プロセスを高速化し、反復を減らすこともできます。
追加の増分バックアップは、通常、サイズがはるかに小さく、時間が短いため、接続がタイムアウトしないため、問題は発生しません。
構成内で $ Conf {ClientTimeout} の値を確認し、それに応じて値を増やす必要があります。
実装上の制約により、BackupPCには、より長いファイルの転送中に何が起こっているかについての情報がほとんどありません。デッド転送が永久にハングするのを防ぐために、転送は$Conf{ClientTimeout}
秒後にキャンセルされます。リモートサーバー上の単一のファイルがこの値の設定よりもバックアップに時間がかかる場合、バックアップ転送は中止されます。
あなたまたはプロバイダーがファイアウォールを持っている場合は、そのsession-ttlを確認してください。一般的な値は3600です...ファイアウォールが手元にない場合は、ここで説明するように、オプションserveraliveintervalを指定してsshを使用することもできます。 https://unix.stackexchange.com/questions/34004/how-does-tcp-keepalive-work-in-ssh backuppcはそれに応じて変更できます。