「ミラー」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(関連記事を修正)
70行目: 70行目:
 
最速のミラーだけを使うのはいいアイデアとは言えません。最速のミラーの更新が遅れることがありえるからです。[[#速度で並び替える|速度で並び替えて]]から[https://www.archlinux.jp/mirrors/status/ ミラーの状態] を見て同期が遅れているミラーを排除するほうが良いでしょう。
 
最速のミラーだけを使うのはいいアイデアとは言えません。最速のミラーの更新が遅れることがありえるからです。[[#速度で並び替える|速度で並び替えて]]から[https://www.archlinux.jp/mirrors/status/ ミラーの状態] を見て同期が遅れているミラーを排除するほうが良いでしょう。
   
=== 速度で並び替える ===
+
=== 速度別一覧 ===
  +
  +
==== 速度で並び替える ====
  +
 
{{Pkg|pacman-contrib}} パッケージに含まれている Bash スクリプト {{ic|/usr/bin/rankmirrors}} で最速のローカルミラーを決定することができます。
 
{{Pkg|pacman-contrib}} パッケージに含まれている Bash スクリプト {{ic|/usr/bin/rankmirrors}} で最速のローカルミラーを決定することができます。
   
86行目: 89行目:
 
{{Ic|rankmirrors -h}} でオプションを全て一覧できます。
 
{{Ic|rankmirrors -h}} でオプションを全て一覧できます。
   
=== ライブミラーリストの取得と順位付け ===
+
==== ライブミラーリストの取得と順位付け ====
   
 
ある国にある最新のミラーのショートリストを作って ''rankmirrors'' に送るには、''Pacman Mirrorlist Generator'' からリストを取得することができます。
 
ある国にある最新のミラーのショートリストを作って ''rankmirrors'' に送るには、''Pacman Mirrorlist Generator'' からリストを取得することができます。
94行目: 97行目:
   
 
{{Tip|この手順は、任意のテキストベースのブラウザ、例えば {{man|1|elinks}} で {{ic|1=https://archlinux.org/mirrorlist}} にナビゲートすることで対話的に行うことができます}}
 
{{Tip|この手順は、任意のテキストベースのブラウザ、例えば {{man|1|elinks}} で {{ic|1=https://archlinux.org/mirrorlist}} にナビゲートすることで対話的に行うことができます}}
 
==== 既存のツール ====
 
   
 
{{App|Rate Mirrors|これはミラーを取得し、古いミラーや同期していないミラーをスキップし、海底ケーブルやインターネット交換に関する情報を使って国間を移動し、高速なミラーを見つけます。そして、各アップデートの前に実行するのに十分な速さです。stdin を通して送られるカスタムミラーリストもサポートします。|https://github.com/westandskif/rate-mirrors|{{AUR|rate-mirrors}} {{AUR|rate-mirrors-bin}}}}
 
{{App|Rate Mirrors|これはミラーを取得し、古いミラーや同期していないミラーをスキップし、海底ケーブルやインターネット交換に関する情報を使って国間を移動し、高速なミラーを見つけます。そして、各アップデートの前に実行するのに十分な速さです。stdin を通して送られるカスタムミラーリストもサポートします。|https://github.com/westandskif/rate-mirrors|{{AUR|rate-mirrors}} {{AUR|rate-mirrors-bin}}}}
103行目: 104行目:
 
公式の [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator] を使うことで簡単にランク付けされたミラーのリストを取得できます。ランク付けには複数の要因が絡んでいるので、ミラーやクライアントの負担によって数値は変わる可能性があります。
 
公式の [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator] を使うことで簡単にランク付けされたミラーのリストを取得できます。ランク付けには複数の要因が絡んでいるので、ミラーやクライアントの負担によって数値は変わる可能性があります。
   
  +
もう 1 つの一般的な代替手段は、次のツールです。
サーバーをランク付けしてミラーリストを自動で生成するスクリプトは複数存在します:
 
   
* [[Reflector]][https://www.archlinux.jp/mirrors/status/ MirrorStatus] ページから最新のミラーリストを取得して、最新のミラーだけを抽出してから、速度でミラをソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします。
+
{{App|[[Reflector]]|[https://archlinux.org/mirrors/status/ MirrorStatus] ページから最新のミラーリストを取得し、速度順にフィルターして並べ替えて、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします。systemd サービスとタイマーによる自動化も提供します。|https://xyne.dev/projects/reflector/|{{pkg|reflector}}}}
* [https://github.com/Gen2ly/armrr armrr] は [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator] から特定の国のミラーリストをダウンロードして、現在のミラーリストにのバックアップを作成します。
 
   
 
== トラブルシューティング ==
 
== トラブルシューティング ==

2023年6月23日 (金) 21:05時点における版

関連記事

このページにはミラーの選択と設定のガイドと現在利用できるミラーのリストがあります。

公式ミラー

公式の Arch Linux ミラーリストは pacman-mirrorlist パッケージから取得されます。最新のミラーリストを取得したい場合、メインサイトの Pacman Mirrorlist Generator ページを使ってください。

Arch ミラーの状態は Mirror Status のページで確認できます。できるかぎり最新となっているミラーを使用することを推奨します。

公式のミラーリストにミラーを追加して欲しい場合は、DeveloperWiki:新しいミラー を見てください。それまでは、このページの下部にある#非公式ミラーリストに追加してください。

IPv6 対応ミラー

Pacman Mirrorlist Generator を使って最新の IPv6 ミラーのリストを確認することができます。

特定のミラーを有効にする

ミラーを有効にするには、/etc/pacman.d/mirrorlist を開いてあなたの国の部分を見て下さい。あなたが使いたいミラーをアンコメントします。

例:

# Japan
# Server = ftp://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch

ミラーの選択を助けるツールについては #ミラーをソートする を見て下さい。

ヒント:
  • 好みの5つのミラーをアンコメントしてミラーリストファイルの一番上に置いて下さい。最初のミラーに問題が起こったとしても他のミラーに移ることができるようになります。ミラーリストのアップデートをマージするのが簡単になるメリットもあります。
  • HTTP の持続的接続があるため、HTTP のミラーの方が FTP よりも高速です。FTP では、パッケージのダウンロードをリクエストするたびに新しい接続を確立する必要があるため、pacman はそのたびに停止してしまいます。

/etc/pacman.conf でミラーを指定することも可能です。[core] リポジトリのデフォルトの設定は以下の通りです:

[core]
Include = /etc/pacman.d/mirrorlist

JAIST のミラーをデフォルトのミラーとして使いたい場合、Include 行の前に次を追加してください:

[core]
Server = ftp://ftp.jaist.ac.jp/pub/Linux/ArchLinux/core/os/$arch
Include = /etc/pacman.d/mirrorlist

pacman は最初にこのミラーに接続を試行するようになります。同じように [testing], [extra], [community] でミラーを設定することができます。

ノート: ミラーを直接 pacman.conf で指定する場合、全てのリポジトリで同じミラーを使うようにしてください。そうしないと、インストールされるパッケージ同士の互換性が失われます。例えば [core] の linux が最新なのに対して [extra] のカーネルモジュールが古いということがありえます。

pacman にパッケージリストを更新させる

/etc/pacman.d/mirrorlist を作成・編集した後は次のコマンドを実行してください:

# pacman -Syyu

2つの --refresh-y フラグを渡すと (リストが最新でも) 強制的に pacman の全てのパッケージリストを更新させます。新しいミラーに変更した時はいつでも pacman -Syy をするようにして下さい。無用な問題を避けることができます。Is -Syy safe? も参照。

ミラーをソートする

パッケージをダウンロードする際、pacman は /etc/pacman.d/mirrorlist に書かれた順番でミラーを使用します。更新頻度と速度でミラーをソートする Reflector を使わない場合、以下の方法で手動でミラーをソートしてください。

最速のミラーだけを使うのはいいアイデアとは言えません。最速のミラーの更新が遅れることがありえるからです。速度で並び替えてからミラーの状態 を見て同期が遅れているミラーを排除するほうが良いでしょう。

速度別一覧

速度で並び替える

pacman-contrib パッケージに含まれている Bash スクリプト /usr/bin/rankmirrors で最速のローカルミラーを決定することができます。

既存の /etc/pacman.d/mirrorlist をバックアップしてください:

# cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup

/etc/pacman.d/mirrorlist.backup を編集して rankmirrors でテストするミラーをアンコメントしてください。

全てのミラーをアンコメントしたいなら以下の sed を実行:

# sed -i 's/^#Server/Server/' /etc/pacman.d/mirrorlist.backup

最後に、ミラーにランク付けをします。-n 6 は最速の6つのミラーを出力することを意味しています:

# rankmirrors -n 6 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist

rankmirrors -h でオプションを全て一覧できます。

ライブミラーリストの取得と順位付け

ある国にある最新のミラーのショートリストを作って rankmirrors に送るには、Pacman Mirrorlist Generator からリストを取得することができます。 以下のコマンドは https プロトコルをサポートする 日本オーストラリア の最新ミラーを取得し、リスト内のサーバーのコメントを解除し、ランク付けして最も速い5つを出力します。

$ curl -s "https://archlinux.org/mirrorlist/?country=JP&country=AU&protocol=https&use_mirror_status=on" | sed -e 's/^#Server/Server/' -e '/^#/d' | rankmirrors -n 5 -
ヒント: この手順は、任意のテキストベースのブラウザ、例えば elinks(1)https://archlinux.org/mirrorlist にナビゲートすることで対話的に行うことができます

Rate Mirrors — これはミラーを取得し、古いミラーや同期していないミラーをスキップし、海底ケーブルやインターネット交換に関する情報を使って国間を移動し、高速なミラーを見つけます。そして、各アップデートの前に実行するのに十分な速さです。stdin を通して送られるカスタムミラーリストもサポートします。

https://github.com/westandskif/rate-mirrors || rate-mirrorsAUR rate-mirrors-binAUR

サーバーサイドのランク付け

公式の Pacman Mirrorlist Generator を使うことで簡単にランク付けされたミラーのリストを取得できます。ランク付けには複数の要因が絡んでいるので、ミラーやクライアントの負担によって数値は変わる可能性があります。

もう 1 つの一般的な代替手段は、次のツールです。

ReflectorMirrorStatus ページから最新のミラーリストを取得し、速度順にフィルターして並べ替えて、/etc/pacman.d/mirrorlist ファイルを上書きします。systemd サービスとタイマーによる自動化も提供します。

https://xyne.dev/projects/reflector/ || reflector

トラブルシューティング

mirrorlist が存在しない場合

error: config file /etc/pacman.d/mirrorlist could not be read: No such file or directory

というエラーに遭遇した場合は、公式サイトから直接ミラーの一覧を取得してください:

# curl -o /etc/pacman.d/mirrorlist https://www.archlinux.org/mirrorlist/all/

上述のとおり好ましいミラーをアンコメントして、次を実行:

# pacman -Syu pacman-mirrorlist

ミラーの動作不良

ミラーが適切に動作しておらず、それが ミラーのステータス ページ に反映されていないことが確実な場合は、ミラーを変更して バグレポートを開いてください。 ミラーの場合、課題は Arch Linux プロジェクト (ログイン ボックスのすぐ下のリストを参照するか、ページで スイッチ を検索してください) タスク タイプ バグレポート、カテゴリ ミラー で開く必要があります。

参照