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がリモートリポジトリの名前です。

関連情報