コンテンツにスキップ

「ミラー」の版間の差分

提供: ArchWiki
削除された内容 追加された内容
Pkg/AUR テンプレートの更新
Kgx (トーク | 投稿記録)
関連記事を追加
 
(5人の利用者による、間の14版が非表示)
6行目: 6行目:
[[fr:Miroirs]]
[[fr:Miroirs]]
[[it:Mirrors]]
[[it:Mirrors]]
[[pt:Mirrors]]
[[ru:Mirrors]]
[[ru:Mirrors]]
[[zh-hans:Mirrors]]
[[zh-hans:Mirrors]]
{{Related articles start}}
{{Related articles start}}
{{Related|非公式ミラー}}
{{Related|pacman}}
{{Related|pacman}}
{{Related|Reflector}}
{{Related|DeveloperWiki:新しいミラー}}
{{Related articles end}}
{{Related articles end}}


19行目: 21行目:
公式の Arch Linux ミラーリストは {{pkg|pacman-mirrorlist}} パッケージから取得されます。最新のミラーリストを取得したい場合、メインサイトの [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator] ページを使ってください。
公式の Arch Linux ミラーリストは {{pkg|pacman-mirrorlist}} パッケージから取得されます。最新のミラーリストを取得したい場合、メインサイトの [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator] ページを使ってください。


Arch ミラーの状態は [https://www.archlinuxjp.org/mirrors/status/ Mirror Status] のページで確認できます。できるかぎり最新となっているミラーを使用することを推奨します。
Arch ミラーの状態は [https://www.archlinux.jp/mirrors/status/ Mirror Status] のページで確認できます。できるかぎり最新となっているミラーを使用することを推奨します。


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


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


64行目: 66行目:
2つの {{Ic|--refresh}} や {{Ic|-y}} フラグを渡すと (リストが最新でも) 強制的に pacman の全てのパッケージリストを更新させます。''新しいミラーに変更した時はいつでも'' {{Ic|pacman -Syy}} をするようにして下さい。無用な問題を避けることができます。[https://bbs.archlinux.org/viewtopic.php?id=163124 Is -Syy safe?] も参照。
2つの {{Ic|--refresh}} や {{Ic|-y}} フラグを渡すと (リストが最新でも) 強制的に pacman の全てのパッケージリストを更新させます。''新しいミラーに変更した時はいつでも'' {{Ic|pacman -Syy}} をするようにして下さい。無用な問題を避けることができます。[https://bbs.archlinux.org/viewtopic.php?id=163124 Is -Syy safe?] も参照。


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


最速のミラーだけを使うのはいいアイデアとは言えません。最速のミラーの更新が遅れることがありえるからです。[[#速度で並び替える|速度で並び替えて]]から[https://www.archlinuxjp.org/mirrors/status/ ミラーの状態] を見て同期が遅れているミラーを排除するほうが良いでしょう。
最速のミラーだけを使うのはいいアイデアとは言えません。最速のミラーの更新が遅れることがありえるからです。[[#速度で並び替える|速度で並び替えて]]から[https://www.archlinux.jp/mirrors/status/ ミラーの状態] を見て同期が遅れているミラーを排除するほうが良いでしょう。


===速度で並び替える===
=== 速度別一覧 ===

{{Pkg|pacman}} パッケージに含まれている Bash スクリプト {{ic|/usr/bin/rankmirrors}} で最速のローカルミラーを決定することができます。
==== 速度で並び替える ====

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


既存の {{ic|/etc/pacman.d/mirrorlist}} をバックアップしてください:
既存の {{ic|/etc/pacman.d/mirrorlist}} をバックアップしてください:
85行目: 90行目:
{{Ic|rankmirrors -h}} でオプションを全て一覧できます。
{{Ic|rankmirrors -h}} でオプションを全て一覧できます。


=== サーバーサドのンク付け ===
==== ブミーリストの取得と順位付け ====


ある国にある最新のミラーのショートリストを作って ''rankmirrors'' に送るには、''Pacman Mirrorlist Generator'' からリストを取得することができます。
公式の [https://www.archlinux.org/mirrorlist/ 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 -
サーバーをランク付けしてミラーリストを自動で生成するスクリプトは複数存在します:


{{Tip|この手順は、任意のテキストベースのブラウザ、例えば {{man|1|elinks}} で {{ic|1=https://archlinux.org/mirrorlist}} にナビゲートすることで対話的に行うことができます}}
* [[Reflector]] は [https://www.archlinuxjp.org/mirrors/status/ MirrorStatus] ページから最新のミラーリストを取得して、最新のミラーだけを抽出してから、速度でミラーをソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします。
* {{AUR|update-pacman-mirrorlist}}{{Broken package link|パッケージが存在しません}} は指定されたランキングサーバー (デフォルトでは公式の [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator]) からミラーリストをダウンロードするスクリプトです。ユーザーが手動で操作しなくても自動的にミラーリストを管理できる [[Systemd/タイマー|systemd タイマー]]も付属しています。
* [https://github.com/Gen2ly/armrr armrr] は [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator] から特定の国のミラーリストをダウンロードして、現在のミラーリストにのバックアップを作成します。


{{App|Rate Mirrors|これはミラーを取得し、古いミラーや同期していないミラーをスキップし、海底ケーブルやインターネット交換に関する情報を使って国間を移動し、高速なミラーを見つけます。そして、各アップデートの前に実行するのに十分な速さです。stdin を通して送られるカスタムミラーリストもサポートします。|https://github.com/westandskif/rate-mirrors|{{AUR|rate-mirrors}} {{AUR|rate-mirrors-bin}}}}
=== 特定の国のミラーだけを抽出する ===


=== サーバーサイドのランク付け ===
毎回、ミラーの速度をテストするかわりに特定の国もミラーリストだけを自動で生成するというのもありです。{{Pkg|pacman-mirrorlist}} をアップデートした後に {{ic|mirrorlist.pacnew}} が存在するとき、以下を実行することで日本のミラーだけをリストアップできます:


公式の [https://www.archlinux.org/mirrorlist/ Pacman Mirrorlist Generator] を使うことで簡単にランク付けされたミラーのリストを取得できます。ランク付けには複数の要因が絡んでいるので、ミラーやクライアントの負担によって数値は変わる可能性があります。
{{bc|<nowiki>Cnt="Japan";

awk -v GG=$Cnt '{if(match($0,GG) != "0")AA="1";if(AA == "1"){if( length($2) != "0" )print substr($0,2) ;else AA="0"} }' \
もう 1 つの一般的な代替手段は、次のツールです。
/etc/pacman.d/mirrorlist.pacnew</nowiki>}}

{{App|[[Reflector]]|[https://archlinux.org/mirrors/status/ MirrorStatus] ページから最新のミラーリストを取得し、速度順にフィルターして並べ替えて、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします。systemd サービスとタイマーによる自動化も提供します。|https://xyne.dev/projects/reflector/|{{pkg|reflector}}}}


== トラブルシューティング ==
== トラブルシューティング ==


=== mirrorlist が存在しない場合 ===
ありえないケースですが、もしあなたがミラーを設定しておらず {{Ic|pacman-mirrorlist}} をインストールしていない場合は、次のコマンドを実行してください:

error: config file /etc/pacman.d/mirrorlist could not be read: No such file or directory
というエラーに遭遇した場合は、公式サイトから直接ミラーの一覧を取得してください:
# curl -o /etc/pacman.d/mirrorlist <nowiki>https://www.archlinux.org/mirrorlist/all/</nowiki>
# curl -o /etc/pacman.d/mirrorlist <nowiki>https://www.archlinux.org/mirrorlist/all/</nowiki>


111行目: 120行目:
# pacman -Syu pacman-mirrorlist
# pacman -Syu pacman-mirrorlist


=== ミラーの動作不良 ===
{{ic|$arch}} 変数が定義されていないというエラーが表示されたら、{{ic|/etc/pacman.conf}} に以下を追加してください:
Architecture = x86_64

{{Note|{{ic|Architecture}} 変数には {{Ic|auto}} や {{Ic|i686}} といった値も使うことができます。}}

==非公式ミラー==
以下のミラーは {{ic|/etc/pacman.d/mirrorlist}} に''記載されていません''。

===オーストリア===
*http://gd.tuwien.ac.at/opsys/linux/archlinux/ - ''ウィーン工科大学''
*ftp://gd.tuwien.ac.at/opsys/linux/archlinux/

=== カナダ ===
*https://na.mirrors.coltondrg.com/archlinux/

===中国===
'''Telecom'''
*http://mirror.bit.edu.cn/archlinux/ - ''北京理工大学''
*http://mirrors.aliyun.com/archlinux/ - ''Alibaba''

'''Unicom'''
*http://mirrors.sohu.com/archlinux/
*http://mirrors.yun-idc.com/archlinux/

'''Cernet'''
*http://mirrors.geekpie.org/archlinux/ - ''Geek Pie Association @ 上海科技大学''
*http://ftp.sjtu.edu.cn/archlinux/ - ''上海交通大学'' (旧)
*https://mirrors.sjtug.org/archlinux/ - ''上海交通大学 Linux ユーザーグループ''
*http://mirrors.4.tuna.tsinghua.edu.cn/archlinux/ ''(ipv4 only)''
*http://mirrors.6.tuna.tsinghua.edu.cn/archlinux/ ''(ipv6 only)''
*http://mirror.lzu.edu.cn/archlinux/ - ''蘭州大学''

===フランス===
*http://delta.archlinux.fr/ - ''差分パッケージに対応。{{Pkg|xdelta3}} を実行する必要あり。''
*https://eu.mirrors.coltondrg.com/archlinux/

===ドイツ===
*http://ftp.u-tx.net/archlinux/
*ftp://ftp.u-tx.net/archlinux/

===インドネシア===
*http://kambing.ui.ac.id/archlinux/

=== イラン ===
*http://mirror.yazd.ac.ir/arch/

=== イタリア ===
*http://mi.mirror.garr.it/mirrors/archlinux/

===日本===
*http://ftp.nara.wide.ad.jp/pub/Linux/archlinux/ - ''奈良先端科学技術大学院大学''
*http://ftp.kddilabs.jp/Linux/packages/archlinux/
*http://srv2.ftp.ne.jp/Linux/packages/archlinux/
*http://mirror.archlinuxjp.org/

===マレーシア===
*http://mirror.oscc.org.my/archlinux/

===ニュージーランド===
*http://mirror.ece.auckland.ac.nz/archlinux/ ''NZ only''

===ポーランド===
*ftp://ftp.icm.edu.pl/pub/Linux/dist/archlinux/ - ICM UW
*http://ftp.icm.edu.pl/pub/Linux/dist/archlinux/ - ICM UW
*rsync://ftp.icm.edu.pl/pub/Linux/dist/archlinux/ - ICM UW

===ロシア===
*http://mirrors.krasinfo.ru/archlinux/ - ''Krasnoyarsk, Classica-Service Ltd''

===南アフリカ===
*http://ftp.leg.uct.ac.za/pub/linux/arch/ - ''ケープタウン大学''
*ftp://ftp.leg.uct.ac.za/pub/linux/arch/
*http://mirror.ufs.ac.za/archlinux/ - ''ザ・フリーステイト大学''
*ftp://mirror.ufs.ac.za/os/linux/distros/archlinux/
*http://archlinux.mirror.ac.za - ''TENET - Tertiary Education and Research Network of South Africa''
*ftp://archlinux.mirror.ac.za

=== スウェーデン ===
*http://foss.dhyrule.se/linux/archlinux/
*ftp://foss.dhyrule.se/linux/archlinux/

=== タイ ===
* http://mirror1.ku.ac.th/archlinux/


ミラーが適切に動作しておらず、それが [https://www.archlinux.jp/mirrors/status/ ミラーのステータス ページ] に反映されていないことが確実な場合は、ミラーを変更して [[バグ報告ガイドライン#バグを開く|バグレポートを開いてください。]] ミラーの場合、課題は ''Arch Linux'' プロジェクト (ログイン ボックスのすぐ下のリストを参照するか、ページで ''スイッチ'' を検索してください) タスク タイプ ''バグレポート''、カテゴリ ''ミラー'' で開く必要があります。
===アメリカ合衆国===
* http://mirror.clarkson.edu/archlinux/
* http://mirror.pointysoftware.net/archlinux/
* http://mirror.ziemer.bz/archlinux


===Sourceforge (旧 ISO)===
== 参照 ==
* [https://github.com/archlinux/archweb/blob/master/mirrors/views/mirrorlist.py GitHub archweb mirrorlist.py] - archweb ミラーリストジェネレータのソースコード
* http://sourceforge.net/projects/archlinux/files/ - ''ISO ファイルのみ。2006年以降のリリースは含まれていません。古い ISO を入手するのに使って下さい。''

2024年1月14日 (日) 22:38時点における最新版

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

公式ミラー

公式の 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 プロジェクト (ログイン ボックスのすぐ下のリストを参照するか、ページで スイッチ を検索してください) タスク タイプ バグレポート、カテゴリ ミラー で開く必要があります。

参照