2016-08-23

Time Machine の除外設定をコマンドラインから一括設定する

毎度毎度、ブログが続かないダメ中年です。

Mac 使いの方は当然、Apple 様が用意してくださった素晴らしい『Time Machine』を使ってバックアップしているかと思いますが、パフォーマンスの問題からバージョン管理システムのフォルダ .svn とか .git はバックアップ対象から外して欲しかったりします。

ところが GUI から設定出来るのは固定パスのみ、ワイルドカードを使った設定は出来ないし、デフォルトで . から始まる隠しファイルは表示されないので非常に困ります。

ということで、コマンドラインから tmutil 使えば出来ないかと調べてみましたが…


…出来ないですね。

tmutil から出来るのは GUI から設定出来るフルパス指定の除外の他にファイルやフォルダにマークを付ける(恐らく拡張属性をつける)方法。
拡張属性を使った方法は移動しても引き継がれるし、コピーしても引き継がれると言う事で使い勝手はよさそうですが私がやりたい事とはちょっと違う。

違うけどそれしかないなら仕方が無いので find と合わせて使うことにした。

まず、ホーム以下の ".svn" を検索して問題がないか確認します。
find ~/ -name ".svn"
表示された物を全て除外してよければ除外設定をします。
find ~/ -name ".svn" -exec tmutil addexclusion {} +
ちゃんと設定されたか確認します。
find ~/ -name ".svn" -exec tmutil isexcluded {} +
以上、終了ですね。
ついでに .hg と .git も同様の設定しました。

面倒ですが定期的に実行しようと思っています。

それでは、また。

0 件のコメント: