web-dev-qa-db-ja.com

rsnapshotのsync / sync_firstコマンドが毎回すべてのファイルをバックアップするのはなぜですか?

Rsnapshotを(ssh経由で)リモートバックアップで機能させようとしています。動作する構成があり、すべてのバックアップを実行できます。

私の会議では、sync_first=1を有効にしました。私が理解しているように、これは常に最初にrsnapshot syncコマンドを実行して実際にバックアップファイルを取得し、次にrsnapshot hourlyコマンドを実行して単にバックアップをシンボリックリンクしてローテーションする必要があることを意味します。

今問題。これが仕様によるものかどうかはわかりませんが、リモートマシンでrsnapshot synceveryファイルを実行するたびに、それ以降に変更されたかどうかに関係なく、再びバックアップされることに気付きました。最後のバックアップ。これは、rsnapshot syncコマンドに1時間以上かかることを意味します。

これは設計された動作ですか?

hourly/daily/weeklyを実行する前に、1時間ごとにsyncを実行する必要がありますか?

5
Timmy O'Mahony

はい、最初にsyncを実行する必要があります。 sync.syncディレクトリに同期します。次に、hourly.syncからhourly.0に回転します。良い点は、rsnapshot syncが中断された後、rsnapshot syncを再度実行でき、中断したところから続行できることです。

私はこれをcrontabに持っています:

# make backups every 2 hours - and skip hourly backups at night
0 0,6,8,10,12,14,16,18,20,22 * * * /opt/bin/rsnapshot sync && /opt/bin/rsnapshot hourly

# rotate a daily every night at 5
0 5 * * * /opt/bin/rsnapshot daily

上記のcrontabで、rsnapshot syncが警告を生成したが、それでもバックアップを完了できる場合は、エラーコード2で返されることに注意してください。つまり、rsnapshot hourlyは実行されません。これが毎回発生する場合は、毎時も毎日もありません。.syncディレクトリだけです。

2
Frank Kusters