それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

mlocateをつかって.hg .svn .gitを除外出来る。

locateの問題を何とかしようと調べてたら。mlocateを発見。debianにおいてはmlocate/locateは違うモノ。locateはslocateの一種らしい。

mlocateについて

$aptitude show mlocate
...()
 mlocate は locate の新しい実装です。ファイルシステム上のどこかにあるファイル
...
 mlocate をインストールすると、/usr/bin/locate バイナリを alternatives
 メカニズム を通じて mlocateを指すように変更します。

locateの代替えに出来る。しかも高機能。じゃぁ使おうじゃないか。

/etc/updatedb.conf

updatedbから.hgを除外する。

PRUNE_BIND_MOUNTS="yes"
PRUNENAMES=".git .bzr .hg .svn" #コメントを外す
PRUNEPATHS="/tmp /var/spool /media"
PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre_lite tmpfs usbfs udf"

これでmercurialのヒストリ部分を検索対象から外すことが出来る。

つまり、locateの細かい設定したいときはmlocate使ってる方が楽

crontabのメンテナンス

(mlocateは標準的な locate とは同じデータベースを使わないため)
または、システムで定期的に更新される異なる二つのデータベースファイルが存在しな
い ように、"locate" パッケージを削除したいと思うかもしれません。

だそうなので、cronの内容を変更しないと無駄になるよ。



http://d.hatena.ne.jp/takuya_1st/20090911/1252648963

2011-02-18追記

mlocate 単体パッケージ locateは find-utils 付属