適切なリポジトリ。 「アーキテクチャ」オプションがどのように機能するか。どの値を使用できるかをどのように決定しますか?

適切なリポジトリ。 「アーキテクチャ」オプションがどのように機能するか。どの値を使用できるかをどのように決定しますか?

私はUbuntu_22.04ノードに2つの適切なストレージを設定するためにansibleを使用しています。

aarch64Ansibleには、次の例で提供されている{{ansible_architecture}}という変数があります。

私はPodmanとdockerの2つのリポジトリを設定するために使用しました。DEB822ソース形式。 .sources ファイルは次のとおりです/etc/apt/sources.list.d/


X-Repolib-Name: podman
Signed-By: /etc/apt/keyrings/podman.asc
URIs: https://download.opensuse.org/repositories/devel:kubic:libcontainers:unstable/xUbuntu_22.04
Suites: /
Architectures: aarch64
Enabled: yes
Types: deb
X-Repolib-Name: docker
Signed-By: /etc/apt/keyrings/docker.asc
URIs: https://download.docker.com/linux/ubuntu
Suites: jammy
Components: stable
Architectures: aarch64
Enabled: yes
Types: deb

Podmanリポジトリはうまく機能しますが、dockerリポジトリには次のものが必要です。arm64

N: Skipping acquire of configured file 'stable/binary-aarch64/Packages' as repository 'https://download.docker.com/linux/ubuntu jammy InRelease' doesn't support architecture 'aarch64'

aarch64だから私の質問は、podmanが許可しますが、docker requrireを許可するので、アーキテクチャを指定するためにどのキーワードを使用できるかを見つける方法ですarm64ドッカーページ両方の名前が正確でなければならないことを示していますが、それが私が見つけた唯一のものです。 URIだけで判断できますか?https://download.docker.com/linux/ubuntu/それとも、それを構成した人だけがそれを知っているので、私はチャンスをつかむべきですか?

答え1

Debian派生製品では、64ビットARMのアーキテクチャ名は次のとおりです。arm64(あなたも見ることができますdpkg-debは私のアーキテクチャをx86-64の代わりにamd64として扱います。)、したがってこの値を使用する必要があります。リポジトリの関連配布ディレクトリ(例:ここにドッカーがあります)またはリポジトリファイルの「Architectures」エントリReleaseここにドッカーがあります)。

ほとんどの場合、とにかくストレージ構成ファイルに「アーキテクチャ」エントリを指定する必要はありません。aptシステムスキーマに一致するスキーマが自動的に取得されます。

「アーキテクチャ」を指定する主な理由は、複数のアーキテクチャとその両方をサポートしていないリポジトリからなるシステムにあります。アーキテクチャがamd64の場合でも、i386ファイルを簡単に見つけることができます。

関連情報