보안/CentOS+Ubuntu

YUM, DNF 차이점과 사용법 알아보기

lowcodingpython 2024. 11. 12. 22:08
반응형

RHEL(Red Hat Enterprise Linux), CentOS, Fedora 같은 RPM 기반 배포판에서는 패키지 설치와 관리를 위해 주로 YUM과 DNF 명령어를 사용합니다. 이 두 명령어는 패키지 설치, 업데이트, 삭제를 쉽게 수행하도록 돕지만, 기능과 성능 면에서 차이점이 있습니다. 이 글에서는 YUM과 DNF의 차이점과 사용법을 설명해드리겠습니다.

yum-dnf-명령어-차이점


YUM(Yellowdog Updater Modified)란?

YUM은 Red Hat 계열 배포판에서 널리 사용되는 패키지 관리 명령어로, 패키지 설치, 업데이트, 삭제와 같은 작업을 자동으로 수행할 수 있도록 돕습니다. 또한 의존성 문제를 자동으로 해결해 주는 기능도 포함되어 있어 사용자 편의성을 높였습니다.

  • 특징: 의존성 해결 기능, 다양한 패키지 저장소(repository) 지원, 사용이 쉽고 직관적임.
  • 단점: 속도가 느리고, 일부 복잡한 작업에서 성능 저하가 발생할 수 있음.

DNF(Dandified YUM)란?

DNF는 YUM의 차세대 버전으로, 성능과 안정성을 개선하여 Fedora 18부터 기본 패키지 관리자로 채택되었으며, RHEL 8과 CentOS 8부터 기본 패키지 관리 도구로 자리 잡았습니다. YUM의 한계를 해결하면서 새로운 기능을 추가한 버전입니다.

  • 특징: 빠른 처리 속도, 더 나은 메모리 관리, 의존성 처리 강화, 새로운 플러그인 시스템 제공.
  • 장점: 더 빠른 성능과 안정성, 더욱 명확한 의존성 관리.

YUM과 DNF의 주요 차이점

1. 성능과 속도

DNF는 YUM에 비해 속도가 빠르고 메모리 사용량이 적습니다. YUM은 대규모 패키지 업데이트나 의존성 검사를 할 때 시간이 오래 걸리는 경우가 많지만, DNF는 이를 개선하여 속도를 크게 향상시켰습니다.

2. 의존성 처리

DNF는 의존성 문제를 해결하는 능력이 강화되었습니다. 예를 들어, DNF는 패키지 충돌을 미리 감지하고, 필요한 경우 더 명확한 경고 메시지를 제공합니다. 따라서 의존성 문제가 발생했을 때 더 직관적인 안내를 받을 수 있어 사용자 경험이 개선되었습니다.

3. 플러그인 시스템

YUM에도 플러그인 기능이 있었지만, DNF는 플러그인 관리와 설치를 더욱 체계적으로 할 수 있도록 설계되었습니다. DNF에서는 플러그인을 통해 추가적인 기능을 쉽게 확장할 수 있으며, 특히 관리자가 패키지 설치나 업데이트 중에 다양한 조건을 설정하는 데 유리합니다.

4. 새로워진 명령어 옵션

DNF는 YUM의 기본 명령어 구조를 유지하면서도 몇 가지 새로운 옵션을 추가하여 사용성을 높였습니다. DNF 명령어는 대부분 YUM과 호환되지만 일부 명령어가 다르므로 사용자들은 이를 숙지해야 합니다.

  • EX : yum list installed는 dnf list installed로 그대로 사용할 수 있습니다.

5. 그룹 패키지 관리

DNF는 YUM보다 그룹 패키지 관리에 더 효율적입니다. DNF는 패키지 그룹 설치 시 보다 나은 성능을 제공하며, 그룹 내 일부 패키지에 대한 선택적 설치도 지원합니다.


YUM과 DNF 사용법 비교

YUM과 DNF는 대부분의 명령어 구조가 유사하지만, 몇 가지 차이점이 있습니다. 주요 명령어를 비교해보면 다음과 같습니다.

1. 패키지 검색

  • YUM:
  yum search [패키지 이름]
  • DNF:
  dnf search [패키지 이름]

2. 패키지 설치

  • YUM:
  yum install [패키지 이름]
  • DNF:
  dnf install [패키지 이름]

3. 패키지 업데이트

  • YUM:
  yum update
  • DNF:
  dnf upgrade

DNF는 update 대신 upgrade 명령어를 권장하지만, dnf update도 여전히 사용 가능합니다.

4. 패키지 삭제

  • YUM:
  yum remove [패키지 이름]
  • DNF:
  dnf remove [패키지 이름]

5. 캐시 삭제

  • YUM:
  yum clean all
  • DNF:
  dnf clean all

6. 패키지 그룹 설치

  • YUM:
  yum groupinstall "[그룹 이름]"
  • DNF:
  dnf group install "[그룹 이름]"

DNF가 기본 패키지 관리자로 변경된 이유

DNF는 YUM의 기능을 보완하고 성능을 개선하여 YUM보다 더 안정적이고 빠른 패키지 관리를 제공합니다. 패키지 설치 속도와 메모리 관리가 개선되었으며, 의존성 처리 시스템이 강화되었습니다. 이러한 이유로 RHEL 8, CentOS 8, Fedora 등은 DNF를 기본 패키지 관리자로 채택하고 있으며, 앞으로도 DNF가 RPM 기반 배포판의 표준 패키지 관리 도구로 자리잡을 가능성이 큽니다.


YUM과 DNF, 어느 것을 사용해야 할까?

YUM은 여전히 CentOS 7과 같은 이전 버전의 리눅스 배포판에서 널리 사용되지만, 최신 배포판에서는 DNF가 기본 패키지 관리 도구로 자리잡았습니다. 성능과 안정성 면에서 더 우수한 DNF는 최신 시스템에서 보다 효율적인 패키지 관리를 제공하며, YUM과 유사한 명령어 구조 덕분에 기존 사용자가 쉽게 적응할 수 있습니다. 최신 리눅스 배포판을 사용 중이라면 DNF 사용을 권장합니다.

반응형