カラクリスタ

ただの「人」の個人ブログ。人です

pycronを使って一定時間毎にバックアップを取るようにした

概要: pycron を使って定期的に rsync でバックアップ。


二日前から rsync 使って外付け HDD にバックアップを取り始めたんだけど、 PC 起動時に rsync を実行するのはちょっとイヤンだったので、 バックアップを取る方法を変更した。

どいうことかというと、前は PC 起動時に rsync を起動してごにょごにょやってたんだけど、

  1. 再起動を繰り返したい時に毎度 rsync が実行される
  2. すべての処理が終わるのに毎回一分ぐらい時間がかかる

という二点がイヤンだったので、 pycron 使って 一時間毎に rsync を実行するように変更した。

pycron っていうのは Python で実装された Windows 用の cron で、サービスとして登録して使える代物。 で、rsync を実行する bat ファイルを pycron に登録して、毎時 0 分ちょうどにバックアップを取るようにしてある。

でまあそのときにコマンドプロンプトが表示されてビミョーだったので、

あとはまあ bat ファイル内で rsync の出力をログファイルにリダイレクトするようにしたりして、 これでバッチリだーと思ってたんだけど、実際に実行してみたらPermission deniedというエラーが出たという。

でまあこれはどうも、バックアップ元と先のディレクトリの Windows のアクセスコントロールが原因だったようで、 Explorer のフォルダオプション->表示->簡易ファイルの共有を使用するというのオフにして、 バックアップの元と先のディレクトリにちょっと危険かもしれないけど Everyone にアクセス権限与えてやったらなんとかなった。

で、これで様子見てるんだけど、一応動いてるもよう。

まあ CD リッピングした後とかは rsync の同期に時間がかかりそうだけど、 それ以外は一分ぐらいで処理が終わるので、ちょうどいい感じ。

まあバックアップの方法はようやくこれで落ち着いたかなという感じ。 pycron を導入したおかげで他にも定期実行ができるようになったので、 他にも定期処理を登録してみるのもいいかなと思ってるところ。

まあ自分の所はこんな感じ。やっぱりバックアップは重要ですよ?

FIXME