CentOS 저장소에서 모든 RPM 패키지를 다운로드하시겠습니까?

CentOS 저장소에서 모든 RPM 패키지를 다운로드하시겠습니까?

인터넷 액세스 없이 다른 서버에서 액세스하고 최신 패키지를 얻을 수 있도록 CentOS 저장소에서 다운로드한 모든 RPM 패키지를 포함해야 하는 서버가 있습니다.

문제는 종속성 문제로 인해 모든 패키지를 다운로드할 수 없다는 것입니다. 다음은 내가 시도한 명령입니다.

$ repotrack -p . -a x86_64 *.rpm

위 명령은 194RPM 패키지를 다운로드합니다. *rpm을 사용하려고 하면 다시 동일한 결과가 나타납니다.

$ yum install --downloadonly --installroot=/etc/yum.downloads/packets-installroot --downloaddir=/etc/yum.downloads *.rpm 

위 명령은 179RPM 패키지를 다운로드합니다. *rpm을 사용하려고 하면 패킷 수가 감소합니다.

$ yumdownloader --resolve --destdir=/etc/yum.downloads/ *.rpm

위 명령은 48개의 패키지만 다운로드합니다.

$ yum install --downloadonly --downloaddir=/etc/yum.downloads/ *rpm

위 명령은 48개의 패키지만 다운로드합니다.

이 명령은 모든 RPM 패키지와 종속성을 다운로드해야 하지만 그렇지 않습니다. 또한 특정 1개 패키지로 명령을 시도하고 있는데 해당 패키지의 종속성을 다운로드하지만 모든 패키지를 다운로드하려고 할 때마다 그렇게 할 수 없는 것 같습니다.

고쳐 쓰다:

나는 다음 명령을 시도했다

$ repoquery --qf=%{name} -g --list --grouppkgs=all [groups] | xargs repotrack -a x86_64 -p .

4640 패키지를 다운로드했지만 여전히 문제가 있습니다. -g 명령은 패키지 대신 그룹을 쿼리합니다. 따라서 일부 패키지는 그룹화되지 않았으며 해당 패키지도 다운로드해야 합니다.

-a매개변수는 설명서에 -a"모두 쿼리"라고 나와 있기 때문에 제가 믿는 솔루션입니다. 하지만 여전히 실제 구문을 찾을 수 없습니다. 아는 사람 있나요?

답변1

해결책을 찾았습니다.

repoquery -a | xargs repotrack -a x86_64 -p .

wget -A rpm -r -l 5 http://mirror.centos.org/centos/7/os/x86_64/Packages/ -P .

답변2

다음 명령을 사용할 수 있습니다.

목록사용 가능한 모든 패키지지정된 저장소에서 다음을 수행합니다.

repoquery -a --repoid=REPONAME

모든 패키지를 다운로드하려면 다음을 사용하십시오.매개변수그리고Yum 다운로더

repoquery -a --repoid=REPONAME| xargs -i -t yumdownloader {}

reoid가 원격 저장소의 이름인 경우.

관련 정보