사용자 공간 구성 요소 설치, 관리 및 제거


Red Hat Enterprise Linux 8

YUM 소프트웨어 관리 도구를 사용하여 BaseOS 및 AppStream 리포지토리의 콘텐츠 관리

Red Hat Customer Content Services

초록

YUM 툴을 사용하여 BaseOS 및 AppStream 리포지토리를 통해 배포된 콘텐츠를 찾고, 설치하고, 활용합니다. 패키지, 모듈, 스트림 및 프로필 작업을 수행하는 방법을 알아봅니다.

Red Hat 문서에 관한 피드백 제공

문서에 대한 피드백에 감사드립니다. 어떻게 개선할 수 있는지 알려주십시오.

Jira를 통해 피드백 제출 (등록 필요)

  1. Jira 웹 사이트에 로그인합니다.
  2. 상단 탐색 모음에서 생성 을 클릭합니다.
  3. Summary (요약) 필드에 설명 제목을 입력합니다.
  4. Description (설명) 필드에 개선을 위한 제안을 입력합니다. 문서의 관련 부분에 대한 링크를 포함합니다.
  5. 대화 상자 하단에서 생성 을 클릭합니다.

1장. Red Hat Enterprise Linux 8의 소프트웨어 관리 툴

RHEL(Red Hat Enterprise Linux) 8에서 YUM 을 사용하여 소프트웨어를 관리합니다. YUM 은 모듈식 기능에 대한 지원을 추가하는 DNF 기술을 기반으로 합니다.

참고

업스트림 문서는 기술을 DNF 라고 하며 툴을 DNF 라고 합니다. 결과적으로 RHEL 8의 새 YUM 툴에서 반환하는 일부 출력에는 DNF 가 언급합니다.

YUMDNF 를 기반으로 하지만 RHEL 7에서 사용되는 YUM 과 호환됩니다. 소프트웨어 설치의 경우 yum 명령과 대부분의 옵션은 RHEL 7에서와 동일한 방식으로 RHEL 8에서 작동합니다.

선택한 YUM 플러그인 및 유틸리티는 새 DNF 백엔드로 이식되었으며 RHEL 7에서와 동일한 이름으로 설치할 수 있습니다. 패키지는 호환성 심볼릭 링크도 제공합니다. 따라서 일반적인 위치에서 바이너리, 구성 파일 및 디렉터리를 찾을 수 있습니다.

참고

RHEL 7에서 YUM 에서 제공하는 레거시 Python API는 더 이상 사용할 수 없습니다. 플러그인 및 스크립트를 RHEL 8의 YUM 에서 제공하는 새로운 DNF Python API로 마이그레이션할 수 있습니다. 자세한 내용은 DNF API Reference 를 참조하십시오.

2장. RHEL 8의 콘텐츠 배포

다음 섹션에서는 Red Hat Enterprise Linux 8에서 소프트웨어가 배포되는 방법을 알아봅니다.

2.1. 리포지토리

RHEL(Red Hat Enterprise Linux)은 다양한 리포지토리를 통해 콘텐츠를 배포합니다. 예를 들면 다음과 같습니다.

BaseOS
BaseOS 리포지토리의 콘텐츠는 모든 설치의 기반을 제공하는 기본 운영 체제 기능의 코어 세트로 구성됩니다. 이 콘텐츠는 RPM 형식으로 사용할 수 있으며 이전 RHEL 릴리스와 유사한 지원 조건이 적용됩니다.
AppStream

AppStream 리포지토리의 콘텐츠에는 다양한 워크로드 및 사용 사례를 지원하는 추가 사용자 공간 애플리케이션, 런타임 언어 및 데이터베이스가 포함되어 있습니다. AppStream의 콘텐츠는 다음 형식으로 제공됩니다.

  • RPM 패키지
  • RPM 형식의 확장인 모듈
중요

BaseOS 및 AppStream 콘텐츠 세트는 모두 RHEL에서 필요하며 모든 RHEL 서브스크립션에서 사용할 수 있습니다. 설치 지침은 설치 미디어에서 RHEL을 대화형으로 설치를 참조하십시오.

CodeReady Linux Builder
CodeReady Linux Builder 리포지토리는 모든 RHEL 서브스크립션과 함께 사용할 수 있습니다. 이는 개발자가 사용할 수 있는 추가 패키지를 제공합니다. Red Hat은 CodeReady Linux Builder 리포지토리에 포함된 패키지를 지원하지 않습니다.

2.2. Application Streams

RHEL(Red Hat Enterprise Linux) 8에는 Application Streams라는 여러 버전의 사용자 공간 구성 요소의 개념이 도입되었습니다. 이러한 구성 요소는 코어 운영 체제 패키지보다 더 자주 제공 및 업데이트됩니다. 따라서 플랫폼 또는 특정 배포의 기본 안정성에 영향을 주지 않고 Red Hat Enterprise Linux RHEL을 사용자 지정할 수 있는 유연성이 향상됩니다. Application Streams는 AppStream 리포지토리를 통해 제공됩니다.

Application Streams는 다음 형식으로 사용할 수 있습니다.

  • RPM 패키지
  • RPM 형식의 확장인 모듈
중요

각 Application Stream에는 자체 라이프 사이클이 있으며 RHEL 8의 라이프 사이클과 동일하거나 짧을 수 있습니다. 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.

항상 설치할 Application Stream 버전을 결정하고 RHEL Application Stream 라이프 사이클을 먼저 검토하십시오.

2.3. 모듈 소개

모듈은 구성 요소를 나타내는 RPM 패키지 세트입니다. 일반적인 모듈에는 다음 패키지 유형이 포함되어 있습니다.

  • 애플리케이션이 있는 패키지
  • 애플리케이션별 종속성 라이브러리가 있는 패키지
  • 애플리케이션에 대한 문서가 있는 패키지
  • 도우미 유틸리티가 있는 패키지

2.3.1. 모듈 스트림

모듈 스트림은 AppStream 물리적 리포지토리에서 가상 리포지토리로 간주할 수 있는 필터입니다. AppStream 구성 요소의 모듈 스트림 버전입니다. 각 스트림은 개별적으로 업데이트를 수신하며 다른 모듈 스트림에 따라 달라질 수 있습니다.

모듈 스트림은 활성 또는 비활성 상태일 수 있습니다. 활성 스트림은 특정 모듈 스트림 내의 RPM 패키지에 대한 시스템 액세스를 제공하여 각 구성 요소 버전을 설치할 수 있습니다.

다음과 같은 경우 스트림이 활성화됩니다.

  • 관리자가 명시적으로 활성화하는 경우.
  • 스트림이 활성화된 모듈의 종속 항목인 경우
  • 스트림이 기본 스트림인 경우 각 모듈에는 기본 스트림이 있을 수 있습니다. 기본 스트림을 사용하면 모듈에 대해 배울 필요 없이 RHEL 패키지를 일반적인 방식으로 쉽게 사용할 수 있습니다. 전체 모듈이 비활성화되거나 해당 모듈의 다른 스트림이 활성화되지 않은 경우 기본 스트림은 활성화됩니다.

특정 모듈의 한 스트림만 지정된 시점에서 활성화할 수 있습니다. 따라서 하나의 구성 요소 버전만 시스템에 설치할 수 있습니다. 개별 컨테이너에서 서로 다른 버전을 사용할 수 있습니다.

중요

기본 스트림은 RHEL 주요 릴리스 전체에서 변경되지 않습니다. 각 스트림의 라이프 사이클을 항상 고려하십시오. RHEL 주요 릴리스가 종료되기 전에 기본 스트림이 Life 상태에 도달하는 인스턴스에 대해 기본 스트림을 사용하지 마십시오.

특정 모듈 스트림은 다른 모듈 스트림에 따라 다릅니다. 예를 들어 다음 모듈 스트림은 특정 perl 모듈 스트림에 따라 다릅니다.

  • perl-App-cpanminus
  • perl-DBD-MySQL
  • perl-DBD-Pg
  • perl-DBD-SQLite
  • perl-DBI
  • perl-YAML
  • freeradius

런타임 사용자 애플리케이션 또는 개발자 애플리케이션에 대한 특정 스트림을 선택하기 전에 다음을 고려하십시오.

  • 필수 기능 및 이를 지원하는 구성 요소 버전은 무엇입니까.
  • 애플리케이션 또는 사용 사례와의 호환성.
  • 애플리케이션 스트림의 라이프 사이클 및 업데이트 계획

사용 가능한 모든 모듈 및 스트림 목록은 패키지 매니페스트 를 참조하십시오. 구성 요소별 변경 사항은 릴리스 노트 를 참조하십시오.

2.3.2. 모듈 프로필

모듈 프로필은 서버, 클라이언트, 개발, 최소 설치 또는 기타와 같은 특정 사용 사례에 대해 함께 설치할 권장 패키지 목록입니다. 이러한 패키지 목록에는 일반적으로 BaseOS 리포지토리 또는 스트림의 종속 항목에서 모듈 스트림 외부의 패키지가 포함될 수 있습니다.

프로필을 사용하여 패키지를 설치하는 것은 사용자의 편의를 위해 제공되는 일회성 작업입니다. 모듈에서 제공하는 패키지를 설치하거나 제거하지는 않습니다. 추가 준비 단계 없이 동일한 모듈 스트림의 여러 프로필을 사용하여 패키지를 설치할 수도 있습니다.

각 모듈 스트림은 none을 포함하여 여러 프로필을 가질 수 있습니다. 지정된 모듈 스트림에 대해 일부 프로필을 기본값으로 표시할 수 있으며 프로필을 명시적으로 지정하지 않은 경우 프로필 설치 작업에 사용됩니다. 그러나 모듈 스트림에 대한 기본 프로필이 존재할 필요는 없습니다.

예 2.1. httpd 모듈 프로필

Apache 웹 서버를 제공하는 httpd 모듈은 설치에 다음 프로필을 제공합니다.

# yum module list httpd
Name           Stream           Profiles                            Summary
httpd          2.4 [d]          common [d], devel, minimal          Apache HTTP Server

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Copy to Clipboard Toggle word wrap

이 예에서는 다음 프로필을 사용할 수 있습니다.

  • 공통: 프로덕션 지원 패키지입니다. 기본 프로필([d])입니다.
  • devel: httpd 를 수정하는 데 필요한 패키지입니다.
  • 최소: 실행 중인 Apache 웹 서버를 제공하는 최소 패키지 세트입니다.

3장. YUM 구성

YUM 및 관련 유틸리티의 구성 정보는 /etc/yum.conf 파일에 저장됩니다. 이 파일에는 글로벌 효과가 있는 YUM 옵션을 설정하는 데 사용할 수 있는 필수 [main] 섹션이 포함되어 있습니다.

3.1. 현재 YUM 구성 보기

/etc/yum.conf 파일의 [main] 섹션에는 명시적으로 설정된 설정만 포함되어 있습니다. 그러나 설정되지 않은 옵션과 기본값을 포함하여 [main] 섹션의 모든 설정을 표시할 수 있습니다.

절차

  • 글로벌 YUM 구성을 표시합니다.

    # yum config-manager --dump
    Copy to Clipboard Toggle word wrap

3.2. YUM 기본 옵션 설정

/etc/yum.conf 구성 파일에는 하나의 [main] 섹션이 포함되어 있습니다. 이 섹션의 키-값 쌍은 YUM 이 리포지토리를 작동하고 처리하는 방식에 영향을 미칩니다.

절차

  1. /etc/yum.conf 파일을 편집합니다.
  2. 요구 사항에 따라 [main] 섹션을 업데이트합니다.
  3. 변경 사항을 저장합니다.

3.3. YUM 플러그인 활성화 및 비활성화

YUM 툴에서 플러그인은 기본적으로 로드됩니다. 그러나 어떤 플러그인 YUM 로드에 영향을 줄 수 있습니다.

주의

잠재적인 문제를 진단하기 위해서만 모든 플러그인을 비활성화합니다. YUM 에는 product-idsubscription-manager 와 같은 특정 플러그인이 필요하며 이를 비활성화하면 Red Hat Enterprise Linux가 CDN(Content Delivery Network)에서 소프트웨어를 설치하거나 업데이트할 수 없습니다.

절차

  • 다음 방법 중 하나를 사용하여 YUM 이 플러그인을 사용하는 방법에 영향을 미칩니다.

    • 전역적으로 YUM 플러그인 로드를 활성화하거나 비활성화하려면 plugins 매개변수를 /etc/dnf/dnf.conf 파일의 [main] 섹션에 추가합니다.

      • plugins=1 (기본값)을 설정하여 모든 YUM 플러그인을 로드할 수 있습니다.
      • plugins=0 을 설정하여 모든 YUM 플러그인의 로드를 비활성화합니다.
    • 특정 플러그인을 비활성화하려면 /etc/dnf/plugins/ <plug-in_name > .conf 파일의 [main] 섹션에 enabled=False 를 추가합니다.
    • 특정 명령의 YUM 플러그인을 모두 비활성화하려면 명령에 --noplugins 옵션을 추가합니다. 예를 들어 단일 업데이트 명령에 대해 YUM 플러그인을 비활성화하려면 다음을 입력합니다.

      # yum --noplugins update
      Copy to Clipboard Toggle word wrap
    • 단일 명령에 대해 특정 YUM 플러그인을 비활성화하려면 명령에 --disableplugin=plugin-name 옵션을 추가합니다. 예를 들어 단일 업데이트 명령에 대해 특정 YUM 플러그인을 비활성화하려면 다음을 입력합니다.

      # yum update --disableplugin=<plugin_name>
      Copy to Clipboard Toggle word wrap
    • 단일 명령에 대해 특정 YUM 플러그인을 활성화하려면 명령에 --enableplugin=plugin-name 옵션을 추가합니다. 예를 들어 단일 업데이트 명령에 대해 특정 YUM 플러그인을 활성화하려면 다음을 입력합니다.

      # yum update --enableplugin=<plugin_name>
      Copy to Clipboard Toggle word wrap

3.4. YUM 작업에서 패키지 제외

excludepkgs 옵션을 사용하여 YUM 작업에서 패키지를 제외하도록 YUM 을 구성할 수 있습니다. [main] 또는 /etc/yum.conf 파일의 repository 섹션에 excludepkgs 를 정의할 수 있습니다.

참고

--disableexcludes 옵션을 사용하여 작업에서 구성된 패키지를 일시적으로 사용하지 않도록 비활성화할 수 있습니다.

절차

  • /etc/yum.conf 파일에 다음 행을 추가하여 YUM 작업에서 패키지를 제외합니다.

    excludepkgs=<package_name_1>,<package_name_2> ...
    Copy to Clipboard Toggle word wrap

    또는 패키지 이름 대신 전역 표현식을 사용하여 제외할 패키지를 정의합니다. 자세한 내용은 yum 입력에서 전역 표현식 지정 을 참조하십시오.

4장. RHEL 8 콘텐츠 검색

다음 섹션에서 YUM 을 사용하여 Red Hat Enterprise Linux 8의 AppStream 및 BaseOS 리포지토리에서 콘텐츠를 찾고 검사하는 방법을 알아봅니다.

4.1. 소프트웨어 패키지 검색

필요한 소프트웨어를 제공하는 패키지를 확인하려면 YUM 을 사용하여 리포지토리를 검색할 수 있습니다.

절차

  • 시나리오에 따라 다음 옵션 중 하나를 사용하여 리포지토리를 검색합니다.

    • 패키지 이름 또는 요약에서 용어를 검색하려면 다음을 입력합니다.

      $ yum search <term>
      Copy to Clipboard Toggle word wrap
    • 패키지 이름, 요약 또는 설명에서 용어를 검색하려면 다음을 입력합니다.

      $ yum search --all <term>
      Copy to Clipboard Toggle word wrap

      --all 옵션을 사용하여 설명에서 추가로 검색하는 것은 일반적인 검색 작업보다 느립니다.

4.2. 소프트웨어 패키지 나열

YUM 을 사용하여 리포지토리에서 사용할 수 있는 패키지 및 해당 버전 목록을 표시할 수 있습니다.

절차

  • 아키텍처, 버전 번호, 설치 위치 리포지토리를 포함하여 사용 가능한 모든 패키지의 최신 버전을 나열합니다.

    $ yum list --all
    ...
    cups.x86_64           1:2.2.6-57.el8       @rhel-AppStream
    cups-client.x86_64    1:2.2.6-57.el8       @rhel-AppStream
    cups-devel.i686       1:2.2.6-57.el8       rhel-AppStream
    cups-devel.x86_64     1:2.2.6-57.el8       rhel-AppStream
    ...
    Copy to Clipboard Toggle word wrap

    리포지토리 앞의 @ 기호는 이 행의 패키지가 현재 설치되어 있음을 나타냅니다.

    또는 버전 번호 및 아키텍처를 포함하여 사용 가능한 모든 패키지를 표시하려면 다음을 입력합니다.

    $ yum list --all
    ...
    cups-1:2.2.6-57.el8.x86_64
    cups-client-1:2.2.6-57.el8.x86_64
    cups-devel-1:2.2.6-57.el8.i686
    cups-devel-1:2.2.6-57.el8.x86_64
    ...
    Copy to Clipboard Toggle word wrap

    선택적으로 --all 대신 다른 옵션을 사용하여 출력을 필터링할 수 있습니다. 예를 들면 다음과 같습니다.

    • 설치된 패키지만 나열하려면 -- installed 를 사용합니다.
    • 사용 가능한 모든 패키지를 나열하려면 --available 을 사용합니다.
    • --upgrades 를 사용하여 최신 버전을 사용할 수 있는 패키지를 나열합니다.
참고

글로벌 표현식을 인수로 추가하여 결과를 필터링할 수 있습니다. 자세한 내용은 yum 입력에서 전역 표현식 지정 을 참조하십시오.

4.3. 리포지토리 나열

시스템에서 활성화 및 비활성화된 리포지토리의 개요를 보려면 나열할 수 있습니다.

절차

  1. 시스템에서 활성화된 모든 리포지토리를 나열합니다.

    # yum repolist
    Copy to Clipboard Toggle word wrap

    특정 리포지토리만 표시하려면 다음 옵션 중 하나를 명령에 추가합니다.

    • 비활성화된 리포지토리만 나열하려면 --disabled 를 추가합니다.
    • 활성화된 리포지토리와 비활성화된 리포지토리를 모두 나열하려면 --all 을 추가합니다.
  2. 선택 사항: 리포지토리에 대한 추가 정보를 나열합니다.

    # yum repoinfo <repository_name>
    Copy to Clipboard Toggle word wrap
    참고

    글로벌 표현식을 인수로 추가하여 결과를 필터링할 수 있습니다. 자세한 내용은 yum 입력에서 전역 표현식 지정 을 참조하십시오.

4.4. 패키지 정보 표시

YUM 리포지토리를 쿼리하여 다음과 같은 패키지에 대한 추가 세부 정보를 표시할 수 있습니다.

  • 버전
  • 릴리스
  • 아키텍처
  • 패키지 크기
  • 설명

절차

  • 하나 이상의 사용 가능한 패키지에 대한 정보를 표시합니다.

    # yum info <package_name>
    Copy to Clipboard Toggle word wrap

    이 명령은 현재 설치된 패키지에 대한 정보와 사용 가능한 경우 리포지토리에 있는 최신 버전의 정보를 표시합니다.

참고

글로벌 표현식을 인수로 추가하여 결과를 필터링할 수 있습니다. 자세한 내용은 yum 입력에서 전역 표현식 지정 을 참조하십시오.

4.5. 제공하는 패키지 그룹 및 패키지 나열

패키지 그룹은 여러 패키지를 번들하며 패키지 그룹을 사용하여 단일 단계에서 그룹에 할당된 모든 패키지를 설치할 수 있습니다. 그러나 설치 전에 필요한 패키지 그룹의 이름을 식별해야 합니다.

절차

  1. 설치된 그룹과 사용 가능한 그룹을 모두 나열합니다.

    # yum group list
    Copy to Clipboard Toggle word wrap

    yum group list 명령에 -- installed--available 옵션을 추가하여 결과를 필터링할 수 있습니다. --hidden 옵션을 사용하면 출력에 숨겨진 그룹을 표시할 수 있습니다.

  2. 특정 그룹에 포함된 필수, 선택 사항 및 기본 패키지를 나열합니다.

    # yum group info <group_name>
    Copy to Clipboard Toggle word wrap
    참고

    글로벌 표현식을 인수로 추가하여 결과를 필터링할 수 있습니다. 자세한 내용은 yum 입력에서 전역 표현식 지정 을 참조하십시오.

  3. 선택 사항: 설치되어 사용 가능한 그룹 수를 확인합니다.

    # yum group summary
    Copy to Clipboard Toggle word wrap

4.6. 사용 가능한 모듈 및 해당 콘텐츠 나열

모듈을 검색하고 YUM 을 사용하여 정보를 표시하면 리포지토리에서 사용할 수 있는 모듈을 식별하고 모듈을 설치하기 전에 적절한 스트림을 선택할 수 있습니다.

절차

  1. 다음 방법 중 하나로 모듈 정보를 나열합니다.

    • 사용 가능한 모든 모듈을 나열합니다.

      $ yum module list
      Name         Stream   Profiles                                Summary
      ...
      nodejs       18       common [d], development, minimal, s2i   Javascript runtime
      postgresql   15       client, server [d]                      PostgreSQL server and client module
      ...
      
      Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
      Copy to Clipboard Toggle word wrap

      yum module list & lt;module_name > 명령을 사용하여 특정 모듈에 대해서만 동일한 정보를 나열합니다.

    • 특정 패키지를 제공하는 모듈을 검색합니다.

      $ yum module provides <package_name>
      Copy to Clipboard Toggle word wrap

      예를 들어 npm 패키지를 제공하는 모듈과 프로필을 표시하려면 다음을 입력합니다.

      $ yum module provides npm
      ...
      npm-1:8.19.4-1.16.20.2.4.module+el8.9.0+21536+8fdee1fb.x86_64
      Module   : nodejs:16:8090020240315081818:a75119d5:x86_64
      Profiles : common development s2i
      Repo     : rhel-AppStream
      Summary  : Javascript runtime
      ...
      Copy to Clipboard Toggle word wrap
  2. 다음 방법 중 하나를 사용하여 모듈 세부 정보를 나열합니다.

    • 설명, 모든 프로필 목록, 모듈에서 제공하는 모든 패키지 목록을 포함하여 모듈에 대한 모든 세부 정보를 나열합니다.

      $ yum module info <module_name>
      Copy to Clipboard Toggle word wrap

      예를 들어 nodejs 모듈에 대한 세부 정보를 표시하려면 다음을 입력합니다.

      $ yum module info nodejs
      ...
      Name             : nodejs
      Stream           : 20
      Version          : 8090020240228165436
      Context          : a75119d5
      Architecture     : x86_64
      Profiles         : common [d], development, minimal, s2i
      Default profiles : common
      Repo             : rhel-AppStream
      Summary          : Javascript runtime
      Description      : Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
      Requires         : platform:[el8]
      Artifacts        : nodejs-1:20.11.1-1.module+el8.9.0+21380+12032667.src
                       : nodejs-1:20.11.1-1.module+el8.9.0+21380+12032667.x86_64
      ...
      Copy to Clipboard Toggle word wrap
    • 각 모듈 프로파일이 설치하는 패키지를 나열합니다.

      $ yum module info --profile <module_name>
      Copy to Clipboard Toggle word wrap
      참고

      각 프로필은 종속성을 포함하여 다른 패키지 세트를 설치합니다.

      예를 들어 nodejs 모듈에 대한 이 정보를 표시하려면 다음을 입력합니다.

      $ yum module info --profile nodejs
      ...
      Name        : nodejs:18:8090020240301110609:a75119d5:x86_64
      common      : nodejs
                  : npm
      development : nodejs
                  : nodejs-devel
                  : npm
      minimal     : nodejs
      s2i         : nodejs
                  : nodejs-nodemon
                  : npm
      ...
      Copy to Clipboard Toggle word wrap

4.7. YUM 입력에 글로벌 표현식 지정

하나 이상의 전역 표현식을 인수로 추가하여 yum 명령의 결과를 필터링할 수 있습니다.

절차

  • yum 명령에서 전역 표현식을 사용하는 경우 다음 방법 중 하나를 사용합니다.

    • 전체 전역 표현식을 작은따옴표 또는 큰따옴표로 묶습니다.

      # yum provides "*/<file_name>"
      Copy to Clipboard Toggle word wrap

      절대 경로의 경우 백슬래시(/) 문자 또는 전체 경로가 알 수 없는 경우 와일드카드를 사용하려면 < file_name > 앞에 <file_name>을 지정해야 합니다.

    • 와일드카드 문자 앞에 백슬래시(\) 문자를 이스케이프합니다.

      # yum provides \*/<file-name>
      Copy to Clipboard Toggle word wrap

5장. RHEL 8 콘텐츠 설치

다음 섹션에서 YUM 을 사용하여 Red Hat Enterprise Linux 8에 콘텐츠를 설치하는 방법을 알아봅니다.

5.1. 패키지 설치

소프트웨어가 기본 설치에 포함되지 않은 경우 수동으로 설치할 수 있습니다. YUM 은 종속성을 자동으로 해결하고 설치합니다.

사전 요구 사항

  • 선택 사항: 설치할 패키지의 이름을 알고 있습니다.
  • 설치하려는 패키지가 모듈 스트림에서 제공하는 경우 해당 모듈 스트림이 활성화됩니다. 자세한 내용은 모듈 스트림 활성화를 참조하십시오.

    참고

    패키지가 기본값으로 표시된 모듈 스트림에서 제공하는 경우 yum 은 이 패키지를 설치하기 전에 해당 모듈 스트림을 자동으로 활성화합니다.

절차

  • 다음 방법 중 하나를 사용하여 패키지를 설치합니다.

    • 리포지토리에서 패키지를 설치하려면 다음을 입력합니다.

      # yum install <package_name_1> <package_name_2> ...
      Copy to Clipboard Toggle word wrap

      AMD64 및 Intel 64와 같은 여러 아키텍처를 지원하는 시스템에 패키지를 설치하는 경우 패키지 이름에 패키지를 추가하여 패키지 아키텍처를 지정할 수 있습니다.

      # yum install <package_name>.<architecture>
      Copy to Clipboard Toggle word wrap
    • 패키지가 제공하는 파일의 경로만 알고 있지만 패키지 이름이 아닌 경우에만 패키지를 설치하려면 이 경로를 사용하여 해당 패키지를 설치할 수 있습니다.

      # yum install <path_to_file>
      Copy to Clipboard Toggle word wrap
    • 로컬 RPM 파일을 설치하려면 다음을 입력합니다.

      # yum install <path_to_RPM_file>
      Copy to Clipboard Toggle word wrap

      패키지에 종속 항목이 있는 경우 이러한 RPM 파일의 경로도 지정합니다. 그러지 않으면 YUM 이 리포지토리에서 종속성을 다운로드하거나 리포지토리에서 사용할 수 없는 경우 실패합니다.

5.2. 패키지 그룹 설치

패키지 그룹은 여러 패키지를 번들하며 패키지 그룹을 사용하여 단일 단계에서 그룹에 할당된 모든 패키지를 설치할 수 있습니다.

절차

  • 다음 방법 중 하나를 사용하여 패키지 그룹을 설치합니다.

    • 그룹 이름으로 패키지 그룹을 설치하려면 다음 명령 중 하나를 입력합니다.

      # yum group install <group_name>
      # yum install @<group_name>
      Copy to Clipboard Toggle word wrap
    • groupID로 패키지 그룹을 설치하려면 다음을 입력합니다.

      # yum group install <group_ID>
      Copy to Clipboard Toggle word wrap

5.3. 모듈 스트림 활성화

설치하려는 패키지가 모듈 스트림에서 제공하는 경우 해당 모듈 스트림을 활성화해야 합니다.

참고

패키지가 기본값으로 표시된 모듈 스트림에서 제공하는 경우 yum 은 이 패키지를 설치하기 전에 해당 모듈 스트림을 자동으로 활성화합니다.

중요

설치에 대해 항상 특정 모듈 스트림을 선택하는 것이 좋습니다. 각 스트림의 라이프 사이클을 항상 고려하십시오.

특정 기본 모듈 스트림은 RHEL 주요 릴리스가 종료되기 전에 End of Life 상태에 도달합니다.

절차

  • 모듈 스트림을 활성화합니다.

    # yum module enable <module_name>:<stream>
    Copy to Clipboard Toggle word wrap
    참고

    모듈의 다른 스트림이 이전에 default인 경우 비활성 상태가 됩니다.

5.4. 모듈식 콘텐츠 설치

특정 소프트웨어의 경우 Red Hat은 모듈을 제공합니다. 모듈을 사용하여 특정 버전(스트림) 및 패키지 집합(프로파일)을 설치할 수 있습니다.

중요

모듈 스트림의 라이프 사이클을 항상 고려하십시오.

사전 요구 사항

  • 동일한 모듈의 다른 스트림에서 패키지를 설치할 수 없습니다.

절차

  1. 설치할 패키지를 제공하는 모듈을 나열합니다.

    # yum module list <module_name>
    Copy to Clipboard Toggle word wrap

    예를 들어 postgresql-server 패키지를 제공하는 모듈을 나열하려면 다음을 입력합니다.

    $ yum module list postgresql
    Name        Stream  Profiles            Summary
    postgresql  9.6     client, server [d]  PostgreSQL server and client module
    postgresql  10 [d]  client, server [d]  PostgreSQL server and client module
    postgresql  12      client, server [d]  PostgreSQL server and client module
    postgresql  13      client, server [d]  PostgreSQL server and client module
    postgresql  15      client, server [d]  PostgreSQL server and client module
    
    Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
    Copy to Clipboard Toggle word wrap

    출력에서 postgresql 모듈을 스트림 9.6,10, 12,12,1315 와 함께 사용할 수 있음을 보여줍니다. 기본 스트림은 10 ([d])입니다.

  2. 선택한 모듈 스트림을 설치합니다.

    # yum module install <module-name>:<stream>/<profile>
    Copy to Clipboard Toggle word wrap

    스트림의 기본 프로필이 정의된 경우 명령에서 /<profile >을 생략하여 스트림의 이 기본 프로필을 설치할 수 있습니다.

    예를 들어 postgresql 모듈의 스트림 13 에 대한 기본 프로필(서버)을 설치하려면 다음을 입력합니다.

    # yum module install postgresql:13
    ...
    Dependencies resolved.
    ===================================================================================================================
     Package                  Architecture  Version                                        Repository             Size
    ===================================================================================================================
    Installing group/module packages:
     postgresql-server        x86_64        13.10-1.module+el8.7.0+18279+1ca8cf12          rhel-AppStream        5.6 M
    Installing dependencies:
     libicu                   x86_64        60.3-2.el8_1                                   rhel                  8.8 M
     libpq                    x86_64        13.5-1.el8                                     rhel-AppStream        198 k
     postgresql               x86_64        13.10-1.module+el8.7.0+18279+1ca8cf12          rhel-AppStream        1.5 M
    Installing module profiles:
     postgresql/server
    Enabling module streams:
     postgresql                             13
    Copy to Clipboard Toggle word wrap

검증

  • 올바른 모듈 스트림이 활성화되고 필요한 프로파일이 설치되어 있는지 확인합니다([i]).

    # yum module list postgresql
    ...
    Name                Stream          Profiles                       Summary
    postgresql          9.6             client, server [d]             PostgreSQL server and client module
    postgresql          10 [d]          client, server [d]             PostgreSQL server and client module
    postgresql          12              client, server [d]             PostgreSQL server and client module
    postgresql          13 [e]          client, server [d] [i]         PostgreSQL server and client module
    postgresql          15              client, server [d]             PostgreSQL server and client module
    postgresql          16              client, server [d]             PostgreSQL server and client module
    
    Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
    Copy to Clipboard Toggle word wrap

5.5. 설치에 대한 패키지 세부 정보 지정

정확한 패키지 설치 프로세스에 대한 패키지 세부 정보를 지정할 수 있습니다. 이렇게 하려면 yum install 명령에 다음 접미사를 추가하여 인수를 구문 분석하는 방법을 명시적으로 정의합니다.

  • -n 을 사용하여 정확한 패키지 이름을 지정합니다.
  • -na 를 사용하여 정확한 패키지 이름과 아키텍처를 지정합니다.
  • -nevra 를 사용하여 정확한 패키지 이름, epoch, 버전, 릴리스 및 아키텍처를 지정합니다.

절차

  • 시나리오에 따라 다음 옵션 중 하나를 사용하여 패키지 설치 프로세스를 최적화합니다.

    • 정확한 이름을 사용하여 패키지를 설치하려면 다음을 입력합니다.

      # yum install-n <package_name>
      Copy to Clipboard Toggle word wrap
    • 정확한 이름과 아키텍처를 사용하여 패키지를 설치하려면 다음을 입력합니다.

      # yum install-na <package_name>.<architecture>
      Copy to Clipboard Toggle word wrap
    • 정확한 이름, epoch, 버전, 릴리스 및 아키텍처를 사용하여 패키지를 설치하려면 다음을 입력합니다.

      # yum install-nevra <package_name>-<epoch>:<version>-<release>.<architecture>
      Copy to Clipboard Toggle word wrap

6장. RHEL 8 콘텐츠 업데이트

YUM 을 사용하면 시스템에 보류 중인 업데이트가 있는지 확인할 수 있습니다. 업데이트가 필요한 패키지를 나열하고 단일 패키지, 여러 패키지 또는 모든 패키지를 한 번에 업데이트하도록 선택할 수 있습니다. 업데이트할 패키지에 종속성이 있는 경우 이러한 종속성도 업데이트됩니다.

6.1. 업데이트 확인

시스템에 설치된 패키지가 사용 가능한 업데이트를 식별하려면 나열할 수 있습니다.

절차

  • 설치된 패키지에 대해 사용 가능한 업데이트를 확인합니다.

    # yum check-update
    Copy to Clipboard Toggle word wrap

    출력은 사용 가능한 패키지 및 해당 종속 항목을 반환합니다.

6.2. 패키지 업데이트

YUM 을 사용하여 단일 패키지 또는 모든 패키지와 해당 종속 항목을 한 번에 업데이트할 수 있습니다.

중요

커널에 업데이트를 적용할 때 YUM 은 항상 yum update 또는 yum install 명령을 사용하는지 여부와 관계없이 새 커널을 설치합니다. 이는 installonlypkgs YUM 구성 옵션을 사용하여 식별된 패키지에만 적용됩니다. 이러한 패키지에는 커널 , kernel -core, kernel-modules 패키지가 포함됩니다.

  • 시나리오에 따라 다음 옵션 중 하나를 사용하여 업데이트를 적용합니다.

    • 모든 패키지 및 해당 종속 항목을 업데이트하려면 다음을 입력합니다.

      # yum update
      Copy to Clipboard Toggle word wrap
    • 단일 패키지를 업데이트하려면 다음을 입력합니다.

      # yum update <package_name>
      Copy to Clipboard Toggle word wrap
중요

BIOS 또는 IBM Power 시스템에서 GRUB 부트 로더 패키지를 업그레이드한 경우 GRUB을 다시 설치하십시오. GRUB 재설치를 참조하십시오.

6.3. 패키지 그룹 업데이트

패키지 그룹은 여러 패키지를 번들하며 패키지 그룹을 사용하여 단일 단계에서 그룹에 할당된 모든 패키지를 업데이트할 수 있습니다.

절차

  • 특정 패키지 그룹에서 패키지를 업데이트합니다.

    # yum group update <group_name>
    Copy to Clipboard Toggle word wrap
중요

BIOS 또는 IBM Power 시스템에서 GRUB 부트 로더 패키지를 업그레이드한 경우 GRUB을 다시 설치하십시오. GRUB 재설치를 참조하십시오.

7장. RHEL 8에서 소프트웨어 업데이트 자동화

DNF Automaticsystemd 타이머, cron 작업 및 기타 이러한 툴을 사용하여 자동 및 정기 실행에 적합한 YUM 명령줄 인터페이스입니다.

DNF 자동 은 필요에 따라 패키지 메타데이터를 동기화하고 사용 가능한 업데이트를 확인한 다음 툴 구성 방법에 따라 다음 작업 중 하나를 수행합니다.

  • 종료
  • 업데이트된 패키지 다운로드
  • 업데이트 다운로드 및 적용

그런 다음 작업 결과는 표준 출력 또는 이메일과 같은 선택한 메커니즘에 의해 보고됩니다.

7.1. DNF 자동 설치

패키지 업데이트를 자동으로 확인하고 정기적으로 다운로드하려면 dnf-automatic 패키지에서 제공하는 DNF 자동 툴을 사용할 수 있습니다.

절차

  • dnf-automatic 패키지를 설치합니다.

    # yum install dnf-automatic
    Copy to Clipboard Toggle word wrap

검증

  • dnf-automatic 패키지가 있는지 확인하여 설치에 성공했는지 확인합니다.

    # rpm -qi dnf-automatic
    Copy to Clipboard Toggle word wrap

7.2. DNF 자동 구성 파일

기본적으로 DNF 자동/etc/dnf/automatic.conf 를 구성 파일로 사용하여 동작을 정의합니다.

구성 파일은 다음 주제 섹션으로 구분됩니다.

  • [commands]

    DNF 자동 작동 모드를 설정합니다.

    주의

    [commands] 섹션의 작업 모드 설정은 dnf-automatic.timer 를 제외한 모든 타이머 단위에 대해 systemd 타이머 장치에서 사용하는 설정으로 재정의됩니다.

  • [emitter]

    DNF 자동 결과가 보고되는 방법을 정의합니다.

  • [command] 섹션

    명령 emitter 구성을 제공합니다.

  • [command_email]

    이메일을 보내는 데 사용되는 외부 명령의 이메일 내보내기 구성을 제공합니다.

  • [email]

    이메일 emitter 구성을 제공합니다.

  • [base]

    YUM 의 기본 구성 파일의 설정을 덮어씁니다.

/etc/dnf/automatic.conf 파일의 기본 설정으로 DNF 자동 에서 사용 가능한 업데이트를 확인하고 다운로드한 후 결과를 표준 출력으로 보고합니다.

7.3. DNF 자동 활성화

DNF 자동 을 한 번 실행하려면 systemd 타이머 장치를 시작해야 합니다. 그러나 DNF 자동 을 주기적으로 실행하려면 타이머 장치를 활성화해야 합니다. dnf-automatic 패키지에 제공된 타이머 장치 중 하나를 사용하거나 타이머 장치에 대한 드롭인 파일을 만들어 실행 시간을 조정할 수 있습니다.

사전 요구 사항

  • /etc/dnf/automatic.conf 구성 파일을 수정하여 DNF 자동 동작을 지정했습니다.

절차

  • 즉시 systemd 타이머 장치를 활성화하고 실행합니다.

    # systemctl enable --now <timer_name>
    Copy to Clipboard Toggle word wrap

    즉시 실행하지 않고 타이머만 활성화하려면 --now 옵션을 생략합니다.

    다음 타이머를 사용할 수 있습니다.

    • dnf-automatic-download.timer: 사용 가능한 업데이트를 다운로드합니다.
    • dnf-automatic-install.timer: 사용 가능한 업데이트를 다운로드하여 설치합니다.
    • dnf-automatic-notifyonly.timer: 사용 가능한 업데이트 보고서.
    • dnf-automatic.timer: 다운로드, 다운로드 및 설치 또는 사용 가능한 업데이트를 보고합니다.

검증

  • 타이머가 활성화되어 있는지 확인합니다.

    # systemctl status <timer_name>
    Copy to Clipboard Toggle word wrap
  • 선택 사항: 시스템의 각 타이머가 마지막으로 실행된 시기를 확인합니다.

    # systemctl list-timers --all
    Copy to Clipboard Toggle word wrap

7.4. dnf-automatic 패키지에 포함된 systemd 타이머 장치 개요

systemd 타이머 장치는 우선 순위를 지정하고 업데이트 다운로드 및 적용과 관련된 /etc/dnf/automatic.conf 구성 파일의 설정을 재정의합니다.

예를 들어 /etc/dnf/automatic.conf 구성 파일에서 download_updates = yes 옵션을 설정했지만 dnf-automatic-notifyonly.timer 장치를 활성화한 경우 패키지가 다운로드되지 않습니다.

Expand
타이머 단위함수/etc/dnf/automatic.conf 파일의 [commands] 섹션에서 apply_updatesdownload_updates 설정을 덮어씁니다.

dnf-automatic-download.timer

패키지를 캐시로 다운로드하고 업데이트할 수 있도록 합니다.

이 타이머 장치는 업데이트된 패키지를 설치하지 않습니다. 설치를 수행하려면 yum update 명령을 실행해야 합니다.

제공됨

dnf-automatic-install.timer

업데이트된 패키지를 다운로드하여 설치합니다.

제공됨

dnf-automatic-notifyonly.timer

리포지토리 캐시를 최신 상태로 유지하고 사용 가능한 업데이트에 대해 알리는 리포지토리 데이터만 다운로드합니다.

이 타이머 장치는 업데이트된 패키지를 다운로드하거나 설치하지 않습니다.

제공됨

dnf-automatic.timer

업데이트를 다운로드하고 적용할 때 이 타이머의 동작은 /etc/dnf/automatic.conf 파일의 설정에 따라 지정됩니다.

이 타이머는 패키지를 다운로드하지만 설치하지 않습니다.

없음

8장. RHEL 8 콘텐츠 제거

다음 섹션에서 YUM 을 사용하여 Red Hat Enterprise Linux 8의 콘텐츠를 제거하는 방법을 알아봅니다.

8.1. 설치된 패키지 제거

YUM 을 사용하여 시스템에 설치된 단일 패키지 또는 여러 패키지를 제거할 수 있습니다. 제거하도록 선택한 패키지에 없는 종속성이 있는 경우 YUM 은 이러한 종속성도 제거합니다.

절차

  • 특정 패키지를 제거합니다.

    # yum remove <package_name_1> <package_name_2> ...
    Copy to Clipboard Toggle word wrap

8.2. 패키지 그룹 제거

패키지 그룹은 여러 패키지를 번들로 제공합니다. 패키지 그룹을 사용하여 단일 단계에서 그룹에 할당된 모든 패키지를 제거할 수 있습니다.

절차

  • 다음 방법 중 하나를 사용하여 패키지 그룹을 설치합니다.

    • 그룹 이름으로 패키지 그룹을 제거하려면 다음 명령 중 하나를 입력합니다.

      # yum group remove <group_name>
      # yum remove @<group_name>
      Copy to Clipboard Toggle word wrap
    • groupID별 패키지 그룹을 제거하려면 다음을 입력합니다.

      # yum group remove <group_ID>
      Copy to Clipboard Toggle word wrap

8.3. 설치된 모듈식 콘텐츠 제거

설치된 모듈식 콘텐츠를 제거할 때 선택한 프로필 또는 전체 스트림에서 패키지를 제거할 수 있습니다.

중요

YUM 은 종속 패키지를 포함하여 프로필 또는 스트림으로 설치된 패키지에 해당하는 이름이 있는 모든 패키지를 제거하려고 합니다. 특히 시스템에서 사용자 지정 리포지토리를 활성화한 경우, 진행하기 전에 제거할 패키지 목록을 항상 확인하십시오.

8.3.1. 설치된 프로필에서 패키지 제거

프로필로 설치된 패키지를 제거하면 프로필에 의해 설치된 패키지에 해당하는 이름이 있는 모든 패키지가 제거됩니다. 여기에는 다른 프로필에 필요한 패키지를 제외하고 종속 항목이 포함됩니다.

선택한 스트림에서 모든 패키지를 제거하려면 모듈 스트림에서 모든 패키지 제거 단계를 완료합니다.

사전 요구 사항

  • 선택한 프로필은 yum module install module_name:stream/profile 명령을 사용하거나 yum install module_name:stream 명령을 사용하여 기본 프로필로 설치됩니다.

절차

  • 선택한 프로필에 속하는 패키지를 제거합니다.

    # yum module remove <module_name>:<stream>/<profile>
    Copy to Clipboard Toggle word wrap

    예를 들어 php:7.3 모듈 스트림의 devel 프로필에서 패키지를 제거하려면 다음을 입력합니다.

    # yum module remove php:7.3/devel
    (...)
    Dependencies resolved.
    =========================================================================
     Package                Arch   Version                       Repository                         Size
    =========================================================================
    Removing:
     libzip                 x86_64 1.5.2-1.module+el8.1.0+3189+a1bff096
                                                                 @rhel-8-for-x86_64-appstream-rpms 313 k
     php-devel              x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 5.3 M
     php-pear               noarch 1:1.10.9-1.module+el8.1.0+3189+a1bff096
                                                                 @rhel-8-for-x86_64-appstream-rpms 2.1 M
     php-pecl-zip           x86_64 1.15.4-1.module+el8.1.0+3189+a1bff096
                                                                 @rhel-8-for-x86_64-appstream-rpms 119 k
     php-process            x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 117 k
    Removing unused dependencies:
     autoconf               noarch 2.69-27.el8                   @rhel-8-for-x86_64-appstream-rpms 2.2 M
    ...
    Disabling module profiles:
     php/devel
    
    Transaction Summary
    =========================================================================
    Remove  64 Packages
    
    Freed space: 193 M
    Is this ok [y/N]: y
    Copy to Clipboard Toggle word wrap
    주의

    제거 중인 패키지 목록을 확인하고 사용하지 않는 종속 항목 제거: 제거 트랜잭션을 진행하기 전에 확인하십시오. 이 트랜잭션은 요청된 패키지, 사용되지 않는 종속 패키지 및 종속 패키지를 제거하여 시스템에 오류가 발생할 수 있습니다.

    또는 스트림 내 설치된 모든 프로필의 패키지를 설치 제거합니다.

    # yum module remove <module_name>:<stream>
    Copy to Clipboard Toggle word wrap
    참고

    이러한 작업은 프로필에 속하지 않는 스트림에서 패키지를 제거하지 않습니다.

검증

  • 올바른 프로필이 제거되었는지 확인합니다.

    $ yum module info php
    ...
    Name             : php
    Stream           : 7.3 [e] [a]
    Version          : 8020020200715124551
    Context          : ceb1cf90
    Architecture     : x86_64
    Profiles         : common [d] [i], devel, minimal [i]
    Default profiles : common
    Repo             : rhel-AppStream
    ...
    Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled, [a]ctive
    Copy to Clipboard Toggle word wrap

    devel 을 제외한 모든 프로필은 현재 설치되어 있습니다([i]).

8.3.2. 모듈 스트림에서 모든 패키지 제거

모듈 스트림과 함께 설치된 패키지를 제거하면 스트림에서 설치한 패키지에 해당하는 이름이 있는 모든 패키지가 제거됩니다. 여기에는 다른 모듈에 필요한 패키지를 제외하고 종속 항목이 포함됩니다.

선택한 프로필에서 패키지만 제거하려면 설치된 프로필에서 패키지 제거 단계를 완료합니다.

사전 요구 사항

  • 모듈 스트림이 활성화되고 스트림의 일부 패키지가 설치됩니다.

절차

  1. 선택한 스트림에서 모든 패키지를 제거합니다.

    # yum module remove --all <module_name>:<stream>
    Copy to Clipboard Toggle word wrap

    예를 들어 php:7.3 모듈 스트림에서 모든 패키지를 제거하려면 다음을 입력합니다.

    # yum module remove --all php:7.3
    (...)
    Dependencies resolved.
    =========================================================================
     Package                Arch   Version                       Repository                         Size
    =========================================================================
    Removing:
     libzip                 x86_64 1.5.2-1.module+el8.1.0+3189+a1bff096
                                                                 @rhel-8-for-x86_64-appstream-rpms 313 k
     php-cli                x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms  11 M
     php-common             x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 6.5 M
     php-devel              x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 5.3 M
     php-fpm                x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 5.6 M
     php-json               x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms  53 k
     php-mbstring           x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 1.9 M
     php-pear               noarch 1:1.10.9-1.module+el8.1.0+3189+a1bff096
                                                                 @rhel-8-for-x86_64-appstream-rpms 2.1 M
     php-pecl-zip           x86_64 1.15.4-1.module+el8.1.0+3189+a1bff096
                                                                 @rhel-8-for-x86_64-appstream-rpms 119 k
     php-process            x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 117 k
     php-xml                x86_64 7.3.5-5.module+el8.1.0+4560+e0eee7d6
                                                                 @rhel-8-for-x86_64-appstream-rpms 557 k
    Removing unused dependencies:
     autoconf               noarch 2.69-27.el8                   @rhel-8-for-x86_64-appstream-rpms 2.2 M
    ...
    Disabling module profiles:
     php/common
     php/devel
     php/minimal
    
    Transaction Summary
    =========================================================================
    Remove  73 Packages
    
    Freed space: 220 M
    Is this ok [y/N]: y
    Copy to Clipboard Toggle word wrap
    주의

    제거 중인 패키지 목록을 확인하고 사용하지 않는 종속 항목 제거: 제거 트랜잭션을 진행하기 전에 확인하십시오. 이 트랜잭션은 요청된 패키지, 사용되지 않는 종속 패키지 및 종속 패키지를 제거하여 시스템에 오류가 발생할 수 있습니다.

  2. 선택 사항: 다음 명령 중 하나를 입력하여 스트림을 재설정하거나 비활성화합니다.

    # yum module reset <module_name>
    # yum module disable <module_name>
    Copy to Clipboard Toggle word wrap

검증

  • 선택한 모듈 스트림의 모든 패키지가 제거되었는지 확인합니다.

    $ yum module info php
    ...
    Name             : php
    Stream           : 7.3 [e] [a]
    Version          : 8020020200715124551
    Context          : ceb1cf90
    Architecture     : x86_64
    Profiles         : common [d], devel, minimal
    Default profiles : common
    ...
    Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled, [a]ctive
    Copy to Clipboard Toggle word wrap

    php 모듈의 7.3 스트림은 현재 활성화되어 있지만([e]) 이 스트림의 패키지가 설치되어 있지 않습니다([i]).

8.4. 제거를 위한 패키지 세부 정보 지정

정확한 패키지 제거 프로세스에 대한 패키지 세부 정보를 지정할 수 있습니다. 이렇게 하려면 yum remove 명령에 다음 접미사를 추가하여 인수를 구문 분석하는 방법을 명시적으로 정의합니다.

  • -n 을 사용하여 정확한 패키지 이름을 지정합니다.
  • -na 를 사용하여 정확한 패키지 이름과 아키텍처를 지정합니다.
  • -nevra 를 사용하여 정확한 패키지 이름, epoch, 버전, 릴리스 및 아키텍처를 지정합니다.

절차

  • 시나리오에 따라 다음 옵션 중 하나를 사용하여 패키지 제거 프로세스를 최적화합니다.

    • 정확한 이름을 사용하여 패키지를 제거하려면 다음을 입력합니다.

      # yum remove-n <package_name>
      Copy to Clipboard Toggle word wrap
    • 정확한 이름과 아키텍처를 사용하여 패키지를 제거하려면 다음을 입력합니다.

      # yum remove-na <package_name>.<architecture>
      Copy to Clipboard Toggle word wrap
    • 정확한 이름, epoch, 버전, 릴리스 및 아키텍처를 사용하여 패키지를 제거하려면 다음을 입력합니다.

      # yum remove-nevra <package_name>-<epoch>:<version>-<release>.<architecture>
      Copy to Clipboard Toggle word wrap

9장. 패키지 관리 내역 처리

yum history 명령을 사용하면 다음 정보를 검토할 수 있습니다.

  • YUM 트랜잭션의 타임라인.
  • 트랜잭션이 발생한 날짜 및 시간입니다.
  • 트랜잭션의 영향을 받는 패키지 수입니다.
  • 트랜잭션이 성공했는지 또는 중단되었는지 여부입니다.
  • RPM 데이터베이스가 트랜잭션 간에 변경된 경우

yum history 명령을 사용하여 트랜잭션을 취소할 수도 있습니다.

9.1. 트랜잭션 나열

YUM 을 사용하여 다음 작업을 수행할 수 있습니다.

  • 최신 트랜잭션을 나열합니다.
  • 선택한 패키지의 최신 작업을 나열합니다.
  • 특정 트랜잭션의 세부 정보를 표시합니다.

절차

  • 시나리오에 따라 다음 옵션 중 하나를 사용하여 트랜잭션 정보를 표시합니다.

    • 모든 최신 YUM 트랜잭션 목록을 표시하려면 다음을 입력합니다.

      # yum history
      Copy to Clipboard Toggle word wrap

      출력에는 다음 정보가 포함됩니다.

      • Action(s) 열에는 트랜잭션 중에 수행된 작업 유형(예: Install(I), Upgrade(U)), Remove(E) 및 기타 작업이 표시됩니다.
      • 대체 열에 는 트랜잭션 중에 수행된 작업 수가 표시됩니다. 작업 수에도 트랜잭션 결과가 올 수 있습니다.

        Action(s)Altered 열의 값에 대한 자세한 내용은 시스템의 yum(8) 도움말 페이지를 참조하십시오.

    • 선택한 패키지에 대한 모든 최신 작업 목록을 표시하려면 다음을 입력합니다.

      # yum history list <package_name>
      Copy to Clipboard Toggle word wrap
    • 특정 트랜잭션의 세부 정보를 표시하려면 다음을 입력합니다.

      # yum history info <transaction_id>
      Copy to Clipboard Toggle word wrap
참고

글로벌 표현식을 인수로 추가하여 결과를 필터링할 수 있습니다. 자세한 내용은 yum 입력에서 전역 표현식 지정 을 참조하십시오.

9.2. YUM 트랜잭션 되돌리기

YUM 트랜잭션을 되돌리는 것은 트랜잭션 중에 수행된 작업을 실행 취소하려는 경우 유용할 수 있습니다. 예를 들어 yum install 명령을 사용하여 여러 패키지를 설치한 경우 설치 트랜잭션을 되돌리면 이러한 패키지를 한 번에 제거할 수 있습니다.

YUM 트랜잭션을 되돌리는 방법은 다음과 같습니다.

  • yum history undo 명령을 사용하여 단일 YUM 트랜잭션을 되돌립니다.
  • yum history rollback 명령을 사용하여 지정된 트랜잭션과 마지막 트랜잭션 간에 수행된 모든 YUM 트랜잭션을 되돌립니다.
중요

yum history undoyum history rollback 명령을 사용하여 RHEL 시스템 패키지를 이전 버전으로 다운그레이드할 수 없습니다. 이는 특히 selinux , selinux -policy-*, kernel, glibc 패키지 및 gcc 와 같은 glibc 종속 항목과 관련이 있습니다. 따라서 시스템을 마이너 버전(예: RHEL 8.1에서 RHEL 8.0)으로 다운그레이드하는 것은 시스템을 잘못된 상태로 둘 수 있기 때문에 권장되지 않습니다.

9.2.1. 단일 YUM 트랜잭션 되돌리기

yum history undo 명령을 사용하여 단일 트랜잭션 내에서 수행된 단계를 되돌릴 수 있습니다.

  • 트랜잭션이 새 패키지를 설치한 경우 yum history를 실행 취소 하면 패키지를 제거합니다.
  • 트랜잭션이 패키지를 제거하면 yum history 실행 취소가 패키지를 다시 설치합니다.
  • 이전 패키지를 계속 사용할 수 있는 경우 yum history undo 명령은 업데이트된 모든 패키지를 이전 버전으로 다운그레이드하려고 합니다.
참고

이전 패키지 버전을 사용할 수 없는 경우 yum history undo 명령을 사용하여 다운그레이드가 실패합니다.

절차

  1. 되돌리려는 트랜잭션의 ID를 확인합니다.

    # yum history
    ID | Command line     | Date and time     | Action(s)      | Altered
    --------------------------------------------------------------------
    13 | install zip      | 2022-11-03 10:49  | Install        |    1
    12 | install unzip    | 2022-11-03 10:49  | Install        |    1
    Copy to Clipboard Toggle word wrap
  2. 선택 사항: 세부 정보를 표시하여 되돌리려는 트랜잭션인지 확인합니다.

    # yum history info <transaction_id>
    Copy to Clipboard Toggle word wrap
  3. 트랜잭션을 되돌립니다.

    # yum history undo <transaction_id>
    Copy to Clipboard Toggle word wrap

    예를 들어 이전에 설치한 unzip 패키지를 제거하려면 다음을 입력합니다.

    # yum history undo 12
    Copy to Clipboard Toggle word wrap

    마지막 트랜잭션을 되돌리려면 다음을 입력합니다.

    # yum history undo last
    Copy to Clipboard Toggle word wrap

9.2.2. 여러 YUM 트랜잭션 되돌리기

yum history rollback 명령을 사용하여 지정된 트랜잭션과 마지막 트랜잭션 간에 수행된 모든 YUM 트랜잭션을 되돌릴 수 있습니다. 트랜잭션 ID로 지정된 트랜잭션은 변경되지 않은 상태로 유지됩니다.

절차

  1. 되돌리려는 상태의 트랜잭션 ID를 확인합니다.

    # yum history
    ID | Command line     | Date and time     | Action(s)   | Altered
    ------------------------------------------------------------------
    14 | install wget     | 2022-11-03 10:49  | Install     |    1
    13 | install unzip    | 2022-11-03 10:49  | Install     |    1
    12 | install vim-X11  | 2022-11-03 10:20  | Install     |  171 EE
    Copy to Clipboard Toggle word wrap
  2. 지정된 트랜잭션을 되돌리십시오.

    # yum history rollback <transaction_id>
    Copy to Clipboard Toggle word wrap

    예를 들어 wgetunzip 패키지가 설치되기 전에 상태로 되돌리려면 다음을 입력합니다.

    # yum history rollback 12
    Copy to Clipboard Toggle word wrap

    또는 트랜잭션 기록의 모든 트랜잭션을 되돌리려면 트랜잭션 ID 1 을 사용합니다.

    # yum history rollback 1
    Copy to Clipboard Toggle word wrap

10장. 사용자 정의 소프트웨어 리포지토리 관리

/etc/yum.conf 파일 또는 /etc/yum.repos.d/ 디렉터리의 .repo 파일에서 리포지토리를 구성할 수 있습니다.

참고

/etc/yum.repos.d/ 의 새 또는 기존 .repo 파일에 리포지토리를 정의하는 것이 좋습니다. .repo 파일 확장자가 있는 모든 파일을 YUM .repo 에서 읽을 수 있기 때문입니다.

/etc/yum.conf 파일에는 [main] 섹션이 포함되어 있으며 리포지토리별 옵션을 설정하는 데 사용할 수 있는 하나 이상의 리포지토리 섹션([ <repository_ID> ])을 포함할 수 있습니다. /etc/yum.conf 파일의 개별 리포지토리 섹션에 정의된 값은 [main] 섹션에 설정된 값을 재정의합니다.

10.1. YUM 리포지토리 옵션

/etc/yum.conf 구성 파일에는 대괄호에 리포지토리 ID가 있는 리포지토리 섹션이 포함되어 있습니다([ <repository_ID> ]). 이 섹션을 사용하여 개별 YUM 리포지토리를 정의할 수 있습니다.

중요

리포지토리 ID는 고유해야 합니다.

사용 가능한 리포지토리 ID 옵션의 전체 목록은 시스템의 dnf.conf(5) 도움말 페이지의 [ <repository_ID> ] OPTIONS 섹션을 참조하십시오.

10.2. YUM 리포지토리 추가

/etc/yum.repos.d/ 디렉터리의 .repo 파일에 YUM 리포지토리를 정의하여 시스템에 추가할 수 있습니다.

절차

  1. 시스템에 리포지토리를 추가합니다.

    # yum-config-manager --add-repo <repository_URL>
    Copy to Clipboard Toggle word wrap

    이 명령으로 추가된 리포지토리는 기본적으로 활성화되어 있습니다.

  2. 선택적으로 /etc/yum.repos.d/ <repository_URL> .repo 파일에서 이전 명령이 생성한 리포지토리 설정을 검토하고 업데이트합니다.

    # cat /etc/yum.repos.d/<repository_URL>.repo
    Copy to Clipboard Toggle word wrap
주의

Red Hat 인증서 기반CDN( Content Delivery Network ) 이외의 확인되지 않았거나 신뢰할 수 없는 소스에서 소프트웨어 패키지를 확보하고 설치하는 것은 잠재적인 보안 위험이며 보안, 안정성, 호환성 및 유지 관리 문제로 이어질 수 있습니다.

10.3. YUM 리포지토리 활성화

시스템에 YUM 리포지토리를 추가한 후 이를 활성화하여 설치 및 업데이트를 확인합니다.

절차

  • 리포지토리를 활성화합니다.

    # yum-config-manager --enable <repository_id>
    Copy to Clipboard Toggle word wrap

10.4. YUM 리포지토리 비활성화

특정 패키지가 설치 또는 업데이트되지 않도록 하려면 이러한 패키지가 포함된 YUM 리포지토리를 비활성화할 수 있습니다.

절차

  • 리포지토리를 비활성화합니다.

    # yum-config-manager --disable <repository_id>
    Copy to Clipboard Toggle word wrap

11장. 애플리케이션 스트림 콘텐츠 버전 관리

AppStream 리포지토리의 콘텐츠는 모듈 스트림에 해당하는 여러 버전에서 사용할 수 있습니다. 예를 들어 시스템에 이미 설치되어 있는 다른 버전의 모듈을 설치할 수 있습니다.

11.1. 모듈식 종속성 및 스트림 변경 사항

일반적으로 콘텐츠를 제공하는 패키지는 추가 패키지에 따라 다르며 일반적으로 원하는 종속성 버전을 지정합니다. 모듈에 포함된 패키지의 경우 이 메커니즘도 적용되지만 패키지 및 특정 버전을 모듈로 그룹화하고 스트림으로 더 많은 제약 조건을 제공합니다. 또한 모듈 스트림은 포함된 패키지에 관계없이 다른 모듈 스트림에 대한 종속성을 선언할 수 있습니다.

패키지 또는 모듈이 있는 모든 작업에서 설치된 모든 기본 패키지의 전체 종속성 트리는 패키지가 선언하는 모든 조건을 충족해야 합니다. 또한 모든 모듈 스트림 종속성을 충족해야 합니다. 예를 들어 모듈 스트림을 비활성화하려면 다른 모듈 스트림을 비활성화해야 할 수 있습니다. 패키지가 자동으로 제거되지 않습니다.

다음 작업으로 인해 후속 자동 작업이 발생할 수 있습니다.

  • 모듈 스트림을 활성화하면 추가 모듈 스트림을 활성화할 수 있습니다.
  • 모듈 스트림 프로필을 설치하거나 스트림에서 패키지를 설치하면 추가 모듈 스트림을 활성화하고 추가 패키지를 설치할 수 있습니다.
  • 패키지를 제거하면 추가 패키지가 제거될 수 있습니다. 모듈에서 이러한 패키지를 제공하면 이러한 스트림의 패키지가 더 이상 설치되지 않은 경우에도 추가 설치를 준비하기 위해 모듈 스트림을 사용할 수 있습니다. 이렇게 하면 사용되지 않는 YUM 저장소의 동작이 미러링됩니다.
중요

동일한 모듈의 다른 스트림이 이미 활성화된 경우 모듈 스트림을 활성화할 수 없습니다. 스트림을 전환하려면 이후 스트림으로 전환하는 단계를 완료합니다. 또는 모듈을 재설정 한 다음 새 스트림을 활성화합니다.

중요

다른 스트림으로 전환하기 전에 스트림에서 설치된 모든 패키지를 제거하면 시스템이 해당 패키지를 제공하지 않고 패키지를 설치할 수 있는 상태에 도달할 수 없습니다.

11.2. 모듈식 및 비모형 종속성의 상호 작용

모듈식 종속성 은 일반 RPM 종속 항목 위에 있는 추가 계층입니다. 모듈식 종속성은 리포지토리 간 가상 종속성과 유사하게 작동합니다. 즉, 다른 패키지를 설치하려면 RPM 종속 항목과 모듈식 종속성을 모두 확인해야 합니다.

변경하도록 명시적으로 지시하지 않는 한 시스템은 항상 모듈 및 스트림 선택을 유지합니다. 모듈식 패키지는 이 패키지를 제공하는 현재 활성화된 모듈 스트림에 포함된 업데이트를 수신하지만 다른 스트림에 포함된 버전으로 업그레이드하지는 않습니다.

11.3. 모듈 스트림 재설정

모듈을 재설정하는 것은 이 모듈을 초기 상태로 반환하는 작업입니다(활성화되거나 비활성화되지 않음). 모듈에 기본 스트림이 구성된 경우 모듈을 재설정하여 이 스트림이 활성화됩니다.

모듈을 재설정하는 것은 예를 들어 모듈을 활성화하지 않고 모듈에서 RPM 콘텐츠만 추출하려는 경우 유용합니다. 모듈을 활성화하고 해당 콘텐츠를 추출하여 이 모듈을 초기 상태로 재설정한 후 yum module reset 명령을 사용할 수 있습니다.

절차

  • 모듈 상태를 재설정합니다.

    # yum module reset <module_name>
    Copy to Clipboard Toggle word wrap

    이 모듈은 초기 상태로 반환됩니다. 활성화된 스트림 및 설치된 프로필에 대한 정보는 삭제되지만 설치되지 않은 콘텐츠는 삭제되지 않습니다.

11.4. 모듈의 모든 스트림 비활성화

기본 스트림이 있는 모듈에는 항상 하나의 스트림이 활성화됩니다. 모듈의 모든 모듈 스트림에서 액세스할 수 없도록 하려면 전체 모듈을 비활성화할 수 있습니다.

사전 요구 사항

절차

  • 모듈을 비활성화합니다.

    # yum module disable <module_name>
    Copy to Clipboard Toggle word wrap

    module-name 을 비활성화하려는 모듈의 이름으로 바꿉니다.

    yum 명령은 확인을 요청한 다음 모든 스트림으로 모듈을 비활성화합니다. 모든 모듈 스트림이 비활성화됩니다. 설치된 콘텐츠가 제거되지 않습니다.

11.5. 이후 스트림으로 전환

이후 모듈 스트림으로 전환하면 해당 패키지가 모두 이후 버전으로 교체됩니다.

중요

데이터를 백업하고 구성 요소와 관련된 마이그레이션 지침을 따릅니다.

또는 현재 스트림에서 설치된 모듈의 모든 콘텐츠를 제거하고 모듈을 재설정한 후 새 스트림을 설치할 수 있습니다.

사전 요구 사항

  • 시스템이 완전히 업데이트됩니다.
  • 시스템에 설치된 패키지가 리포지토리에서 사용할 수 있는 패키지보다 최신 상태가 아닙니다.

절차

  1. 시스템에서 이후 스트림으로 전환할 준비가 되었는지 확인합니다.

    # yum distro-sync
    Copy to Clipboard Toggle word wrap
    중요

    이 명령은 Nothing to do를 사용하여 완료해야 합니다. 완료!. 이 대신 변경 사항을 제안하고 확인을 요청하면 이러한 변경 사항을 신중하게 검토하고 진행할지 여부를 고려하십시오. 필요한 경우 YUM distro-sync 명령을 반복적으로 실행합니다. 또는 제안된 변경 사항을 거부하고 명령이 Nothing to do를 반환하는 상태로 시스템을 수동으로 수정할 수 있습니다. 완료!.

    스트림을 전환하기 전에 yum distro-sync 결과를 확인하면 이 절차의 마지막 단계와 동일한 명령이 필요하므로 스트림 전환과 관련이 없는 시스템을 변경할 수 없습니다.

  2. 활성 스트림을 다음 스트림으로 변경합니다.

    # yum module reset <module-name>
    # yum module enable <module-name>:<new-stream>
    Copy to Clipboard Toggle word wrap
  3. 설치된 패키지를 동기화하여 스트림 간 변경을 수행합니다.

    # yum distro-sync
    Copy to Clipboard Toggle word wrap

    이 조치에서 스트림 외부의 콘텐츠에 대한 변경을 제안하는 경우 신중하게 검토하십시오.

    참고
    • 설치된 특정 패키지가 이전 스트림에 종속되고 이후 스트림에 호환되는 버전이 없는 경우 YUM 에서 종속성 충돌을 보고합니다. 이 경우 --allowerasing 옵션을 사용하여 누락된 종속성으로 인해 이후 스트림과 함께 설치할 수 없기 때문에 이러한 패키지를 제거합니다.
    • Perl 모듈을 전환할 때는 기본 RHEL 8 설치의 특정 패키지가 Perl 5.26 에 따라 다르기 때문에 항상 --allowerasing 옵션을 사용해야 합니다.
    • 새로운 스트림이 활성화된 후 일반적으로 C 또는 C++로 작성된 해석된 언어의 바이너리 확장을 다시 설치해야 합니다. 예를 들어 다음 명령을 사용하여 설치한 패키지와 관련이 있습니다.

11.6. 사용자 정의 기본 모듈 스트림 및 프로필 정의

기본적으로 YUM 유틸리티는 모듈이 포함된 리포지토리에 정의된 기본 모듈 스트림을 사용합니다. /etc/dnf/modules.defaults.d/ 디렉터리에서 기본 스트림 및 기본 모듈 프로필을 구성할 수 있습니다.

중요

모듈 스트림의 라이프 사이클을 항상 고려하십시오.

사전 요구 사항

절차

  1. 사용 가능한 스트림 및 해당 프로필을 표시합니다.

    # yum module list <module_name>
    Copy to Clipboard Toggle word wrap

    예를 들어, 사용 가능한 스트림 및 postgresql 모듈의 프로필을 나열하려면 다음을 입력합니다.

    # yum module list postgresql
    (…​)
    Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
    Name             Stream       Profiles                Summary
    postgresql       9.6          client, server [d]      PostgreSQL server and client module
    postgresql       10 [d]       client, server [d]      PostgreSQL server and client module
    postgresql       12           client, server [d]      PostgreSQL server and client module
    postgresql       13           client, server [d]      PostgreSQL server and client module
    postgresql       15           client, server [d]      PostgreSQL server and client module
    …​
    Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
    Copy to Clipboard Toggle word wrap
  2. /etc/dnf/modules.defaults.d/ 드롭인 디렉터리에 YAML 구성 파일을 생성합니다.

    예를 들어 다음 콘텐츠를 사용하여 /etc/dnf/modules.defaults.d/postgresql.yaml 파일을 생성하여 13postgresql 모듈의 기본 프로필로 정의하고 server 를 다음과 같이 정의합니다.

    ---
    document: modulemd-defaults
    version: 1
    data:
      module: postgresql
      stream: "13"
      profiles:
        13: [server]
    Copy to Clipboard Toggle word wrap

검증

  • 기본 스트림 및 프로필 설정을 확인합니다.

    # yum module list postgresql
    (…​)
    Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
    Name             Stream       Profiles                Summary
    postgresql       9.6          client, server          PostgreSQL server and client module
    postgresql       10           client, server          PostgreSQL server and client module
    postgresql       12           client, server          PostgreSQL server and client module
    postgresql       13 [d]       client, server [d]      PostgreSQL server and client module
    postgresql       15           client, server          PostgreSQL server and client module
    …​
    Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
    Copy to Clipboard Toggle word wrap

12장. YUM 명령 목록

다음 섹션에서는 Red Hat Enterprise Linux 8의 콘텐츠를 나열, 설치 및 제거하는 YUM 명령을 검사합니다.

12.1. RHEL 8의 콘텐츠를 나열하는 명령

다음은 Red Hat Enterprise Linux 8에서 콘텐츠 및 세부 정보를 찾는 데 일반적으로 사용되는 YUM 명령입니다.

Expand
명령설명

yum 검색 용어

패키지와 관련된 용어를 사용하여 패키지를 검색합니다.

yum repoquery 패키지

활성화된 YUM 리포지토리에 선택한 패키지 및 해당 버전을 검색합니다.

yum list

설치되어 사용 가능한 모든 패키지에 대한 정보를 나열합니다.

yum list -- installed

yum repoquery -- installed

시스템에 설치된 모든 패키지를 나열합니다.

yum list --available

yum repoquery

설치에 사용할 수 있는 모든 활성화된 리포지토리의 모든 패키지를 나열합니다.

yum repolist

시스템에서 활성화된 모든 리포지토리를 나열합니다.

yum repolist --disabled

시스템의 비활성화된 리포지토리를 모두 나열합니다.

yum repolist --all

enabled 및 disabled 리포지토리를 모두 나열합니다.

yum repoinfo

리포지토리에 대한 추가 정보를 나열합니다.

yum info package_name

yum repoquery --info package_name

사용 가능한 패키지의 세부 정보를 표시합니다.

yum repoquery --info --installed package_name

시스템에 설치된 패키지의 세부 정보를 표시합니다.

yum module list

모듈과 현재 상태를 나열합니다.

yum module info module_name

모듈의 세부 정보를 표시합니다.

yum module list module_name

모듈의 현재 상태를 표시합니다.

yum module info --profile module_name

선택한 모듈의 사용 가능한 프로필과 관련된 패키지를 표시합니다.

yum module info --profile module_name:stream

지정된 스트림을 사용하여 모듈의 사용 가능한 프로필과 관련된 패키지를 표시합니다.

yum module에서 패키지제공

패키지를 제공하는 모듈, 스트림 및 프로필을 결정합니다.

모듈 외부에서 패키지를 사용할 수 있는 경우 이 명령의 출력이 비어 있습니다.

yum group summary

설치되어 사용 가능한 그룹 수를 확인합니다.

yum group list

설치된 모든 사용 가능한 그룹을 나열합니다.

yum group info group_name

특정 그룹에 포함된 필수 및 선택적 패키지를 나열합니다.

12.2. RHEL 8에 콘텐츠를 설치하는 명령

다음은 Red Hat Enterprise Linux 8에 콘텐츠를 설치하는 데 일반적으로 사용되는 YUM 명령입니다.

Expand
명령설명

yum install package_name

패키지를 설치합니다.

모듈 스트림에서 패키지를 제공하는 경우 yum 은 필요한 모듈 스트림을 확인하고 이 패키지를 설치하는 동안 자동으로 활성화합니다. 이는 모든 패키지 종속 항목에 대해 반복적으로 수행됩니다. 더 많은 모듈 스트림이 요구 사항을 충족하는 경우 기본 모듈이 사용됩니다.

yum install package_name_1 package_name_2

여러 패키지 및 해당 종속 항목을 동시에 설치합니다.

yum install package_name.arch

multilib 시스템(AMD64, Intel 64 시스템)에 패키지를 설치할 때 패키지 이름에 패키지를 추가하여 패키지 아키텍처를 지정합니다.

yum install /usr/sbin/binary_file

바이너리 경로를 인수로 사용하여 바이너리를 설치합니다.

yum install /path/

로컬 디렉터리에서 이전에 다운로드한 패키지를 설치합니다.

yum install package_url

패키지 URL을 사용하여 원격 패키지를 설치합니다.

yum 모듈 enable module_name:stream

특정 스트림을 사용하여 모듈을 활성화합니다.

이 명령을 실행하면 RPM 패키지가 설치되지 않습니다.

yum module install module_name:stream

yum install @module_name:stream

특정 모듈 스트림에서 기본 프로필을 설치합니다.

이 명령을 실행하면 지정된 스트림도 활성화됩니다.

yum module install module_name:stream/profile

yum install @module_name:stream/profile

특정 스트림을 사용하여 선택한 프로필을 설치합니다.

yum group install group_name

그룹 이름으로 패키지 그룹을 설치합니다.

yum group install group_ID

groupID별로 패키지 그룹을 설치합니다.

yum install-n <package_name>

정확한 이름을 사용하여 패키지를 설치합니다.

yum install-na <package_name>.<architecture>

정확한 이름과 아키텍처를 사용하여 패키지를 설치합니다.

yum install-nevra <package_name>-<epoch>:<version>-<release>.<architecture>

정확한 이름, epoch, 버전, 릴리스 및 아키텍처를 사용하여 패키지를 설치합니다.

12.3. RHEL 8에서 콘텐츠를 제거하는 명령

다음은 Red Hat Enterprise Linux 8의 콘텐츠를 제거하는 데 일반적으로 사용되는 YUM 명령입니다.

Expand
명령설명

yum remove package_name

특정 패키지 및 모든 종속 패키지를 제거합니다.

yum remove package_name_1 package_name_2

여러 패키지와 사용되지 않는 종속 항목을 동시에 제거합니다.

yum group remove group_name

그룹 이름으로 패키지 그룹을 제거합니다.

yum group remove group_ID

groupID에 의해 패키지 그룹을 제거합니다.

yum module remove --all module_name:stream

지정된 스트림에서 모든 패키지를 제거합니다.

이 명령을 실행하면 시스템에서 중요한 패키지를 제거할 수 있습니다.

yum module remove module_name:stream/profile

설치된 프로필에서 패키지를 제거합니다.

yum module remove module_name:stream

지정된 스트림 내에 설치된 모든 프로필에서 패키지를 제거합니다.

yum module reset module_name

모듈을 초기 상태로 재설정합니다.

이 명령을 실행해도 지정된 모듈에서 패키지는 제거되지 않습니다.

yum module disable module_name

모듈 및 모든 스트림을 비활성화합니다.

이 명령을 실행해도 지정된 모듈에서 패키지는 제거되지 않습니다.

yum remove-n <package_name>

정확한 이름을 사용하여 패키지를 제거합니다.

yum remove-na <package_name>.<architecture>

정확한 이름과 아키텍처를 사용하여 패키지를 제거합니다.

yum remove-nevra <package_name>-<epoch>:<version>-<release>.<architecture>

정확한 이름, epoch, 버전, 릴리스 및 아키텍처를 사용하여 패키지를 제거합니다.

법적 공지

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat