리눅스 which whereis locate: 3가지 위치(경로) 확인 명령어

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

리눅스 which와 whereis 명령어 명령어의 위치를 알 수 있는 명령어는 find 명령어를 이용해서 파일을 찾을 수 있지만 find 명령어는 시간이 소요되는 단점도 존재합니다. locate 명령어는 파일명을 빠르게 검색할 때 사용할 수 있습니다.

리눅스 기본 명령어 3가지에 대해 알아 보겠습니다.

  • 리눅스 검색 명령어: 위치 확인 명령어
  • which, whereis, locate

✅ 리눅스 which 명령어

‘어느’, ‘어떤’, ‘어느 쪽’의 영어 뜻을 가진 which 명령어는 명령어의 위치 or alias(별칭)의 경로를 확인해 주는 명령어입니다. 모든 명령어 실행 파일을 검색할 수 있습니다.

리눅스 which 명령어 사용 예(여러 파일 이름)
  • which 명령어
  • PATH(변수)에 등록된 경로들만 찾음
  • 기본 옵션 및 사용 방법
which [-옵션] FILE_NAME(명령어 이름)
which find
/usr/bin/find

which -a httpd
/usr/sbin/httpd
  • -a 옵션을 사용해서 파일의 모든 항목을 확인할 수 있지만 자주 사용하지 않아 큰 의미는 없습니다.
~]# which ll
 alias ll='ls -l --color=auto'
	/usr/bin/ls

~]# which -a ll
alias ll='ls -l --color=auto'
	/usr/bin/ls
/usr/bin/which: no ll in (/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)

✅리눅스 whereis 명령어

리눅스 whereis 명령어는 실행 파일(바이너리), 소스 파일, man 페이지 파일의 위치를 찾아주는 명령어입니다. 기본 사용 옵션은 다음과 같습니다.

whereis -옵션 FILE_NAME(명령어 이름)
  • whereis 명령어 옵션
  • whereis 명령어 사용 예
~]# whereis httpd

httpd: /usr/sbin/httpd  /usr/lib64/httpd /etc/httpd /usr/share/httpd /usr/share/man/man8/httpd.8.gz
# -b 옵션 사용 시 이진 파일과 경로가 표시됩니다. 
~]# whereis -b httpd
httpd: /usr/sbin/httpd /usr/lib64/httpd /etc/httpd /usr/share/httpd
리눅스 whereis 명령어의 파일 설명

-b 옵션 외에 다른 옵션을 추가로 사용할 일은 많지 않습니다.

✅ 리눅스 locate 명령어

locate 명령어의 경우 배포판에서 기본 설치가 되어 있지 않는 경우가 있습니다.

dnf -y install mlocate
# 서버의 OS 버전에 맞게 설치.
yum -y install mlocate
리눅스 locate 명령어 설치 화면

리눅스 locate 명령어는 이미 생성된 데이터베이스를 통해 검색을 진행하기 때문입니다. 하지만 파일이나 디렉토리를 DB화 하여 사용하기 때문에 정보가 갱신되지 않으면 최신의 데이터가 출력되지 않을 수 있습니다.

  • locate 명령어, find 명령어 비교
  • locate
  • 빠른 검색 속도
  • 제한적인 검색 옵션(오직 파일명에만 근거)
  • 검색DB 사용 및 검색 경로 설정이 필요하지 않음.
  • 파일 목록 데이터베이스 > mlocate.db 파일을 미리 생성
  • find
  • 검색 속도가 느림
  • 다양한 검색 옵션
  • 검색 경로 설정
  • 시스템에서 파일을 검색하여 경로 출력
  • locate 기본 사용 방법
  • 정확한 사용을 위해 ‘updatedb’ 명령어로 업데이트 후 명령어를 실행하여 정확한 검색을 할 수 있습니다.
  •  /cat/lib/mlocate/mlocate.db 파일에 관련 정보가 있음.
locate -옵션 FILE_NAME
  • 주의 사항: NFS를 이용 중인 경우 update 명령어로 인해 마운트 된 영역이 느려질 수 있지만 발생될 확률 적음.

PRUNE_BIND_MOUNTS = "yes"
PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fuse.sshfs fusectl gfs gfs2 gpfs hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs sockfs sysfs tmpfs ubifs udf usbfs ceph fuse.ceph"
PRUNENAMES = ".git .hg .svn .bzr .arch-ids {arch} CVS"
PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev /var/cache/ccache /var/lib/yum/yumdb /var/lib/dnf/yumdb /var/spool/cups /var/spool/squid /var/tmp /var/lib/ceph /var/lib/mock /sysroot/ostree/deploy"

# PRUNEFS에 NFS를 추가하면 updatedb 수행시 제외. | PRUNEPATHS 경로 지정 후 제외
Prune = 가지를 치다.
FS = File System
PATH = 경로

♣ locate 명령어 옵션

# 파일의 갯수
locate -c httpd.conf
3
# DB의 정보 확인
locate -S 
Database /var/lib/mlocate/mlocate.db:
	6750 directories
	63364 files
	3089573 bytes in file names
	1575941 bytes used to store database

ℹ️ 제휴 안내
본 사이트의 콘텐츠에는 제휴 링크가 포함되어 있습니다. 방문자가 이 링크를 통해 상품 또는 서비스를 구매하면 본 사이트는 판매처로부터 수수료를 지급받습니다. 이 과정에서 구매자가 지불하는 금액(이벤트 할인 시 금액이 내려갑니다↓)은 오르지 않습니다. 게시된 가격·할인·재고 정보는 작성 시점 기준이며 실제와 다를 수 있으므로, 구매 전 판매처에서 최종 확인하시기 바랍니다. 상품 선정과 평가는 자체 기준에 따라 작성되며, 수수료 지급 여부가 소개 순서나 평가 내용에 영향을 주지 않습니다.

Similar Posts

  • 리눅스 killall 명령어: 설치, 사용 방법과 옵션

    리눅스 killall 명령어는 특정 프로세스를 한번에 종료 시키는 명령어입니다. kill과 killall은 단순 종료가 아닌 프로세스에 지정한 시그널(Signal)을 보내는 명령어로 시그널에서 액션이 종료일 때 프로세스가 종료됩니다. ✅ 리눅스 killall 명령어 설치 대부분의 유닉스 시스템에서는 killall 명령어가 설치되어 있지만 설치되어 있지 않은 경우 psmisc 패키지를 설치해서 사용할 수 있습니다. ✅ killall 명령어 사용 방법 보통…

  • [Linux] userdel 명령어: 사용자 계정 삭제 명령어

    리눅스에서 useradd로 계정 생성 후 삭제가 필요한 경우 userdel 명령어를 사용합니다. ✅ userdel 명령어 기본 사용은 아래와 같습니다. ✅ userdel 주로 사용하는 옵션 userlde만 입력해서 사용자를 삭제할 경우 보통 /home/[user]로 계정명이 폴더에 버전에 따라 남아있거나 삭제되는데 /var/spool/mail/[user] 파일은 대부분의 리눅스에서 남게 됩니다. ✅ 사용자 계정 강제 삭제 제거할 사용자 계정이 로그인 되어 있거나…

  • 리눅스 sort 명령어: 파일 정렬

    종류 및 분류의 사전적 의미를 가진 리눅스 sort 명령어는 아스키 파일 내용(레코드)을 정렬할 때 사용하는 명령어입니다. 알파벳순이나 오름차순 또는 내림차순으로 정렬해야 하는 경우에 사용하는 명령어입니다. ✅ 리눅스 sort 명령어 기본 사용 방법 ✅ 리눅스 sort 명령어 옵션 ✅ 리눅스 sort 명령어 사용 예시 기본 사용 방법입니다.

  • [Linux] lsof 명령어: 실행 중 파일 정보 출력

    lsof 명령어는 lisf open files의 약자로 리눅스 시스템에서 열려 있는 파일의 정보를 출력해 주는 명령어입니다. lsof 명령어는 파일을 포함하여 디렉터리, 네트워크 소켓, 파이프 등 프로세스가 사용 중인 다양한 리소스도 조회할 수 있습니다. ✅ lsof 명령어 기본 구문 명령어만 입력 했을 때는 현재 시스템에서 열린 모든 파일과 관련된 프로세스 정보를 출력합니다. ✅ lsof 명령어…

  • 리눅스 명령어 13가지 카테고리 분류&시스템의 이해

    리눅스의 명령줄 인터페이스(Command Line Interface, CLI)는 컴퓨터 프로그램 및 운영체제와 상호 작용하기 위한 텍스트 기반의 사용자 인터페이스입니다. 리눅스 명령어는 유닉스 계열 운영체제어서 거의 동일하게 작동하며, 명령어를 입력해서 파일의 생성, 수정, 복사 이동 및 서버 전반에 걸친 관리를 하게 됩니다. 명령어를 카테고리로 분류하지만 틀릴 수 있는 점을 참고하여 주시기 바랍니다. ✅ 리눅스 명령어 시스템의…

  • 리눅스 심볼릭 링크(Symbolic Link)와 하드 링크(Hard Link)

    리눅스에서 사용하는 심볼릭 링크(Symbolic Link)는 윈도우에서 사용하는 “바로가기”와 같은 기능을 가지고 있습니다. 소프트 링크 or 심링크로도 불리며, 하나의 파일에 여러 이름으로 생성할 수 있습니다. ✅ 심볼릭 링크 하드 링크 명령어 [-s 옵션]은 Symbolic Link를 만들어 주는 옵션이며 [-s 옵션]이 빠지게 되면 Hard Link를 생성하게 됩니다. ✅ 기존 하드 링크의 단점 Hard Link는 기존…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 8   +   8   =