Linux / 명령어 / dnf - RPM 계열에서 패키지·저장소 관리
dnf는 Fedora·RHEL 계열과 Rocky Linux·AlmaLinux에서 저장소 패키지를 검색·설치·제거·업그레이드하는 명령입니다. 배포판과 버전에 따라 DNF 구현 및 지원 옵션이 다를 수 있습니다.
dnf 명령어란?
DNF는 저장소 메타데이터를 활용해 패키지 후보와 의존성을 계산합니다. install은 필요한 의존성도 함께 설치하고, upgrade는 설치된 패키지의 업데이트를 적용합니다. 로컬 RPM 파일도 설치할 수 있지만 일반적인 작업에서는 의존성을 해결하는 DNF가 rpm 직접 설치보다 편리합니다.
기본 문법
dnf [옵션] 명령 [패키지 ...]
설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. man dnf으로 현재 시스템의 설명을 확인하세요.
사용 예제
패키지 검색과 정보 확인
패키지 이름·설명과 저장소 후보를 확인합니다.
dnf search nginx dnf info nginx
패키지 설치
변경되는 의존성 목록을 검토한 뒤 설치합니다.
sudo dnf install nginx
업데이트 확인
설치 가능한 업데이트 목록을 확인합니다. 실제 설치는 하지 않습니다.
dnf check-update
패키지의 출처와 버전 확인하기
dnf info는 패키지의 버전, 아키텍처, 저장소와 설명을 보여줍니다. 설치 전 후보와 설치된 버전을 구별해 읽어야 합니다.
dnf info bash
출력에서 확인할 항목의 예:
Name : bash Version : ... Architecture : x86_64 Repository : ...
실제 값은 배포판·활성 저장소·시점에 따라 달라집니다. dnf check-update로 업데이트 후보를 살펴볼 수 있지만 종료 코드가 일반적인 성공·실패와 다르게 업데이트 존재를 나타낼 수 있어 스크립트에서는 문서를 확인해야 합니다. 설치·제거 전에는 제안되는 의존성 변경 목록을 읽으세요.
주요 옵션과 형식
| 옵션·형식 | 설명 |
|---|---|
search / info |
패키지를 찾거나 세부 정보를 표시합니다. |
install / remove |
패키지를 설치하거나 제거합니다. |
check-update / upgrade |
업데이트 가능 여부를 확인하거나 적용합니다. |
repolist |
활성화된 저장소를 확인합니다. |
history |
이전 패키지 트랜잭션을 조회합니다. |
사용할 때 주의할 점
dnf upgrade는 실행 중인 서비스와 커널 등을 바꿀 수 있으므로 변경 목록과 재시작 필요성을 확인하세요. --allowerasing은 충돌 해결을 위해 기존 패키지를 제거할 수 있습니다. 저장소를 임의로 추가하거나 검증을 끄지 말고, 설치된 버전의 dnf help로 옵션 차이를 확인하세요.
자주 묻는 질문
dnf와 rpm 중 어느 명령으로 설치하나요?
저장소 의존성까지 관리하는 일반적인 설치·업데이트에는 dnf가 적합합니다. rpm은 로컬 패키지 파일과 설치 데이터베이스를 직접 다룰 때 사용합니다.
공식 문서
옵션의 정확한 동작과 구현별 차이는 dnf 관련 공식 문서에서 확인할 수 있습니다.









