리눅스/CentOS

유용한 DNF 플러그인

씨실과 날실 2020. 2. 24. 09:00


안내

앞으로 상당 기간에 걸쳐 RPM 기반 리눅스 배포판을 위한 패키지 관리도구 DNF에 대해 연재하게 되었습니다.

이 연재는 레드햇 계열 리눅스를 처음 접하는 분들을 위해 초심자가 꼭 알야야 하거나 또는 알면 유용한 것들을 선별하여 내용을 작성하였습니다.

잘못된 정보가 있다면 댓글로 제보해주시면 감사하겠습니다.


연재 항목은 다음과 같습니다.

2020/01/13 - [리눅스/CentOS] - DNF 명령 - DNF 명령 연재 목록

2020/01/18 - [리눅스/CentOS] - DNF 패키지 기본 관리 명령 1 - 패키지 설치(install), 제거(remove), 재설치(reinstall), 자동 제거(autoremove), 패키지 제거와 설치 동시 수행(swap)

2020/01/19 - [리눅스/CentOS] - DNF 패키지 기본 관리 명령 2 - 패키지 정보(Info), 목록(List), 종속성 목록(Deplist), 문제점 검사(Check), 그룹 관련 명령(Group), 작업 표시(Mark), 검색(Search), 조건 검색(Provides)

2020/01/23 - [리눅스/CentOS] - DNF 패키지 버전 관리 - 패키지 업그레이드(Upgrade), 최소 업그레이드(Upgrade-Minimal), 다운그레이드(Downgrade), 업데이트 정보(Updateinfo), 업데이트 확인(Check-Update)

2020/01/27 - [리눅스/CentOS] - DNF 명령 관리 - 명령 별명(Alias), 대화식 쉘(Shell), 도움말(Help)

2020/01/30 - [리눅스/CentOS] - DNF 트랜잭션 관리 - 트랜잭션 이력(History)

2020/02/01 - [리눅스/CentOS] - DNF 저장소 관리 - 저장소 정보(Repolist), 저장소 내 임시 파일 정리(Clean), 저장소 메타 데이터 캐시 생성(Makecache), 저장소 쿼리 명령(Repoquery), 저장소 패키지 명령(Repository-Packages)

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)

2020/02/24 - [리눅스/CentOS] - 유용한 DNF 플러그인

2020/02/26 - [리눅스/CentOS] - DNF와 YUM의 차이점



주요 DNF 플러그인 목차

DNF changelog Plugin

DNF config-manager Plugin

DNF debug Plugin

DNF download Plugin

DNF leaves Plugin

DNF local Plugin


DNF changelog Plugin

패키지 변경 로그를 보기위한 플러그인입니다.

dnf changelog [<options>] <package-spec>...

옵션

-since=<date>

<date>이후의 변경 로그 항목만 표시합니다 .

YYYY-MM-DD 날짜 형식을 사용합니다.

--count=<number>

패키지의 최근 <number> 개수만큼의 변경 로그 항목을 표시합니다.

--upgrades

업그레이드 가능한 패키지의 새 변경 로그 항목만 표시합니다.


DNF config-manager Plugin

DNF 환경설정[구성] 파일(dnf.conf)의 [main] 섹션과 저장소 설정 파일(foo.repo)의 옵션을 관리하고 저장소를 추가하는 플러그인입니다.

dnf config-manager [options] <section>...

인수

<section>

설정할 구성 섹션을 명시적으로 선택하는 항목입니다.

main 또는 repoid를 인수값으로 사용할 수 있습니다.

지정하지 않으면 main 섹션과 --setopt 옵션에서 설정된 저장소의 옵션을 설정하게 됩니다.


옵션

--help-cmd

이 도움말을 보여줍니다.

--add-repo=URL

지정한 파일이나 URL에 저장소를 추가하고 활성화랍니다.

installroot에 추가해야 하는 경우 이를 --setopt=reposdir=/<installroot>/etc/yum.repos.d 명령줄 옵션과 함께 써야 합니다.

--dump

현재 구성값을 표준출력(stdout - 보통 모니터)에 출력합니다.

--set-disabled, --disable

지정한 저장소를 비활성화하고 저장합니다.

--set-enabled, --enable

지정된 저장소를 활성화하고 저장합니다.

--save

현재 옵션을 저장합니다.(--setopt 옵션과 함께 사용)

--setopt=<option>=<value>

구성 옵션을 설정합니다.

저장소에 대한 구성 옵션을 설정하려면을 <option>에 repoid.option을 사용하십시오.

globs는 repoid에서 지원됩니다.


DNF debug Plugin

시스템 RPM 구성을 덤프 파일에 기록하고 복원합니다.

dnf debug-dump [--norepos] [<filename>]

dnf debug-restore [--output] [--install-latest] [--ignore-arch] [--filter-types = [install,remove,replace]] <filename>

인수

<filename>

덤프를 쓰거나 읽을 파일입니다.

옵션

dnf debug-dump의 경우

--norepos

활성화된 repos의 내용을 덤프하지 않습니다.


dnf debug-restore의 경우

--output

설치 또는 제거할 패키지 목록만 출력합니다. 실제로는 변경되지 않습니다.

--install-latest

설치시 동일한 이름과 아키텍처의 최신 패키지를 사용합니다.

--ignore-arch

패키지를 설치할 때 아키텍처를 무시하고 이름, epoch, 버전 및 릴리스와 일치하는 누락 패키지를 설치합니다.

--filter-types=[install,remove,replace]

패키지 변경을 지정된 유형으로 제한합니다.


DNF download Plugin

바이너리 또는 소스 패키지를 다운로드합니다.

dnf download [options] <pkg-spec>...

인수

<pkg-spec>

다운로드 할 패키지의 사양.

로컬 RPM도 지정할 수 있습니다.

--source 옵션을 사용하거나 동일한 RPM을 다시 다운로드하려는 경우에 유용합니다.

옵션

--help-cmd

이 도움말을 보여줍니다.

--arch <arch>[,<arch>...]

쿼리를 지정된 아키텍처의 패키지로 제한합니다 (기본값은 시스템과 호환되는 모든 아키텍처).

시스템과 호환되지 않는 아키텍처의 패키지를 다운로드하려면 --forcearch=<arch>옵션을 사용하십시오.

--source

소스 rpm을 다운로드합니다. 활성화된 모든 이진 저장소의 소스 저장소를 활성화합니다.

--debuginfo

debuginfo rpm을 다운로드합니다.

사용 가능한 모든 바이너리 저장소의 debuginfo 저장소를 사용합니다.

--downloaddir

다운로드 디렉터리입니다.

기본값은 현재 디렉토리입니다(디렉토리가 존재해야 함).

--url

다운로드하는 대신 rpm을 다운로드 할 수있는 URL 목록을 출력합니다.

--urlprotocol

–url 옵션으로 URL 출력 프로토콜을 제한합니다.

옵션은 http, https, rsync, ftp입니다.

--resolve

지정된 패키지의 종속성을 해결하고 시스템에서 누락된 종속성을 다운로드합니다.


DNF leaves Plugin

설치된 다른 패키지에 필요하지 않은(종속성으로 연결되어 있지 않은)  패키지를 출력합니다.

dnf leaves

DNF local Plugin

다운로드한 모든 패키지를 로컬 파일 시스템의 저장소에 자동으로 복사하고 repo 메타 데이터를 생성합니다.

참고

repo 메타 데이터 생성은 createrepo_c패키지를 설치 한 경우에만 작동 합니다.

구성

/etc/dnf/plugins/local.conf

conf 파일 안에 매개 변수가 활성화된 main 및 createrepo 섹션을 포함해야합니다. 그렇지 않으면 플러그인이 작동하지 않습니다.

[main]
enabled = true

[createrepo]
enabled = true

main 섹션의 경우로컬 저장소의 경로를 설정한  repodir 매개 변수를 지정할 수 있습니다 .