rsync を使ってバックアップを取るときに、--delete
オプションをつけることが多いと思いますが、ログを見ていると新しいファイルが転送される前に削除処理が実施されているため、バックアップ中は冗長性が失われているということが気になっていたので、ファイルが削除されるタイミングが調整できないものかと思っていろいろと調べてみました。
マニュアルを確認してみると、実は--delete
オプションにはいろいろ種類があるんですね。
--delete delete extraneous files from dest dirs
--delete-before receiver deletes before xfer, not during
--delete-during receiver deletes during the transfer
--delete-delay find deletions during, delete after
--delete-after receiver deletes after transfer, not during
the default delete mode when you specify --delete is now --delete-during when both ends of the connection are at least 3.0.0 (use --del or --delete-during to request this improved deletion mode explicitly). See also the --delete-delay option that is a better choice than using --delete-after.
ちなみに、rsync が 3.0.0 以降の場合--delete
は--delete-during
と同じ指定(つまり、転送しながら削除対象を見つけたら削除)、それ以前の場合は--delete-before
(ファイル転送をする前に削除)という動作になるようです。
今回の僕のユースケースでは--delete-delay
か--delete-after
を使うことになりますが、特に同期対象の容量が大きい場合に--delete-after
とすると、一時的に大きなディスクスペースを取ることになるので disk full にならないような十分な容量設計を行う必要がありそうです。
僕の仕事場は DX に関する危機感がまったくないので、経理関係の書類からハンコが全く減りません。
そんなわけで、年に1回程度シャチハタのインクの補充が必要になるため、ボトルのインクを買ってしまいました。
20ml 入りですが、1回の補充で1滴くらいしか必要ないので、これでもおそらく一生使い切れないと思います。