Locate и updatedb не работает. Что я должен делать?
12
Моя locateкоманда не работает, но я узнал, что мне нужно бежать updatedb. Тем не менее, после вызова этой команды bash говорит bash: updatedb: command not found. Что я должен делать?
Либо updatedb не установлен, либо его нет в переменной $ PATH. При запуске updatedb вы должны делать это как root или с помощью sudo.
петрус
Вы можете найти updatedb с помощью команды «найти» find / -name updatedb -print
Ответы:
10
Я думаю, что вам нужно установить программу поиска. В системе debian lenny файл / usr / bin / updatedb является символической ссылкой на / etc / alternatives / updatedb, которая является символической ссылкой на /usr/bin/updatedb.findutils.
Используя dpkg -S, вы можете найти, к какому пакету принадлежит файл:
?? по-видимому, я не объяснил это должным образом. В системе debian с установленным updatedb использование dpkg -S сообщило мне, к какому пакету он принадлежит. Вот почему я написал, что вам нужен пакет locate, что вы и сделали. Рад, что вы нашли это самостоятельно, хотя.
Natxo Asenjo
Для CentOS / RHEL это yum -y install mlocate.
music2myear
2
Необходимые команды, которые должны быть запущены от имени пользователя root, не находятся в $ PATH пользователя, поэтому просто запустите:
Вы должны вызвать 'updatedb' с правами администратора. Насколько я помню, findutils являются частью стандартного дистрибутива / установки Debian, поэтому взгляните на /etc/updatedb.conf и /etc/cron.daily/(s)locate.
Если ничего не сломано, сборка свежей обновленной базы данных [locate database] - это ежедневный ханджоб, так что вам все равно не стоит об этом беспокоиться
Ответы:
Я думаю, что вам нужно установить программу поиска. В системе debian lenny файл / usr / bin / updatedb является символической ссылкой на / etc / alternatives / updatedb, которая является символической ссылкой на /usr/bin/updatedb.findutils.
Используя dpkg -S, вы можете найти, к какому пакету принадлежит файл:
Поэтому я думаю, что вам нужно установить locate, а затем запустить updatedb от имени пользователя root.
Изменить: да, вам нужен пакет locate. В файле /usr/share/doc/findutils/NEWS.Debian.gz вы можете прочитать:
и затем в /usr/share/doc/findutils/changelog.Debian.gz в журнале изменений 11 ноября 2007 года:
источник
Он не был установлен и не в каталогах, перечисленных natxo, но я нашел решение для его установки. Спасибо за ведущие ребята!
http://www.nicecabbage.com/2009/08/install-locate-and-updatedb-on-centos-and-debian/
В корне:
apt-get install locate
источник
Необходимые команды, которые должны быть запущены от имени пользователя root, не находятся в $ PATH пользователя, поэтому просто запустите:
и это должно работать.
источник
Вы должны вызвать 'updatedb' с правами администратора. Насколько я помню, findutils являются частью стандартного дистрибутива / установки Debian, поэтому взгляните на /etc/updatedb.conf и /etc/cron.daily/(s)locate.
Если ничего не сломано, сборка свежей обновленной базы данных [locate database] - это ежедневный ханджоб, так что вам все равно не стоит об этом беспокоиться
источник