如何从ubdatedb中排除文件?

Bru*_*uni 2 umount cron locate updatedb

昨天,在尝试从我的文件系统中卸载我们的(安装davfs2 的)工作 webdav 服务器时,我得到了device is busy.

跑了sudo lsof | grep /mountpoint/of/davfs,才发现罪魁祸首是updatedb。运行man updatedb显示这是一个运行命令来更新 mlocate 的数据库,很可能是由 cron 调用的。

虽然我有时会使用 locate,但我不需要它来包含我们工作服务器上的所有文件(我们有其他搜索工具),而且我绝对不希望这会干扰我卸载文件系统。

DK *_*ose 5

你看了man updatedb.conf吗?编辑似乎可能/etc/updatedb.conf有助于控制扫描的内容。这是我的/etc/updatedb.conf样子:

PRUNE_BIND_MOUNTS="yes"
# PRUNENAMES=".git .bzr .hg .svn"
PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs /var/lib/schroot"
PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse.glusterfs fuse.sshfs curlftpfs ecryptfs fusesmb devtmpfs"
Run Code Online (Sandbox Code Playgroud)

来自man updatedb.conf

PRUNENAMES 不应由 updatedb 扫描的以空格分隔的目录名称列表(不含路径)