RHEL9
에서는 BaseOS
채널과 AppStream
채널 두가지 기본 OS채널로 구분되어있다.
OS ISO Image
내에서도 확인해보면 아래와 같이 두개의 디렉토리로 분리되어있는것을 확인할 수 있다.
BaseOS 채널
: 모든 RHEL 9 설치의 기반이 되는 핵심 운영 체제 기능을 제공합니다. 커널, 시스템 라이브러리, 기본 유틸리티 등 필수적인 구성 요소들이 포함됩니다. 이 채널의 패키지들은 이전 RHEL 버전과 유사한 지원 조건을 따릅니다.AppStream 채널
: 사용자 공간 애플리케이션, 런타임 언어, 데이터베이스 등 다양한 워크로드 및 사용 사례를 지원하는 추가적인 패키지를 제공합니다. 개발 도구, 웹 서버, 데이터베이스 관리 시스템, 프로그래밍 언어 런타임 등이 포함될 수 있습니다.
기본적으로 BaseOS
채널의 패키지는 rpm
형태로 제공되며 기존의 전통적인 rpm
설치 방식을 따릅니다.
AppStream
채널의 패키지도 동일하지만 RHEL 9.1
버전 이후부터 module
방식의 설치를 지원합니다.
dnf module list
명령어를 사용하면 설치 가능한 모듈 목록이 조회됩니다.
[root@test-rhel94 ~]# sudo dnf module list 서브스크립션 관리 저장소를 최신화하기. 마지막 메타자료 만료확인(0:10:20 이전): 2024년 09월 04일 (수) 오후 03시 42분 31초. Red Hat Enterprise Linux 9 for x86_64 - AppStream (RPMs) Name Stream Profiles Summary mariadb 10.11 client, galera, server [d] MariaDB Module maven 3.8 common [d] Java project management and project comprehension tool nginx 1.22 common [d] nginx webserver nginx 1.24 common [d] nginx webserver nodejs 18 common [d], development, minimal, s2i Javascript runtime nodejs 20 common [d], development, minimal, s2i Javascript runtime php 8.1 common [d], devel, minimal PHP scripting language php 8.2 common [d], devel, minimal PHP scripting language postgresql 15 client, server [d] PostgreSQL server and client module postgresql 16 client, server [d] PostgreSQL server and client module redis 7 common [d] Redis persistent key-value database ruby 3.1 common [d] An interpreter of object-oriented scripting language ruby 3.3 common [d] An interpreter of object-oriented scripting language 힌트 : [d] efault, [e] nabled, [x] disabled, [i] stalled [root@test-rhel94 ~]#
위와 같이 모듈로 설치할수 있는 목록이 나옵니다.
dnf module info <모듈명>
명령어를 사용하면 해당 모듈에 대한 정보를 확인할 수 있습니다.
해당 모듈설치시 같이 설치되는 모든 패키지 목록을 확인 할 수 있습니다.
여러 스트림/버전이 있는경우 각 버전별로 정보가 나타납니다.
[root@test-rhel94 ~]# sudo dnf module info redis 서브스크립션 관리 저장소를 최신화하기. 마지막 메타자료 만료확인(0:13:31 이전): 2024년 09월 04일 (수) 오후 03시 42분 31초. Name : redis Stream : 7 Version : 9030020230711084106 Context : 9 Architecture : x86_64 Profiles : common [d] Default profiles : common Repo : rhel-9-for-x86_64-appstream-rpms Summary : Redis persistent key-value database Description : redis 7 module Requires : platform:[el9] Artifacts : redis-0:7.0.12-1.module+el9.3.0+19307+b7a69809.src : redis-0:7.0.12-1.module+el9.3.0+19307+b7a69809.x86_64 : redis-debuginfo-0:7.0.12-1.module+el9.3.0+19307+b7a69809.x86_64 : redis-debugsource-0:7.0.12-1.module+el9.3.0+19307+b7a69809.x86_64 : redis-devel-0:7.0.12-1.module+el9.3.0+19307+b7a69809.x86_64 : redis-doc-0:7.0.12-1.module+el9.3.0+19307+b7a69809.noarch Name : redis Stream : 7 Version : 9030020240206103833 Context : 9 Architecture : x86_64 Profiles : common [d] Default profiles : common Repo : rhel-9-for-x86_64-appstream-rpms Summary : Redis persistent key-value database Description : redis 7 module Requires : platform:[el9] Artifacts : redis-0:7.0.12-2.module+el9.3.0+21263+4e58afe8.src : redis-0:7.0.12-2.module+el9.3.0+21263+4e58afe8.x86_64 : redis-debuginfo-0:7.0.12-2.module+el9.3.0+21263+4e58afe8.x86_64 : redis-debugsource-0:7.0.12-2.module+el9.3.0+21263+4e58afe8.x86_64 : redis-devel-0:7.0.12-2.module+el9.3.0+21263+4e58afe8.x86_64 : redis-doc-0:7.0.12-2.module+el9.3.0+21263+4e58afe8.noarch 힌트 : [d] efault, [e] nabled, [x] disabled, [i] stalled, [a] ctive [root@test-rhel94 ~]#
dnf module install <모듈명>:<스트림>[/<프로파일>]
명령어를 사용하면 해당 모듈을 설치할 수 있습니다.
만약 동일한 스트림이 버전별로 여러개 존재한다면 아래와 같이 특정 버전을 설치 할 수 있습니다.
# dnf module install nodejs:18:9010020221009220316
또는
# dnf module install nodejs:18:9010020221009220316:rhel9:x86_64
[root@test-rhel94 ~]# dnf module install nodejs:20 서브스크립션 관리 저장소를 최신화하기. 마지막 메타자료 만료확인(0:07:59 이전): 2024년 09월 04일 (수) 오후 04시 07분 34초. 종속성이 해결되었습니다. ======================================================================================================================================================================================================================================================= 꾸러미 구조 버전 저장소 크기 ======================================================================================================================================================================================================================================================= 그룹/모듈 꾸러미 설치: nodejs x86_64 1:20.16.0-1.module+el9.4.0+22197+9e60f127 rhel-9-for-x86_64-appstream-rpms 14 M npm x86_64 1:10.8.1-1.20.16.0.1.module+el9.4.0+22197+9e60f127 rhel-9-for-x86_64-appstream-rpms 2.3 M 취약한 종속 꾸러미 설치 중: nodejs-docs noarch 1:20.16.0-1.module+el9.4.0+22197+9e60f127 rhel-9-for-x86_64-appstream-rpms 8.4 M nodejs-full-i18n x86_64 1:20.16.0-1.module+el9.4.0+22197+9e60f127 rhel-9-for-x86_64-appstream-rpms 8.4 M 모듈 프로파일 설치: nodejs/common 모듈 스트림 활성화: nodejs 20 연결 요약 ======================================================================================================================================================================================================================================================= 설치 4 꾸러미 전체 내려받기 크기: 33 M 설치된 크기 : 176 M 진행할까요? [y/N]: