閉じたネットワーク環境でパッケージを更新するための.rpm URLリストを取得する

閉じたネットワーク環境でパッケージを更新するための.rpm URLリストを取得する

背景

クローズドネットワーク環境でRHEL 8を使用してサーバーを実行しています。ファイルをサーバーにアップロードできますが、yum updateサーバーでは機能しません。特定のパッケージを最新バージョンに更新したいと思います。パッケージを更新するには、更新されたパッケージから必要なパッケージを更新する必要があります。

質問

.rpmパッケージの更新に必要なすべてのファイルのURLを列挙できる場合は、.rpm他の環境からファイルをダウンロードしてサーバーにアップロードできます。

依存関係ツリーとツリー内のパッケージのURLを検索できることを知っていますが、repoquery閉じたネットワーク上の環境以外にRHEL環境はありません。

質問

.rpmRHEL環境なしで特定のパッケージを更新するために必要なすべてのファイルのURLを列挙する方法はありますか?

ベストアンサー1

1つの可能なアプローチは、以下を使用することです。

rpm -qR package_name.rpm

たとえば、

rpm -qR https://vault.centos.org/centos/8/BaseOS/x86_64/os/Packages/vim-minimal-8.0.1763-16.el8.x86_64.rpm
warning: https://vault.centos.org/centos/8/BaseOS/x86_64/os/Packages/vim-minimal-8.0.1763-16.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 8483c65d: NOKEY
config(vim-minimal) = 2:8.0.1763-16.el8
libacl.so.1()(64bit)
libacl.so.1(ACL_1.0)(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.15)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.28)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libselinux.so.1()(64bit)
libtinfo.so.6()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1
rtld(GNU_HASH)

パッケージを受け取ったら、URLを直接作成する必要があります。

おすすめ記事