rpm 없이 로컬 yum 저장소 만들기

rpm 없이 로컬 yum 저장소 만들기

다음 명령을 사용하여 인터넷에서 패키지를 설치할 수 있습니다.

yum install packagex

그러면 모든 종속 패키지가 다운로드되어 순서대로 설치됩니다. 인터넷에 접속할 수 없는 일부 고객의 경우 이러한 패키지만 생성하는 저장소 tarball을 제공하여 이를 달성할 수 있기를 바랍니다.

다음과 같은 작업을 수행할 수 있습니까?

yum install packagex  --createRepo /tmp/foo

/tmp/footar모든 패키지는 yum에서 오프라인으로 패키지를 설치하는 데 사용할 수 있는 repo 형식으로 저장됩니다 .

답변1

예, downloadonly yum 플러그인을 사용하면 이 작업을 수행할 수 있습니다. RedHat 기사에서는 이에 대해 더 자세히 설명합니다.yum을 사용하여 패키지를 설치하지 않고 다운로드하는 방법

예를 들어,
yum install packagex --downloadonly --downloaddir=/tmp/packagex_repo
이것을 실행하여 다운로드 할 수 있습니다.패키지 x그리고 현재 시스템에 필요한 모든 종속성은 /tmp/packagex_repo.

yumdownloader패키지에는 yum-utils동일한 방법을 제공하는 콘텐츠도 포함되어 있습니다.오류로 인해 i586 및 x86_64 버전의 패키지가 다운로드됩니다., 이 옵션이 --archlist항상 원하는 대로 작동하는 것은 아닙니다.

자세한 내용은 다음을 참조하세요.

createrepo결과가 많으 므로 여기에서 검색할 수 있는 저장소를 만듭니다 . tarball로 패키징하려면 몇 가지 명령만 필요합니다. 먼저 패키지를 다운로드한 다음 repo 디렉터리에서 createrepo를 실행하고 마지막으로 해당 폴더와 repo의 yum 구성에서 tarball을 만듭니다. 그러나 모든 것을 타르볼에 넣은 다음 사람들에게 타르볼을 추출하고 yum install ./*rpm추출된 저장소 폴더에서 실행하라고 지시할 수도 있습니다. repo 방법을 사용하면 yum 기록 및 yum 패키지 목록에 특정 패키지가 원래 설치된 저장소가 표시된다는 이점이 있습니다.

답변2

RPM은 이미 이 작업을 수행할 수 있습니다. yum을 통해 사용 가능한 모든 소프트웨어 패키지는 RPM을 얻을 수 있습니다. RPM은 yum을 찾을 때마다 설치됩니다. 따라서 RPM을 모아서 tar 볼에 넣은 다음 이를 추출하고 일부 RPM 명령을 실행하여 작업을 완료할 수 있습니다.

물론 패키지 관리에 있어 중요한 문제는 종속성이므로 각 종속성에 대한 패키지를 포함해야 합니다.

관련 정보