찾기 및 업데이트 b가 작동하지 않습니다. 어떻게해야합니까?


12

locate명령이 작동하지 않지만 실행해야한다는 것을 알았습니다 updatedb. 그러나 해당 명령을 호출하면 bash는 말합니다 bash: updatedb: command not found. 어떻게해야합니까?


updatedb가 설치되어 있지 않거나 $ PATH 변수에 없습니다. updatedb를 실행할 때는 root 또는 sudo로 수행해야합니다.
petrus

"find"를 사용하여 updatedb를 찾을 수 있습니다. find / -name updatedb -print

답변:


10

찾기 프로그램을 설치해야한다고 생각합니다. 데비안 lenny 시스템에서 / usr / bin / updatedb 파일은 /usr/bin/updatedb.findutils에 대한 심볼릭 링크 인 / etc / alternatives / updatedb에 대한 심볼릭 링크입니다.

dpkg -S를 사용하면 파일이 속한 패키지를 찾을 수 있습니다.

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

그래서 당신은 locate를 설치 한 다음 updatedb를 루트로 실행해야한다고 생각합니다.

편집 : 예, 찾기 패키지가 필요합니다. /usr/share/doc/findutils/NEWS.Debian.gz 파일에서 다음을 읽을 수 있습니다.

find는 더 이상 findutils 패키지에 포함되지 않습니다. 별도의 패키지 "locate"로 분리되었습니다.

그리고 /usr/share/doc/findutils/changelog.Debian.gz에서 11 nov 2007의 changelog에 있습니다 :

locate / updatedb를 별도의 패키지로 분리하십시오.


10

natxo에 나열된 디렉토리에 설치되지 않았으며 설치되지 않은 솔루션을 찾았습니다. 리드들 주셔서 감사합니다!

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

루트에서 : apt-get install locate


?? 분명히 나는 ​​그것을 올바르게 설명하지 않았습니다. updatedb가 설치된 데비안 시스템 에서 dpkg -S를 사용하면 그것이 속한 패키지를 알려줍니다. 그렇기 때문에 로케이터 패키지가 필요하다고 썼습니다. 그래도 스스로 찾아서 다행입니다.
natxo asenjo

CentOS / RHEL의 경우 yum -y install mlocate입니다.
music2myear

2

root로 실행해야하는 명령이 사용자의 $ PATH에 없으므로 다음을 실행하십시오.

$ sudo 업데이트

작동해야합니다.


0

관리자 권한으로 'updatedb'를 호출해야합니다. 내가 아는 한, findutils는 표준 데비안 배포판 / installation의 일부이므로 /etc/updatedb.conf 및 /etc/cron.daily/(s)locate를 살펴보십시오.

깨진 것이 없다면 새로 업데이트 된 [locate database]는 매일 cronjob이므로 걱정할 필요가 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.