locate — 파일 위치 검색
Linux / 리눅스 기본 명령어 / locate.html
미리 만들어 둔 데이터베이스로 파일 경로를 빠르게 찾는 명령어.
기본 정보
| 명령어 이름 | locate |
|---|---|
| 한 줄 소개 | 미리 만들어 둔 데이터베이스로 파일 경로를 빠르게 찾는 명령어. |
| 제공 | plocate 또는 mlocate |
| 공식 문서 | https://man7.org/linux/man-pages/man1/locate.1.html |
| 지원 운영체제 | Linux, macOS(별도 설치), BSD |
| 설치 여부 | 패키지 설치 필요 |
| 분류 | 리눅스 기본 명령어 (태그: 리눅스 기본 명령어 (태그: locate, 파일 검색, updatedb, plocate)) |
이 명령어는 무엇인가?
locate는 파일 시스템을 직접 순회하지 않고 데이터베이스를 조회하므로 매우 빠르게 경로를 찾습니다. 대신 데이터베이스 생성 이후의 변경은 반영되지 않습니다.
데이터베이스는 updatedb로 갱신하며 보통 타이머로 하루 한 번 실행됩니다. 방금 만든 파일을 찾지 못하면 updatedb를 실행하거나 find를 사용해야 합니다.
어떤 문제를 해결하는가?
- 파일 이름은 알지만 경로가 기억나지 않을 때
- 대규모 파일 시스템에서 빠르게 후보를 찾을 때
- 설정 파일 위치를 확인할 때
- find보다 가벼운 검색이 필요할 때
주요 기능
빠른 검색
데이터베이스를 조회해 즉시 결과를 냅니다.
- 활용 상황: 넓은 디렉터리에서 이름을 찾을 때
- 얻는 결과: find보다 훨씬 빠릅니다.
- 제한 사항: 최신 변경 사항이 빠져 있을 수 있습니다.
패턴 검색
와일드카드나 정규식으로 이름을 찾습니다.
- 활용 상황: 확장자나 접두사로 묶어 찾을 때
- 얻는 결과: 후보를 한 번에 추릴 수 있습니다.
- 제한 사항: 대소문자 구분은 데이터베이스 설정을 따릅니다.
DB 갱신
updatedb로 최신 상태를 반영합니다.
- 활용 상황: 방금 만든 파일을 찾아야 할 때
- 얻는 결과: 검색 정확도가 올라갑니다.
- 제한 사항: 전체 갱신은 디스크 I/O를 많이 사용합니다.
설치 및 실행
설치 여부 확인
locate --version
sudo apt install plocate # Debian/Ubuntu sudo dnf install mlocate # Fedora
실제 사용 예제
이름으로 찾기
정확한 파일 이름으로 찾습니다.
locate nginx.conf | head
패턴으로 찾기
확장자로 묶어 찾습니다.
locate -i '*.service' | head
DB 갱신
최신 파일을 반영합니다.
sudo updatedb
locate mynewfile