定位和更新b不起作用。 我该怎么办?

我的locate命令不起作用,但我发现我必须运行updatedb 。 然而,在调用该命令后,bash说bash: updatedb: command not found 。 我该怎么办?

我认为你需要安装定位程序。 在debian lenny系统中,/ usr / bin / updatedb文件是/ etc / alternatives / updatedb的一个符号链接,它是/usr/bin/updatedb.findutils的符号链接。

使用dpkg -S你可以find一个文件所属的包:

 $ dpkg -S /usr/bin/updatedb.findutils locate: /usr/bin/updatedb.findutils 

所以我认为你需要安装locate,然后以root身份运行updatedb。

编辑:是的,你需要定位包。 在文件/usr/share/doc/findutils/NEWS.Debian.gz中可以阅读:

find不再包含在findutils包中。 它已被拆分成一个单独的包“定位”。

然后在2007年11月11日的更新日志中的/usr/share/doc/findutils/changelog.Debian.gz中:

将locate / updatedb拆分为一个单独的包。

它没有安装,不在natxo列出的目录中,但我find了一个解决scheme来安装它。 谢谢你的领头人!

http://www.nicecabbage.com/2009/08/install-locate-and-updatedb-on-centos-and-debian/

在root中: apt-get install locate

必须以root身份运行的命令必须不在用户的$ PATH中,因此只需运行:

$ sudo updatedb

它应该工作。

您必须使用pipe理权限调用“updatedb”。 据我所知,findutils是标准的Debian发行版/安装的一部分,所以看看/etc/updatedb.conf和/etc/cron.daily/(s)locate。

如果没有什么坏的,build立一个新的updatedb [定位数据库]是一个日常的cronjob,所以你不必担心这个问题