Rocky Linux / 설치된 패키지 확인하는 방법
Rocky Linux에서 설치된 패키지는 dnf와 rpm으로 확인할 수 있습니다. 평소에는 저장소 정보와 의존성을 함께 보여 주는 dnf를 사용하고, 정확한 RPM 데이터베이스 조회나 파일 소유 패키지 확인에는 rpm을 사용하면 편리합니다.
설치된 패키지 전체 목록 확인
DNF(Dandified YUM)는 Rocky Linux의 패키지 관리자입니다. 다음 명령은 설치된 패키지 이름, 버전과 설치 출처를 표 형식으로 보여 줍니다.
dnf list --installed
RPM 데이터베이스에 등록된 패키지 이름만 간단히 확인하려면 다음 명령을 사용합니다.
rpm -qa | sort
결과가 길면 less로 페이지를 나누거나 grep으로 필요한 이름만 찾을 수 있습니다.
rpm -qa | sort | less rpm -qa | grep -i postgresql
특정 패키지의 설치 여부와 정보 확인
이름을 알고 있을 때
rpm -q는 패키지가 설치되어 있으면 정확한 이름과 버전을 출력하고, 설치되어 있지 않으면 오류 메시지와 0이 아닌 종료 상태를 반환합니다.
rpm -q curl dnf info --installed curl
명령이나 파일의 패키지를 찾을 때
이미 존재하는 파일이 어느 패키지에서 설치되었는지는 rpm -qf로 확인합니다. 심볼릭 링크가 있는 명령은 readlink -f로 실제 경로를 찾은 뒤 조회하면 더 정확합니다.
rpm -qf /usr/bin/curl rpm -qf "$(readlink -f "$(command -v python3)")"
아직 설치되지 않은 명령이나 파일을 제공하는 저장소 패키지는 dnf provides로 찾습니다.
dnf provides '*/semanage'
버전, 설치 시각과 출처를 자세히 보기
RPM의 쿼리 포맷을 이용하면 필요한 항목만 원하는 순서로 출력할 수 있습니다. 아래 예시는 패키지 이름, 에포크·버전·릴리스, 아키텍처를 탭으로 구분합니다.
rpm -qa --qf '%{NAME}\t%{EPOCHNUM}:%{VERSION}-%{RELEASE}\t%{ARCH}\n' | sort
최근에 설치된 패키지 순서는 다음과 같이 확인합니다.
rpm -qa --last | head -n 30
| 확인 목적 | 권장 명령 |
|---|---|
| 전체 설치 목록 | dnf list --installed 또는 rpm -qa |
| 특정 패키지 확인 | rpm -q 패키지명 |
| 패키지 상세 정보 | dnf info --installed 패키지명 |
| 파일 소유 패키지 | rpm -qf 파일경로 |
| 파일 제공 패키지 검색 | dnf provides '*/파일명' |
| 최근 설치 순서 | rpm -qa --last |
직접 설치한 패키지와 변경 이력 확인
사용자가 설치한 항목
DNF가 사용자 요청으로 설치된 것으로 기록한 패키지는 다음 명령으로 볼 수 있습니다. 의존성으로 자동 설치된 항목을 제외해 서버의 용도를 파악하거나 정리 대상을 검토할 때 유용합니다.
dnf history userinstalled
다만 과거에 RPM 파일을 직접 설치했거나 시스템을 마이그레이션한 경우에는 기록이 완전하지 않을 수 있습니다. 이 결과만으로 패키지를 자동 삭제하지 말고 서비스와 의존성을 함께 확인해야 합니다.
DNF 거래 이력
설치·업데이트·삭제 작업의 이력과 특정 거래의 상세 내역은 다음처럼 조회합니다.
dnf history dnf history info 거래_ID
설치 파일과 설정 변경 여부 검사
rpm -V는 설치 당시 기록과 현재 파일의 크기, 체크섬, 권한, 소유자 등을 비교합니다. 아무것도 출력되지 않으면 검사 항목에서 차이가 발견되지 않았다는 뜻입니다.
sudo rpm -V openssh-server
/etc 아래 설정 파일은 관리자가 의도적으로 바꾼 경우에도 차이로 표시됩니다. 결과가 나왔다고 바로 복원하지 말고 변경 관리 기록과 백업을 대조하십시오.
서버 패키지 목록을 파일로 보관하기
장애 대응이나 마이그레이션을 위해 이름·버전·아키텍처를 텍스트로 저장해 두면 두 시점 또는 두 서버를 비교하기 쉽습니다.
rpm -qa --qf '%{NAME}\t%{EPOCHNUM}:%{VERSION}-%{RELEASE}\t%{ARCH}\n' | sort > installed-packages.tsv
이 목록은 당시 상태의 기록이지 다른 서버에서 그대로 실행할 설치 스크립트는 아닙니다. Rocky Linux 주 버전, 활성 저장소와 모듈 스트림이 다르면 같은 버전을 구할 수 없으므로 복구 절차는 별도로 시험해야 합니다.
자주 생기는 문제
- 명령이 없다고 나오는 경우: 최소 설치에서는 일부 DNF 플러그인이 빠질 수 있습니다. 먼저 명령의 제공 패키지를 확인하십시오.
- 이름이 예상과 다른 경우: 실행 파일 이름과 패키지 이름은 같지 않을 수 있으므로
rpm -qf또는dnf provides를 사용합니다. - 목록이 서로 달라 보이는 경우:
dnf는 저장소 메타데이터를 결합해 표시하고rpm은 로컬 RPM 데이터베이스를 직접 조회합니다. 비교 목적에 맞는 도구를 선택하십시오. - 데이터베이스 오류가 나는 경우: 다른 패키지 작업이 진행 중인지 먼저 확인하고, 잠금 파일이나 데이터베이스를 임의로 삭제하지 마십시오.









