IBM AIX에서 DNF 구성 및 로컬 저장소 생성

소개
오픈 소스 소프트웨어용 AIX 도구 상자 ( AIX 도구 상자)는 IBM AIX 시스템용으로 설계된 RPM 패키지 관리자( RPM ) 형식 으로 구축된 오픈 소스 소프트웨어 컬렉션입니다 .

AIX Toolbox는 이제 익숙한 Yellowdog Updater의 고급 후속 버전인 DNF(dandified yum이라고도 함)를 수정(yum)하여 제공합니다. 이러한 진화에서 python2를 기반으로 하는 패키지 관리자인 yum은 커뮤니티 내에서 지원되지 않게 되었습니다. 결과적으로 python3 호환 패키지 관리자인 DNF로의 강력한 전환이 필수적이었습니다. DNF는 yum과의 CLI 호환성을 원활하게 유지하고, 확장 및 플러그인에 대한 강력한 API 프레임워크를 적용하며, 잘 문서화된 API를 활용합니다. 최첨단 SAT 기반 종속성 솔버를 사용합니다. 특히 yum을 위해 설계된 기존 AIX Toolbox 리포지토리는 DNF와 원활하게 통합되어 리포지토리 측 조정이 필요하지 않습니다.

이 튜토리얼에서는 DNF를 설치하고, AIX Toolbox RPM 패키지가 포함된 로컬 DNF 저장소를 설정하고, DNF를 구성하는 여러 가지 방법을 설명합니다.

필수 조건
이 튜토리얼을 최대한 활용하려면 사용자가 다음 기본 기술을 갖추는 것이 좋습니다.

Red Hat Package Manager(RPM) 및 기본 RPM 명령
Apache HTTP 프록시 구성
공간 및 시스템 요구 사항
512MB /tmp 여유 공간.
512MB /opt 여유 공간.
DNF는 AIX 7.1 TL5 및 이후 버전에서 작동합니다.
Openssl 1.1.XX 이상 버전을 설치하는 것이 필수입니다.
완료 예상 시간
이 튜토리얼을 완전히 이해하려면 약 30분이 소요됩니다.

단계
DNF 구성
이 방법은 사용자가 인터넷에 직접 접속하여 IBM 공개 FTP 서버 에 연결을 설정할 수 있는 경우에 권장됩니다 .

dnf_aixtoolbox.sh 스크립트를 다운로드 하고 루트 사용자로 실행합니다. 이 스크립트는 다음 작업을 수행합니다.

AIX 버전에 따라 적절한 dnf_bundle_aix71_72.tar 또는 dnf_bundle_aix73.tar 파일을 다운로드합니다.
필요한 rpm.rte 버전(AIX 7.1 및 7.2의 경우 rpm.rte-4.15.1.1010 이상, AIX 7.3의 경우 rpm.rte-4.15.1.2009)이 설치되도록 보장합니다.
DNF 번들은 DNF와 관련 패키지를 포함합니다.
DNF 번들에서 기존에 설치된 모든 패키지를 확인하고 그에 따라 패키지를 설치합니다.
DNF 스크립트는 다음 옵션과 함께 활용할 수 있습니다.

dnf_aixtoolbox.sh <-d> <-y> <-n>

<-d>: yum이 없는 경우 DNF를 설치하고 설정합니다. dnf 명령만 사용할 수 있습니다.
<-y>: DNF를 설치하고 yum3을 DNF yum4로 업데이트합니다(yum3이 있는 경우). yum3이 설치되지 않은 경우 DNF와 yum4가 모두 설치됩니다. dnf와 yum 명령은 모두 액세스할 수 있습니다.
<-n>: yum과 함께 DNF를 설치하여 기존 yum 설치와 공존할 수 있습니다. 이 옵션은 권장되지 않습니다.
로컬 DNF 저장소 생성
로컬 DNF 저장소를 설정하려면 다른 AIX 시스템의 저장소 역할을 할 한 시스템에서 인터넷 액세스가 필요합니다.

더 나은 이해를 위해 인터넷 접속이 가능한 시스템(로컬 DNF 리포지토리 생성)을 Repo 서버 라고 합니다 . 이 리포지토리를 사용하는 다른 AIX 시스템은 AIX Repo 클라이언트 라고 합니다 .

Repo 서버는 RPM 기반 시스템(AIX 또는 RPM 기반 Linux®)이어야 합니다. HTTP 서버는 Repo 서버에서 작동해야 하며, AIX Repo 클라이언트가 HTTP를 통해 저장소 디렉토리에 액세스할 수 있어야 합니다. 이렇게 하면 DNF 연결과 RPM 패키지 검색이 용이해집니다.

로컬 DNF 리포지토리를 생성하고 사용하려면 다음 단계(1-7)를 참조하세요. 1-6단계는 Repo 서버에서 실행해야 하고 7단계는 AIX Repo 클라이언트에서 실행해야 합니다.

다음 명령을 사용하여 dnf-utils 및 createrepo_c 패키지를 설치합니다 .

dnf install dnf-utils
dnf install createrepo_c

저장소 파일에 AIX Toolbox 저장소 항목을 만듭니다.

Linux Repo 서버에서: '/etc/dnf.repos.d/AIX-Toolbox.repo'
AIX Repo 서버에서: 기본 DNF 구성 파일 '/opt/freeware/etc/dnf/dnf.conf'가 설치됩니다.
다음 항목이 있는지 확인하세요.

[AIX_Toolbox]
name=AIX generic repository
baseurl= https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/
[AIX_Toolbox_noarch]
name=AIX noarch repository
baseurl= [https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/noarch/](https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/noarch/)
[AIX_Toolbox_71]
name=AIX 7.1 specific repository
baseurl= https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc-7.1/
[AIX_Toolbox_72]
name=AIX 7.2 specific repository
baseurl= [https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc-7.2/](https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc-7.2/)
[AIX_Toolbox_73]
name=AIX 7.3 specific repository
baseurl= https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc-7.3/

더 보기
AIX 저장소가 활성화되어 있는지 확인하세요.

# dnf repolist
repo id repo name
AIX_Toolbox AIX generic repository
AIX_Toolbox_71 AIX 7.1 specific repository
AIX_Toolbox_72 AIX 7.2 specific repository
AIX_Toolbox_73 AIX 7.3 specific repository
AIX_Toolbox_noarch AIX noarch repository

더 보기
명령을 사용하여 모든 AIX Toolbox 저장소를 Repo 서버로 동기화합니다 reposync. 옵션을 사용하여 저장소 ID를 지정합니다 --repo. 그렇지 않으면 reposync가 활성화된 모든 저장소를 동기화하려고 시도합니다. -prpm 파일을 복사할 경로이고 -a는 아키텍처를 지정합니다.

# reposync -p <target_path> --repo AIX_Toolbox -a ppc
# reposync -p <target_path> --repo AIX_Toolbox_71 -a ppc
# reposync -p <target_path> --repo AIX_Toolbox_72 -a ppc
# reposync -p <target_path> --repo AIX_Toolbox_73 -a ppc
# reposync -p <target_path> --repo AIX_Toolbox_noarch

더 보기
모든 저장소가 동기화되었는지 확인하세요.

# ls <target_path>/
AIX_Toolbox AIX_Toolbox_71 AIX_Toolbox_noarch
AIX_Toolbox_72 AIX_Toolbox_73
# ls <target_path>/AIX_Toolbox

더 보기
참고: 이 예에서는 모든 AIX Toolbox 저장소 RPM 패키지 디렉토리가 표시됩니다.

명령을 사용하여 다운로드한 모든 패키지에 대한 DNF 저장소를 만듭니다 createrepo.

# createrepo_c <target_path>/AIX_Toolbox
# createrepo_c <target_path>/AIX_Toolbox_71
# createrepo_c <target_path>/AIX_Toolbox_72
# createrepo_c <target_path>/AIX_Toolbox_73
# createrepo_c <target_path>/AIX_Toolbox_noarch

더 보기
AIX 시스템에서 /opt/freeware/etc/dnf/dnf.conf 파일을 편집합니다.
파일을 편집하여 Linux 시스템에서 새로 생성된 리포지토리를 추가하고 활성화합니다.

참고: 초기 실행 시 reposyncDNF 저장소 내의 모든 사용 가능한 RPM 패키지를 동기화하며, DNF를 통해 활성화된 이전 RPM 패키지를 모두 포함합니다. 이후 패키지 업데이트는 reposync업데이트된 RPM 패키지를 독점적으로 복사하여 시스템에 있는 이전 패키지를 보존합니다. 를 호출하면 createrepoDNF 저장소는 이전 및 최신 RPM 패키지를 모두 축적합니다. 이 프로세스는 동기화 중에도 적용됩니다.

reposyncRPM 디렉토리 구조를 유지하면서 지정된 repodata 위치에서 repodata 파일을 제외한 RPM을 선택적으로 복사합니다. 특히 저장소 구조는 AIX Toolbox와 다를 수 있으므로 사용자는 정확한 경로를 설정하기 위해 dnf.conf 파일을 수정해야 합니다.

예를 들어, AIX Toolbox에서 baseurl은 다음과 같이 나타납니다.baseurl=https://anonymous:anonymous@public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/

를 사용하면 reposyncRPM을 다음과 같이 복사합니다.

# ls <target_path>/AIX_Toolbox
a2ps expat .........

더 보기
createrepoRepo Server에서 실행할 경우 AIX의 저장소 URL은 다음과 일치해야 합니다.
baseurl=https://<Repo server/target_path>/AIX_Toolbox/

ISO 이미지에서 DNF를 설정하는 것과 같은 다른 방법도 사용할 수 있습니다. 이 주제에 대한 자세한 내용은 블로그 게시물 Creating local repo with DNF and AIX Toolbox Media Image를 참조하세요 .

요약
DNF 저장소 설정 측면에서 기업의 요구 사항을 이해하는 것이 중요합니다. 이는 조직의 보안 표준에 따라 달라집니다. 공용 네트워크 액세스가 허용되는 경우 AIX Toolbox 저장소를 활용하는 것이 최적입니다. 그러나 엄격한 보안 조치가 시행되는 경우 공용 네트워크에 연결하고 DNF 저장소를 개인 시스템에 제공하는 단일 서버를 설정하는 것이 권장되는 접근 방식으로 나타납니다.

Leave a Comment