Вопрос: Locate and updatedb не работает. Что мне делать?


мой locate команда не работает, но я обнаружил, что мне нужно было запустить updatedb, Однако, ссылаясь на эту команду, Баш говорит bash: updatedb: command not found, Что мне делать?


12
2017-10-30 21:19


Источник


Либо updateb не установлен, либо он не находится в переменной $ PATH. При запуске updatedb вы должны сделать это как root или sudo. - petrus
Вы можете найти updateb с «find» find / -name updatedb -print


Ответы:


Я думаю, вам нужно установить программу локации. В системе debian lenny файл / usr / bin / updatedb является символической ссылкой на / etc / alternatives / updatedb, которая является символической ссылкой на /usr/bin/updatedb.findutils.

Используя dpkg -S, вы можете найти, к какому файлу принадлежит файл:

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

Поэтому я думаю, вам нужно установить локализацию, а затем запустить updatedb как root.

Изменить: да, вам нужен пакет локации. В файле /usr/share/doc/findutils/NEWS.Debian.gz вы можете прочитать:

местоположение больше не включено в   пакет findutils. Он был разделен   перейдите в отдельный пакет «locate».

а затем в /usr/share/doc/findutils/changelog.Debian.gz, в журнале изменений 11 ноября 2007 года:

Разделите местоположение / updateb на   отдельный упаковка.


10
2017-10-30 21:39





Он не был установлен, а не в каталогах, перечисленных natxo, но я нашел решение для его установки. Спасибо за ведущих парней!

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

В корне: apt-get install locate


9
2017-10-30 21:45



?? видимо, я не объяснил это должным образом. В дебианской системе с updatedb, используя dpkg -S, рассказал мне, в каком пакете он принадлежал. Вот почему я написал, что вам нужен пакет locate, который вы сделали. Рад, что вы нашли его по своему усмотрению. - natxo asenjo
Для CentOS / RHEL это yum -y install mlocate. - music2myear


Обязательно команды, которые должны выполняться как root, не находятся в $ PATH пользователя, поэтому просто выполните:

$ sudo updatedb

и он должен работать.


2
2017-10-30 21:49





Вы должны вызвать «updatedb» с правами администратора. Насколько я помню, findutils являются частью стандартного дистрибутива / установки Debian, поэтому ознакомьтесь с /etc/updatedb.conf и /etc/cron.daily/(s)locate.

Если ничего не сломано, построенный из свежих updatedb [locate database] - ежедневный cronjob, поэтому вы не должны беспокоиться об этом в любом случае


0
2017-11-11 21:51