Ubuntuを使ってると、aptのダウンロードURLを自身のプロバイダに近い場所に設定することはよくあると思います。
先日初めてUbuntu22のArm64版を使ったのですがいつも使ってたミラーサイトをそのまま/etc/apt/sources.list
に設定したら使えなかったので、設定変更に手間取りました。
# サマリ
Ubuntuのaptのミラーは公式の一覧から選択しよう
Arm64など、特殊なアーキテクチャ用のミラーは
.../ubuntu-ports/
から選択しよう日本のミラーサイトだと下記があるようです
# Arm64で使えないミラーサイト
日本語でUbuntuのミラーサイトをググると下記のページがヒットします。
私もよくここからURLを選んで使ってたのですが、Arm64向けのUbuntuで設定してみたらうまくいかず、apt update
さえできなくなってました。
ということで何が違うのか確認してみたのですが、
一番丈夫に記載されている富山大学 (opens new window)のミラーのjammy(22.04)の内容を見てみると、 Contents-amd64.gzとContents-i386.gzはあるのですが、Arm64や他のアーキテクチャはないことがわかります。
# Arm64で使えるミラーサイト
対して、Arm64版Ubuntu22に最初からaptのURLに指定されているports.ubuntu.com (opens new window)の場合、 i386, amd64の代わりに、arm64, armhf, ppc64el, riscv64, s390xなどが配置されています。 要はports指定されているミラーを指定しないといけないということのようです。
幸いなことに、Ubuntu公式の全世界のミラーサイト一覧Official Archive Mirrors for Ubuntu (opens new window)をみると、
日本のミラーサイトの一部にはPorts
の記載があります。ここから選択すればいいわけですね。
どうも、ports指定するミラーサイトのURLのパスは、/ubuntu/
ではなく、ubuntu-ports
になっているようです。
2024/03/01現在、日本にあるミラーサイトでubuntu-portsに対応してるものは下記がありました。
- Nishi Network - Ubuntu ports (opens new window)
- repo.jing.rocks ubuntu-ports (opens new window)
- TI Mirrors Japan - Ubuntu Ports (opens new window)
いずれのサイトもhttp/https両対応しているようなので、セキュリティ要件がなければhttpでもいいんじゃないかと思います。
普通にブラウザでアクセスすると勝手にhttpsになっちゃうと思いますので注意。
# aptのミラーサイト設定
通常のubuntuと同じではありますが、/etc/apt/sources.list
に多数あるURLを差し替えることでミラーサイトに切り替えることができます。
コマンド一発で切り替えるのであれば、下記のコマンドでいいでしょう
sed -i -e "s%http://ports.ubuntu.com/ubuntu-ports/%http://mirror.nishi.network/ubuntu-ports/%g" /etc/apt/sources.list