위치와 이동의 차이점


14

locate를 통해 사용할 수 있는 명령을 설치하고 싶었습니다 sudo apt-get installmlocate.

그러나, 나는 sudo apt-get installlocate다른 것을 설치 한 것으로 보이는 첫 번째 실행했습니다 .

locate <package>그러나 명령을 입력하는 것이 필요합니다 mlocate.

패키지는 무엇이며 locate안전하게 제거 할 수 있습니까?


1
나는 mlocate가 원래의 위치를 ​​대체했다고 생각하지만 15 년 전이었고 아마도 한 패키지는 다른 패키지의 별칭이거나 참조 자일 것입니다. 사용자 권한에 따라 파일의 가시성을 관찰 한 또 다른 변형 인 "slocate"가 있지만, 보지 못했습니다. 오랜 세월
Otheus

답변:


25

찾을 패키지의 구현 위치 에서 의 GNU findutils의 . mlocate 패키지라는 동일한 개념의 또 다른 구현 mlocate . 동일한 기본 기능을 구현합니다. 매일 밤마다 (일반적으로) 다시 작성되는 색인을 기반으로 파일 이름을 빠르게 조회합니다. 기본 사용법을 넘어 일부 기능이 다릅니다. 특히 GNU locate는 사용자가 계정에서 실행하지 않는 한 세계에서 읽을 수있는 파일의 인덱스 만 빌드하지만 mlocate는 모든 파일의 인덱스를 빌드하지만 호출하는 사용자는 액세스 할 수있는 파일 만 볼 수 있습니다. 이렇게하면 대부분의 환경에서 이동이 더 유용하지만 시스템 관리자가 실행하지 않는 일부 비정상적인 설치에서는 사용할 수 없습니다 (mlocate수있다 setuid를 루트 ) 및 보안 위험.

데비안과 파생 제품에서 둘 다 설치 locate하면 mlocate구현 locate.findutils이 실행되며 GNU 구현 을 실행 하려면 실행 해야합니다 . 이것은 대안을 통해 관리됩니다 . 둘 다 설치 한 경우 둘 다 각자의 인덱스를 다시 작성하는 데 시간이 걸리지 만 그 외에는 서로 충돌하지 않습니다.


2
mlocate이름을 얻는 주요 기능 ( "병합 위치") 은 언급하지 않았습니다 .이 기능 은 변경된 updatedb디렉토리에 대해 파일 / 하위 디렉토리 목록 만 쿼리하여 이전 색인을 재사용하여 업데이트 성능을 향상시키는 버전을 제공합니다. ctime.
ssokolow

5

mlocate는 새로운 locate의 구현입니다. 일단 설치 mlocate하면

대안 메커니즘을 통해 이동을 가리 키도록 / usr / bin / locate 바이너리를 변경합니다.

그렇기 때문에 순서대로 설치하면 이동 동작이 발생합니다.

세부 사항을 찾을 수 있습니다 여기를 참조하십시오


사실, 나는 설치하지 mlocate않았지만 우분투 16.04 시스템에/usr/bin/locate -> /etc/alternatives/locate -> /usr/bin/mlocate
cayhorstmann
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.