我正在运行以下命令:
updatedb -l 0 -o mydatabase.db -U /usr/myfiles1/
然后,
locate -d mydatabase.db ""
“”是显示mydatabase.db的所有内容。但是,我缺少我希望在 /myfiles1/ 中看到的文件。 “locate”似乎没有在目录中递归。我已经检查了权限,但“定位”选择递归到哪些目录似乎是随机的。
如果我“cd”到“myfiles1”,然后运行“updatedb”,它会递归到该目录及其子目录,并生成 /myfiles1/ 中包含的所有文件。
答案1
更新定位数据库时我无法递归到子目录的原因是因为我没有顶级目录的适当权限。以 root 身份运行 updateb 能够处理整个文件树,而无需跳过目录,无论我在何处踢出 updatedb 命令。