[관련 게시물]
2020/01/13 - [리눅스/CentOS] - DNF 명령 - DNF 명령 연재 목록
2020/01/27 - [리눅스/CentOS] - DNF 명령 관리 - 명령 별명(Alias), 대화식 쉘(Shell), 도움말(Help)
2020/01/30 - [리눅스/CentOS] - DNF 트랜잭션 관리 - 트랜잭션 이력(History)
2020/02/03 - [리눅스/CentOS] - DNF 배포판 동기화 - 배포판 동기화(Distro-Sync)
2020/02/05 - [리눅스/CentOS] - DNF 모듈 관리 - 모듈 관리(Module)
안내
앞으로 상당 기간에 걸쳐 RPM 기반 리눅스 배포판을 위한 패키지 관리도구 DNF에 대해 연재하게 되었습니다.
이 연재는 레드햇 계열 리눅스를 처음 접하는 분들을 위해 초심자가 꼭 알야야 하거나 또는 알면 유용한 것들을 선별하여 내용을 작성하였습니다.
잘못된 정보가 있다면 댓글로 제보해주시면 감사하겠습니다.
연재 항목은 다음과 같습니다.
2020/01/13 - [리눅스/CentOS] - DNF 명령 - DNF 명령 연재 목록
2020/01/27 - [리눅스/CentOS] - DNF 명령 관리 - 명령 별명(Alias), 대화식 쉘(Shell), 도움말(Help)
2020/01/30 - [리눅스/CentOS] - DNF 트랜잭션 관리 - 트랜잭션 이력(History)
2020/02/03 - [리눅스/CentOS] - DNF 배포판 동기화 - 배포판 동기화(Distro-Sync)
2020/02/05 - [리눅스/CentOS] - DNF 모듈 관리 - 모듈 관리(Module)
2020/02/09 - [리눅스/CentOS] - DNF 명령줄 옵션 연재 목록
2020/02/11 - [리눅스/CentOS] - DNF 명령줄 분류별 옵션 - [01] 패키지 관리
2020/02/13 - [리눅스/CentOS] - DNF 분류별 명령줄 옵션 - [02] 환경 설정
2020/02/15 - [리눅스/CentOS] - DNF 분류별 명령줄 옵션 - [03] 부가 기능
2020/02/17 - [리눅스/CentOS] - DNF 분류별 명령줄 옵션 - [04] 정보 확인
2020/02/20 - [리눅스/CentOS] - DNF 환경 설정[구성] 파일(dnf.conf) [main] 섹션 옵션
2020/02/22 - [리눅스/CentOS] - DNF 저장소 옵션(Repo Options)과 저장소 변수(Repo Variables)
dnf 명령 목록
Alias
Auto Remove
Check
Check-Update
Clean
Deplist
Distro-Sync
Distribution-Syncronization
Downgrade
Erase
Group
Groups
Help
History
Info
Install
List
Localinstall
Makecache
Mark
Module
Provides
Reinstall
Remove
Repoinfo
Repolist
Repoquery
Repo-Pkgs
Repository-Packages
Search
Shell
Swap
Update
Updateinfo
Update-Minimal
Upgrade-Minimal
Update-To
Upgrade-To
DNF 모듈 관리
[DNF 모듈 관리]
모듈 관리 : Module
Module
안내
모듈 관리 연재는 MariaDB를 예시로 설명하도록 하겠습니다.
그러나 아래의 방법은 AppStream 저장소에 올라온 MariaDB를 설치한 것입니다.
실제로 MariaDB를 구축할 때는 MariaDB 공식 배포처를 이용하시기를 권장합니다.
MariaDB Foundation Repository
참고로 MariaDB 재단의 공식 배포처 저장소 내 패키지명은 AppStream 저장소의 그것과 다릅니다. AppStream 저장소의 MariaDB 패키지명은 mariadb로 시작하나, 공식 배포처 저장소의 패키지명은 MariaDB로 시작합니다. 리눅스는 여타의 유닉스 계열 OS와 마찬가지로 대소문자를 구별하므로 주의하시기 바랍니다.
sudo dnf module install <module-spec>...
패키지를 포함하여 모듈 프로파일을 설치합니다. 프로파일이 제공되지 않은 경우 모든 기본 프로파일이 설치됩니다. 그에 따라 모듈 스트림이 활성화됩니다.
[study@localhost ~]$ sudo dnf module install mariadb [sudo] study의 암호: CentOS-8 - AppStream 1.7 kB/s | 4.3 kB 00:02 CentOS-8 - Base 927 B/s | 3.8 kB 00:04 CentOS-8 - Extras 631 B/s | 1.5 kB 00:02 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ Installing group/module packages: mariadb-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 16 M 종속성 설치: mariadb x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 6.1 M mariadb-common x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 62 k mariadb-connector-c x86_64 3.0.7-1.el8 AppStream 148 k mariadb-connector-c-config noarch 3.0.7-1.el8 AppStream 13 k mariadb-errmsg x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 232 k perl-DBD-MySQL x86_64 4.046-3.module_el8.1.0+203+e45423dc AppStream 156 k perl-DBI x86_64 1.641-3.module_el8.1.0+199+8f0a6bbd AppStream 740 k 약한 의존성 설치하기: mariadb-backup x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 6.0 M mariadb-gssapi-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 49 k mariadb-server-utils x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 1.6 M Installing module profiles: mariadb/server Enabling module streams: mariadb 10.3 perl-DBD-MySQL 4.046 perl-DBI 1.641 거래 요약 ================================================================================ 설치 11 꾸러미 총 다운로드 크기 : 31 M 설치 크기 : 172 M 이게 괜찮습니까 [y / N] :
모듈을 설치하는 또다른 방법입니다.
sudo dnf install @모듈명/그룹명
[study@localhost ~]$ sudo dnf install @mariadb 마지막 메타 데이터 만료 확인 : 21:11:50 전에 2020년 02월 10일 (월) 오후 01시 50분 07초. 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ Installing group/module packages: mariadb-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 16 M 종속성 설치: mariadb x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 6.1 M mariadb-common x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 62 k mariadb-connector-c x86_64 3.0.7-1.el8 AppStream 148 k mariadb-connector-c-config noarch 3.0.7-1.el8 AppStream 13 k mariadb-errmsg x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 232 k perl-DBD-MySQL x86_64 4.046-3.module_el8.1.0+203+e45423dc AppStream 156 k perl-DBI x86_64 1.641-3.module_el8.1.0+199+8f0a6bbd AppStream 740 k 약한 의존성 설치하기: mariadb-backup x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 6.0 M mariadb-gssapi-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 49 k mariadb-server-utils x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 1.6 M Installing module profiles: mariadb/server 거래 요약 ================================================================================ 설치 11 꾸러미 총 다운로드 크기 : 31 M 설치 크기 : 172 M 이게 괜찮습니까 [y / N] :
위의 모듈 설치 방법은 명령만 다를 뿐 수행 과정은 동일합니다. 그러나 패키지 설치 방식으로도 예시로 든 MariaDB를 설치할 수 있습니다.
먼저 MariaDB의 관련 패키지들을 확인해 봅시다.
[study@localhost ~]$ dnf list mariadb* 사용 가능한 패키지 mariadb.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-backup.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-common.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-connector-c.i686 3.0.7-1.el8 AppStream mariadb-connector-c.x86_64 3.0.7-1.el8 AppStream mariadb-connector-c-config.noarch 3.0.7-1.el8 AppStream mariadb-connector-c-devel.i686 3.0.7-1.el8 AppStream mariadb-connector-c-devel.x86_64 3.0.7-1.el8 AppStream mariadb-connector-odbc.x86_64 3.0.7-1.el8 AppStream mariadb-devel.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-embedded.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-embedded-devel.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-errmsg.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-gssapi-server.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-java-client.noarch 2.2.5-2.el8 AppStream mariadb-oqgraph-engine.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-server.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-server-galera.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-server-utils.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream mariadb-test.x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream [study@localhost ~]$
[study@localhost ~]$ sudo dnf install mariadb-server [sudo] study의 암호: 마지막 메타 데이터 만료 확인 : 0:09:47 전에 2020년 02월 11일 (화) 오전 11시 43분 53초. 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ Installing: mariadb-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 16 M 종속성 설치: mariadb x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 6.1 M mariadb-common x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 62 k mariadb-connector-c x86_64 3.0.7-1.el8 AppStream 148 k mariadb-connector-c-config noarch 3.0.7-1.el8 AppStream 13 k mariadb-errmsg x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 232 k perl-DBD-MySQL x86_64 4.046-3.module_el8.1.0+203+e45423dc AppStream 156 k perl-DBI x86_64 1.641-3.module_el8.1.0+199+8f0a6bbd AppStream 740 k 약한 의존성 설치하기: mariadb-backup x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 6.0 M mariadb-gssapi-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 49 k mariadb-server-utils x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 1.6 M Enabling module streams: mariadb 10.3 perl-DBD-MySQL 4.046 perl-DBI 1.641 거래 요약 ================================================================================ 설치 11 꾸러미 총 다운로드 크기 : 31 M 설치 크기 : 172 M 이게 괜찮습니까 [y / N] : y 패키지 다운로드중: (1/11): mariadb-common-10.3.17-1.module_el8.1.0 34 kB/s | 62 kB 00:01 (2/11): mariadb-connector-c-3.0.7-1.el8.x86_64. 39 kB/s | 148 kB 00:03 (3/11): mariadb-connector-c-config-3.0.7-1.el8. 36 kB/s | 13 kB 00:00 (4/11): mariadb-errmsg-10.3.17-1.module_el8.1.0 38 kB/s | 232 kB 00:06 (5/11): mariadb-gssapi-server-10.3.17-1.module_ 44 kB/s | 49 kB 00:01 (6/11): mariadb-backup-10.3.17-1.module_el8.1.0 42 kB/s | 6.0 MB 02:27 (7/11): mariadb-10.3.17-1.module_el8.1.0+257+48 42 kB/s | 6.1 MB 02:28 (8/11): perl-DBD-MySQL-4.046-3.module_el8.1.0+2 50 kB/s | 156 kB 00:03 (9/11): perl-DBI-1.641-3.module_el8.1.0+199+8f0 41 kB/s | 740 kB 00:17 (10/11): mariadb-server-utils-10.3.17-1.module_ 49 kB/s | 1.6 MB 00:34 (11/11): mariadb-server-10.3.17-1.module_el8.1. 68 kB/s | 16 MB 04:00 -------------------------------------------------------------------------------- 합계 124 kB/s | 31 MB 04:15 트랜잭션 점검 실행 중 트랜잭션 검사가 성공했습니다. 트랜잭션 테스트 실행 중 트랜잭션 테스트가 완료되었습니다. 거래 실행 중 스크립틀릿 실행: mariadb-connector-c-3.0.7-1.el8.x86_64 1/1 준비 중입니다 : 1/1 Installing : mariadb-connector-c-config-3.0.7-1.el8.noarch 1/11 Installing : mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736e 2/11 Installing : mariadb-connector-c-3.0.7-1.el8.x86_64 3/11 Installing : perl-DBI-1.641-3.module_el8.1.0+199+8f0a6bbd.x86_64 4/11 Installing : perl-DBD-MySQL-4.046-3.module_el8.1.0+203+e45423dc.x 5/11 Installing : mariadb-errmsg-3:10.3.17-1.module_el8.1.0+257+48736e 6/11 Installing : mariadb-backup-3:10.3.17-1.module_el8.1.0+257+48736e 7/11 Installing : mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257 8/11 Installing : mariadb-server-utils-3:10.3.17-1.module_el8.1.0+257+ 9/11 스크립틀릿 실행: mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 10/11 Installing : mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 10/11 스크립틀릿 실행: mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 10/11 Installing : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_ 11/11 스크립틀릿 실행: mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_ 11/11 확인 중 : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_ 1/11 확인 중 : mariadb-backup-3:10.3.17-1.module_el8.1.0+257+48736e 2/11 확인 중 : mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736e 3/11 확인 중 : mariadb-connector-c-3.0.7-1.el8.x86_64 4/11 확인 중 : mariadb-connector-c-config-3.0.7-1.el8.noarch 5/11 확인 중 : mariadb-errmsg-3:10.3.17-1.module_el8.1.0+257+48736e 6/11 확인 중 : mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257 7/11 확인 중 : mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 8/11 확인 중 : mariadb-server-utils-3:10.3.17-1.module_el8.1.0+257+ 9/11 확인 중 : perl-DBD-MySQL-4.046-3.module_el8.1.0+203+e45423dc.x 10/11 확인 중 : perl-DBI-1.641-3.module_el8.1.0+199+8f0a6bbd.x86_64 11/11 설치됨: mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-backup-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-server-utils-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-connector-c-3.0.7-1.el8.x86_64 mariadb-connector-c-config-3.0.7-1.el8.noarch mariadb-errmsg-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 perl-DBD-MySQL-4.046-3.module_el8.1.0+203+e45423dc.x86_64 perl-DBI-1.641-3.module_el8.1.0+199+8f0a6bbd.x86_64 완료되었습니다! [study@localhost ~]$
여기서 중요한 것은 패키지를 mariadb가 아닌 mariadb-server를 선택해야 한다는 점입니다.
[study@localhost ~]$ sudo dnf install mariadb 마지막 메타 데이터 만료 확인 : 21:13:21 전에 2020년 02월 10일 (월) 오후 01시 50분 07초. 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ Installing: mariadb x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 6.1 M 종속성 설치: mariadb-common x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 AppStream 62 k mariadb-connector-c x86_64 3.0.7-1.el8 AppStream 148 k mariadb-connector-c-config noarch 3.0.7-1.el8 AppStream 13 k 거래 요약 ================================================================================ 설치 4 꾸러미 총 다운로드 크기 : 6.3 M 설치 크기 : 40 M 이게 괜찮습니까 [y / N] : y 패키지 다운로드중: (1/4): mariadb-common-10.3.17-1.module_el8.1.0+ 57 kB/s | 62 kB 00:01 (2/4): mariadb-connector-c-config-3.0.7-1.el8.n 427 kB/s | 13 kB 00:00 (3/4): mariadb-connector-c-3.0.7-1.el8.x86_64.r 130 kB/s | 148 kB 00:01 (4/4): mariadb-10.3.17-1.module_el8.1.0+257+487 1.5 MB/s | 6.1 MB 00:04 -------------------------------------------------------------------------------- 합계 1.1 MB/s | 6.3 MB 00:05 트랜잭션 점검 실행 중 트랜잭션 검사가 성공했습니다. 트랜잭션 테스트 실행 중 트랜잭션 테스트가 완료되었습니다. 거래 실행 중 스크립틀릿 실행: mariadb-connector-c-3.0.7-1.el8.x86_64 1/1 준비 중입니다 : 1/1 Installing : mariadb-connector-c-config-3.0.7-1.el8.noarch 1/4 Installing : mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736ea6 2/4 Installing : mariadb-connector-c-3.0.7-1.el8.x86_64 3/4 Installing : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 4/4 스크립틀릿 실행: mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 4/4 확인 중 : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 1/4 확인 중 : mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736ea6 2/4 확인 중 : mariadb-connector-c-3.0.7-1.el8.x86_64 3/4 확인 중 : mariadb-connector-c-config-3.0.7-1.el8.noarch 4/4 설치됨: mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-connector-c-3.0.7-1.el8.x86_64 mariadb-connector-c-config-3.0.7-1.el8.noarch 완료되었습니다! [study@localhost ~]$
만약 mariadb-server가 아닌 mariadb만 선택한다면 위처럼 MariaDB 구축에 필요한 패키지가 온전히 설치되지는 않습니다.
sudo dnf module update <module-spec>...
선택적으로 프로파일로 제한되는 활성 모듈 스트림과 연관된 패키지를 업데이트합니다. profile_name이 제공되면 해당 프로파일이 참조하는 패키지만 업데이트됩니다.
[study@localhost ~]$ sudo dnf module update mariadb [sudo] study의 암호: 마지막 메타 데이터 만료 확인 : 21:00:35 전에 2020년 02월 10일 (월) 오후 01시 50분 07초. 종속성이 해결되었습니다. 할 것이 없음. 완료되었습니다! [study@localhost ~]$
sudo dnf module remove [--all] <module-spec>...
dnf module install 명령으로 설치된 패키지를 포함하여 설치된 모듈 프로파일을 제거합니다. 설치된 다른 모듈 프로파일이나 다른 사용자 설치 패키지에 필요한 패키지는 제거하지 않습니다. 프로파일이 제공되지 않은 경우 설치된 모든 프로파일이 제거됩니다.
[study@localhost ~]$ sudo dnf module remove mariadb [sudo] study의 암호: 마지막 메타 데이터 만료 확인 : 21:07:43 전에 2020년 02월 10일 (월) 오후 01시 50분 07초. 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ 삭제 중: mariadb-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 @AppStream 88 M 사용되지 않는 종속성 제거: mariadb x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 @AppStream 40 M mariadb-backup x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 @AppStream 28 M mariadb-common x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 @AppStream 179 k mariadb-connector-c x86_64 3.0.7-1.el8 @AppStream 424 k mariadb-connector-c-config noarch 3.0.7-1.el8 @AppStream 497 mariadb-errmsg x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 @AppStream 2.3 M mariadb-gssapi-server x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 @AppStream 26 k mariadb-server-utils x86_64 3:10.3.17-1.module_el8.1.0+257+48736ea6 @AppStream 11 M perl-DBD-MySQL x86_64 4.046-3.module_el8.1.0+203+e45423dc @AppStream 367 k perl-DBI x86_64 1.641-3.module_el8.1.0+199+8f0a6bbd @AppStream 1.8 M Removing module profiles: mariadb/server 거래 요약 ================================================================================ 삭제 11 꾸러미 자유 공간 : 172 M 이게 괜찮습니까 [y / N] : y 트랜잭션 점검 실행 중 트랜잭션 검사가 성공했습니다. 트랜잭션 테스트 실행 중 트랜잭션 테스트가 완료되었습니다. 거래 실행 중 준비 중입니다 : 1/1 스크립틀릿 실행: mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257+4 1/1 삭제 중 : mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257 1/11 삭제 중 : mariadb-backup-3:10.3.17-1.module_el8.1.0+257+48736e 2/11 스크립틀릿 실행: mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 3/11 삭제 중 : mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 3/11 스크립틀릿 실행: mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 3/11 삭제 중 : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_ 4/11 삭제 중 : mariadb-server-utils-3:10.3.17-1.module_el8.1.0+257+ 5/11 삭제 중 : mariadb-errmsg-3:10.3.17-1.module_el8.1.0+257+48736e 6/11 삭제 중 : perl-DBD-MySQL-4.046-3.module_el8.1.0+203+e45423dc.x 7/11 삭제 중 : mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736e 8/11 삭제 중 : mariadb-connector-c-3.0.7-1.el8.x86_64 9/11 삭제 중 : mariadb-connector-c-config-3.0.7-1.el8.noarch 10/11 삭제 중 : perl-DBI-1.641-3.module_el8.1.0+199+8f0a6bbd.x86_64 11/11 스크립틀릿 실행: perl-DBI-1.641-3.module_el8.1.0+199+8f0a6bbd.x86_64 11/11 확인 중 : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_ 1/11 확인 중 : mariadb-backup-3:10.3.17-1.module_el8.1.0+257+48736e 2/11 확인 중 : mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736e 3/11 확인 중 : mariadb-connector-c-3.0.7-1.el8.x86_64 4/11 확인 중 : mariadb-connector-c-config-3.0.7-1.el8.noarch 5/11 확인 중 : mariadb-errmsg-3:10.3.17-1.module_el8.1.0+257+48736e 6/11 확인 중 : mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257 7/11 확인 중 : mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736e 8/11 확인 중 : mariadb-server-utils-3:10.3.17-1.module_el8.1.0+257+ 9/11 확인 중 : perl-DBD-MySQL-4.046-3.module_el8.1.0+203+e45423dc.x 10/11 확인 중 : perl-DBI-1.641-3.module_el8.1.0+199+8f0a6bbd.x86_64 11/11 제거됨: mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-backup-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-connector-c-3.0.7-1.el8.x86_64 mariadb-connector-c-config-3.0.7-1.el8.noarch mariadb-errmsg-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 mariadb-server-utils-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 perl-DBD-MySQL-4.046-3.module_el8.1.0+203+e45423dc.x86_64 perl-DBI-1.641-3.module_el8.1.0+199+8f0a6bbd.x86_64 완료되었습니다! [study@localhost ~]$–all 옵션을 사용하면 지정된 모듈에서 이름을 제공하는 모든 패키지를 추가로 제거합니다. 설치된 다른 모듈 프로파일에 필요한 패키지 및 다른 모듈에서도 이름이 제공되는 패키지는 제거되지 않습니다.
sudo dnf module enable <module-spec>...
모듈 스트림을 활성화하고 패키지 세트에서 스트림 RPM을 사용 가능하게 합니다.
[study@localhost ~]$ sudo dnf module enable mariadb [sudo] study의 암호: 마지막 메타 데이터 만료 확인 : 0:31:13 전에 2020년 02월 10일 (월) 오후 08시 11분 46초. 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ Enabling module streams: mariadb 10.3 거래 요약 ================================================================================ 이게 괜찮습니까 [y / N] : y 완료되었습니다! Switching module streams does not alter installed packages (see 'module enable' in dnf(8) for details) [study@localhost ~]$
참고
스위칭 모듈 스트림은 설치된 패키지를 변경하지 않습니다.
자세한 내용은 dnf (8)의 'module enable'참조하시기 바랍니다.
모듈러 종속성 문제가 발생하면 작업이 거부되는데 그럼에도 불구하고 진행하려면 -skip-broken 옵션을 사용하십시오.
sudo dnf module disable <module-name>...
모듈을 비활성화합니다. 설치된 모든 프로파일이 제거되고 패키지 세트에서 모듈 RPM을 사용할 수 없게됩니다.
[study@localhost ~]$ sudo dnf module disable mariadb 마지막 메타 데이터 만료 확인 : 0:18:50 전에 2020년 02월 10일 (월) 오후 08시 11분 46초. 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ Disabling module streams: mariadb 10.3 거래 요약 ================================================================================ 이게 괜찮습니까 [y / N] : y 완료되었습니다! [study@localhost ~]$모듈러 종속성 문제가 발생하면 작업이 거부되는데 그럼에도 불구하고 진행하려면 -skip-broken 옵션을 사용하십시오.
sudo dnf module reset <module-name>...
모듈 상태를 재설정합니다. 설치된 모든 프로파일이 제거되고 기본 스트림의 RPM만 패키지 세트에서 사용할 수 있게 됩니다.
[study@localhost ~]$ sudo dnf module reset mariadb [sudo] study의 암호: 마지막 메타 데이터 만료 확인 : 20:48:39 전에 2020년 02월 10일 (월) 오후 01시 50분 07초. 종속성이 해결되었습니다. ================================================================================ 꾸러미 아키텍처 버전 리포지토리 크기 ================================================================================ Removing module profiles: mariadb/server Resetting module streams: mariadb 10.3 거래 요약 ================================================================================ 이게 괜찮습니까 [y / N] : y 완료되었습니다! [study@localhost ~]$
sudo dnf module provides <package-name-spec>...
비활성화된 모듈을 포함하여 모든 모듈에서 <package-name-spec>과 일치하는 모든 모듈러 패키지와 해당 모듈 및 스트림을 나열합니다.
[study@localhost ~]$ sudo dnf module provides mariadb [sudo] study의 암호: 마지막 메타 데이터 만료 확인 : 6:17:36 전에 2020년 02월 10일 (월) 오후 01시 50분 07초. mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 Module : mariadb:10.3:8010020200108182321:cdc1202b:x86_64 Profiles : client Repo : AppStream Summary : MariaDB Module [study@localhost ~]$
dnf module list [--all] [module_name...]
저장소에서 지원하는 모듈 스트림, 프로파일 및 상태를 나열합니다.
상태 표시 기호
[d]efault : 기본
[e]nabled : 활성화된 상태
[x]disabled : 비활성화된 상태
[i]nstalled : 시스템에 설치된 모듈
지정한 특정 모듈 정보 확인
[study@localhost ~]$ dnf module list mariadb mysql 마지막 메타 데이터 만료 확인 : 7:46:04 전에 2020년 02월 10일 (월) 오후 12시 28분 13초. CentOS-8 - AppStream Name Stream Profiles Summary mariadb 10.3 [d][e] client, server [d] [i], galera MariaDB Module mysql 8.0 [d] client, server [d] MySQL Module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled [study@localhost ~]$
[study@localhost ~]$ dnf module list --all 마지막 메타 데이터 만료 확인 : 7:44:29 전에 2020년 02월 10일 (월) 오후 12시 28분 13초. CentOS-8 - AppStream Name Stream Profiles Summary 389-ds 1.4 389 Directory Server (base) ant 1.10 [d] common [d Java build tool ] container-tools 1.0 common [d Common tools and dependencies for co ] ntainer runtimes container-tools rhel8 [d] common [d Common tools and dependencies for co ] ntainer runtimes freeradius 3.0 [d] server [d High-performance and highly configur ] able free RADIUS server gimp 2.8 [d] common [d gimp module ], devel go-toolset rhel8 [d] common [d Go ] httpd 2.4 [d] common [d Apache HTTP Server ], devel, minimal - 중략 - swig 3.0 [d] common [d Connects C/C++/Objective C to some h ], comple igh-level programming languages te varnish 6 [d] common [d Varnish HTTP cache ] virt rhel [d][e] common [d Virtualization module ] Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled [study@localhost ~]$
특정 모듈을 지정하지 않는다면 굳이 --all 옵션을 붙이지 않아도 전체 모듈 정보를 출력합니다.
dnf module list --enabled [module_name...]
활성화된 모듈 스트림을 나열합니다.
[study@localhost ~]$ dnf module list --enabled 마지막 메타 데이터 만료 확인 : 7:58:47 전에 2020년 02월 10일 (월) 오후 12시 28분 13초. CentOS-8 - AppStream Name Stream Profiles Summary llvm-toolset rhel8 [d][e] common [d] LLVM mariadb 10.3 [d][e] client, server [d] MariaDB Module [i], galera perl-DBD-MySQL 4.046 [d][e] common [d] A MySQL interface for Perl perl-DBI 1.641 [d][e] common [d] A database access API for Per l python36 3.6 [d][e] common [d], build Python programming language, version 3.6 satellite-5-client 1.0 [d][e] common [d], gui Red Hat Satellite 5 client pa ckages virt rhel [d][e] common [d] Virtualization module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled [study@localhost ~]$
dnf module list --disabled [module_name...]
비활성화된 모듈 스트림을 나열합니다.
[study@localhost ~]$ dnf module list --disabled 마지막 메타 데이터 만료 확인 : 8:03:30 전에 2020년 02월 10일 (월) 오후 12시 28분 13초. CentOS-8 - AppStream Name Stream Profiles Summary mariadb 10.3 [d][x] client, server [d], galera MariaDB Module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled [study@localhost ~]$
dnf module list --installed [module_name...]
프로파일이 설치된 모듈 스트림을 나열합니다.
[study@localhost ~]$ dnf module list --installed 마지막 메타 데이터 만료 확인 : 8:21:14 전에 2020년 02월 10일 (월) 오후 12시 28분 13초. CentOS-8 - AppStream Name Stream Profiles Summary mariadb 10.3 [d][e] client, server [d] [i], galera MariaDB Module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled [study@localhost ~]$
sudo dnf [options] module info <module-spec>...
지정한 모듈 스트림에 대한 자세한 정보를 출력합니다.
[study@localhost ~]$ dnf module info mariadb 마지막 메타 데이터 만료 확인 : 8:23:42 전에 2020년 02월 10일 (월) 오후 12시 28분 13초. Name : mariadb Stream : 10.3 [d][e][a] Version : 8010020200108182321 Context : cdc1202b Profiles : client, server [d] [i], galera Default profiles : server Repo : AppStream Summary : MariaDB Module Description : MariaDB is a community developed branch of MySQL. MariaDB is a multi-user, multi-threaded SQL database server. It is a client/server implementation consisting of a server daemon (mysqld) and many different client programs and libraries. The base package contains the standard MariaDB/MySQL client programs and generic MySQL files. Artifacts : Judy-0:1.0.5-18.module_el8.1.0+217+4d875839.src : Judy-0:1.0.5-18.module_el8.1.0+217+4d875839.x86_64 : Judy-debuginfo-0:1.0.5-18.module_el8.1.0+217+4d875839.x86_64 : Judy-debugsource-0:1.0.5-18.module_el8.1.0+217+4d875839.x86_64 : galera-0:25.3.26-1.module_el8.1.0+217+4d875839.src : galera-0:25.3.26-1.module_el8.1.0+217+4d875839.x86_64 : galera-debuginfo-0:25.3.26-1.module_el8.1.0+217+4d875839.x86_64 : galera-debugsource-0:25.3.26-1.module_el8.1.0+217+4d875839.x86_64 : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.src : mariadb-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-backup-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-backup-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-common-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-debugsource-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-devel-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-embedded-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-embedded-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-embedded-devel-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-errmsg-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-gssapi-server-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-gssapi-server-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-oqgraph-engine-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-oqgraph-engine-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-server-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-server-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-server-galera-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-server-utils-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-server-utils-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-test-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 : mariadb-test-debuginfo-3:10.3.17-1.module_el8.1.0+257+48736ea6.x86_64 Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled, [a]ctive] [study@localhost ~]$
dnf module info --profile <module-spec>...
지정한 모듈 프로파일에 대한 자세한 정보를 출력합니다.
[study@localhost ~]$ dnf module info --profile mariadb 마지막 메타 데이터 만료 확인 : 8:28:04 전에 2020년 02월 10일 (월) 오후 12시 28분 13초. Name : mariadb:10.3:8010020200108182321:cdc1202b:x86_64 client : mariadb server : mariadb-server galera : mariadb-server : mariadb-server-galera [study@localhost ~]$
DNF 명령어에 대하여 알아보고자 하시는 경우 많은 분들이 아래의 사이트를 방문하셔서 원하는 자료를 찾으실 겁니다.
높은 가독성과 일목요연한 정리로 손쉽게 DNF 관련 내용을 습득할 수 있어 저 역시도 굉장히 방문했던 곳입니다.
그러나 DNF와 관련하여 잘못된 정보(대부분 과거 정보)가 수정되지 않고 남아 있다거나 사용법은 설명해놓고 있는데 정작 해당 기능을 사용하기 위해 필요한 사전 작업(예를 들어 추가 플러그인을 사용하기 위한 설치 방법 등)에 대한 정보가 전혀 없는 등의 문제가 있습니다.
이런 문제점이 가장 잘 드러난 부분이 바로 이 DNF 모듈 명령어 파트입니다.
위 사이트의 모듈 명령 안내에는 다음과 같은 명령을 지원한다고 소개하고 있습니다.
dnf module repoquery <module-spec>...
선택한 모듈에 속하는 사용 가능한 모든 패키지를 나열합니다.
sudo dnf module repoquery --available <module-spec>...
선택한 모듈에 속하는 사용 가능한 모든 패키지를 나열합니다.
sudo dnf module repoquery --installed <module-spec>...
선택한 모듈에 속하는 패키지와 같은 이름으로 설치된 모든 패키지를 나열합니다.-전략 -
dnf module: error: argument subcmd: invalid choice: 'repoquery' (choose from 'update', 'provides', 'install', 'reset', 'disable', 'enable', 'info', 'remove', 'list')
즉 dnf module 명령은 하위 명령으로
'update', 'provides', 'install', 'reset', 'disable', 'enable', 'info', 'remove', 'list'
이렇게 9개만 지원하는 것입니다. dnf module repoquery 명령은 존재하지 않습니다.
이 내용은 터미널에서 $ man dnf 명령을 쳐서도 확인할 수 있습니다.
모듈 명령 파트에서 내용은 dnf module info --profile <module-spec>... 명령을 끝으로 더 이상의 추가 명령어는 존재하지 않습니다.
이러한 잘못된 정보가 존재하는 이유는 이 설명서 작성 프로젝트가 자원봉사자들의 수고로 이루어지기 때문일 것입니다.
'리눅스 > CentOS' 카테고리의 다른 글
DNF 분류별 명령줄 옵션 - [03] 부가 기능 (0) | 2020.02.15 |
---|---|
DNF 분류별 명령줄 옵션 - [02] 환경 설정 (0) | 2020.02.13 |
DNF 명령줄 분류별 옵션 - [01] 패키지 관리 (0) | 2020.02.11 |
DNF 명령줄 옵션 연재 목록 (0) | 2020.02.09 |
DNF 배포판 동기화 - 배포판 동기화(Distro-Sync) (0) | 2020.02.03 |
DNF 저장소 관리 - 저장소 정보(Repolist), 저장소 내 임시 파일 정리(Clean), 저장소 메타 데이터 캐시 생성(Makecache), 저장소 쿼리 명령(Repoquery), 저장소 패키지 명령(Repository-Packages) (0) | 2020.02.01 |
DNF 트랜잭션 관리 - 트랜잭션 이력(History) (0) | 2020.01.30 |
DNF 명령 관리 - 명령 별명(Alias), 대화식 쉘(Shell), 도움말(Help) (0) | 2020.01.27 |