명령어/Linux

[RHEL] rpmls 패키지 파일 목록을 권한과 함께

jykim23 2026. 8. 7. 21:50
반응형

부제: rpm이 설치한 파일을 ls -l처럼 권한까지 붙여 보여준다

rpmls bash        # 파일 목록 + 권한 비트
rpmls -l which    # 소유자·그룹까지 롱포맷
rpmls -a which    # 이름과 매칭되는 모든 패키지
-rw-r--r--  /etc/skel/.bash_logout
-rw-r--r--  /etc/skel/.bash_profile
-rwxr-xr-x  /usr/bin/alias
-rwxr-xr-x  /usr/bin/bash
lrwxrwxrwx  /usr/bin/bashbug

rpmls는 rpmdevtools가 주는 얇은 래퍼로, rpm -q --qf로 뽑을 수 있는 정보를 ls처럼 보기 좋게 정리해 준다. rpm -ql이 파일 경로만 나열한다면, rpmls는 각 파일의 권한 비트를 앞에 붙여 setuid나 지나치게 열린 권한을 한눈에 살피게 한다. 인자는 패키지 이름이든 rpm 파일 경로든 받는다. -l은 소유자/그룹까지, -a는 이름에 걸리는 모든 버전을 대상으로 한다.

데비안에서는 dpkg -L이 경로를 나열하지만 권한은 빼고 준다. 권한까지 한 줄에 얹어 보여주는 감각이 rpmls의 차별점이다.

이렇게도 쓴다

실행 가능한 파일만 추린다(조합).

rpmls bash | grep '^-rwx'

 

setuid/setgid 파일을 찾아낸다(조합).

rpmls -l coreutils | grep 'rws'

 

특정 파일이 속한 패키지의 전체 파일을 한 번에 본다(조합).

rpmquery -f /usr/bin/vi | xargs rpmls

 

내려받은 rpm 파일을 설치 전에 들여다본다.

rpmls ./hello-1.0-1.el9.x86_64.rpm

 

심볼릭 링크만 골라 링크 구조를 파악한다(조합).

rpmls -l glibc | grep '^l'
반응형