任何人都可以阐明 OS X 决定将哪些目录放入定位数据库以及决定忽略哪些目录吗?很明显,这个~/Library
已经被淘汰了——还有哪些呢?我该如何修改它,以便每次updatedb
调用时,它实际上都会扫描我的所有目录?
这个问题之前(有点)被问过这里cron
,但它没有得到很好的回答,并且(任务?)的默认目录问题updatedb
甚至从未出现过。
答案1
在 Mac OS 10.10.2 上,查看文件/etc/locate.rc
中的字段PRUNEPATHS
。从Apple 的locate.updatedb 手册页:
描述
该
locate.updatedb
实用程序更新 所使用的数据库locate(1)
。它通常由作业每周运行一次/System/Library/LaunchDaemons/com.apple.locate.plist
。新建数据库的内容可以通过文件来控制/etc/locate.rc
。
更正:以上链接和引用的内容适用于Mac OS 10.9。 OS 10.10.2 中的设置似乎相同。
答案2
您的 ~/Library、~/Documents、~/Applications ... 等都是使用 700 权限创建的。定位将跳过它们。如果您希望它们包含在您的定位数据库中,请将权限更改为 755。
chmod 755 ~/Library
sudo /usr/libexec/locate.updatedb