「Reflector」の版間の差分
Kusakata.bot (トーク | 投稿記録) 細 (文字列「http://xyne.archlinux.ca/」を「https://xyne.archlinux.ca/」に置換) |
(同期) |
||
5行目: | 5行目: | ||
[[it:Reflector]] |
[[it:Reflector]] |
||
[[ko:Reflector]] |
[[ko:Reflector]] |
||
+ | [[pl:Reflector]] |
||
[[ru:Reflector]] |
[[ru:Reflector]] |
||
[[zh-hans:Reflector]] |
[[zh-hans:Reflector]] |
||
15行目: | 16行目: | ||
== インストール == |
== インストール == |
||
− | + | {{Pkg|reflector}} パッケージを[[インストール]]してください。 |
|
== 使用方法 == |
== 使用方法 == |
||
{{Warning| |
{{Warning| |
||
− | * 最初に {{ic|/etc/pacman.d/mirrorlist}} ファイルをバックアップしておいてください |
+ | * 最初に {{ic|/etc/pacman.d/mirrorlist}} ファイルをバックアップしておいてください。 |
− | # cp -vf /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup |
||
* [[Pacman]] で同期とアップデートをする前に {{ic|/etc/pacman.d/mirrorlist}} には信頼できないエントリが含まれていないようにしてください。}} |
* [[Pacman]] で同期とアップデートをする前に {{ic|/etc/pacman.d/mirrorlist}} には信頼できないエントリが含まれていないようにしてください。}} |
||
28行目: | 28行目: | ||
=== サンプル === |
=== サンプル === |
||
− | ==== 例 1 ==== |
||
− | 以下のコマンドは最初の5つのミラーを取り出して、速度でソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします: |
||
− | # reflector --verbose -l 5 --sort rate --save /etc/pacman.d/mirrorlist |
||
+ | 以下のコマンドは同期が一番新しい5つのミラーを取り出して、速度でソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします: |
||
− | ==== 例 2 ==== |
||
− | 次のコマンドは、最近同期が行われた HTTP サーバー200個を細かく評価して、ダウンロード速度でソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします: |
||
− | # reflector --verbose -l 200 -p http --sort rate --save /etc/pacman.d/mirrorlist |
||
+ | # reflector --verbose --latest 5 --sort rate --save /etc/pacman.d/mirrorlist |
||
− | ==== 例 3 ==== |
||
− | 次のコマンドはアメリカに存在する、最近同期が行われた HTTP サーバー200個を細かく評価して、、ダウンロード速度でソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします: |
||
− | # reflector --verbose --country 'United States' -l 200 -p http --sort rate --save /etc/pacman.d/mirrorlist |
||
+ | 以下のコマンドは、最近同期が行われた HTTP または HTTPS ミラー200個を選択して、ダウンロード速度でソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします: |
||
− | ==== Systemd サービス ==== |
||
+ | |||
+ | # reflector --latest 200 --protocol http --protocol https --sort rate --save /etc/pacman.d/mirrorlist |
||
+ | |||
+ | 以下のコマンドはアメリカに存在する、12時間以内に同期が行われた HTTPS ミラーを選択して、ダウンロード速度でソートし、{{ic|/etc/pacman.d/mirrorlist}} ファイルを上書きします: |
||
+ | |||
+ | # reflector --country 'United States' --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist |
||
+ | |||
+ | === Pacman フック === |
||
+ | |||
+ | pacman フックを作成して {{Pkg|pacman-mirrorlist}} が更新されるたびに ''reflector'' を実行して {{ic|.pacnew}} ファイルを削除するように設定できます: |
||
+ | |||
+ | {{hc|/etc/pacman.d/hooks/mirrorupgrade.hook|<nowiki> |
||
+ | [Trigger] |
||
+ | Operation = Upgrade |
||
+ | Type = Package |
||
+ | Target = pacman-mirrorlist |
||
+ | |||
+ | [Action] |
||
+ | Description = Updating pacman-mirrorlist with reflector and removing pacnew... |
||
+ | When = PostTransaction |
||
+ | Depends = reflector |
||
+ | Exec = /bin/sh -c "reflector --country 'United States' --latest 200 --age 24 --sort rate --save /etc/pacman.d/mirrorlist; rm -f /etc/pacman.d/mirrorlist.pacnew" |
||
+ | </nowiki>}} |
||
+ | ''reflector'' の引数は適宜書き換えてください。 |
||
+ | |||
+ | pacman フックについて詳しくは [[Pacman#フック]]を参照。 |
||
+ | |||
+ | === Systemd サービス === |
||
{{hc|/etc/systemd/system/reflector.service|<nowiki> |
{{hc|/etc/systemd/system/reflector.service|<nowiki> |
||
48行目: | 69行目: | ||
[Service] |
[Service] |
||
Type=oneshot |
Type=oneshot |
||
− | ExecStart=/usr/bin/reflector --protocol |
+ | ExecStart=/usr/bin/reflector --protocol https --latest 30 --number 20 --sort rate --save /etc/pacman.d/mirrorlist |
</nowiki>}} |
</nowiki>}} |
||
− | {{ic| |
+ | {{ic|reflector.service}} を[[起動]]すればミラーリストが更新されます。 |
コンピュータが起動するたびにミラーリストを更新するには以下のサービスを有効にしてください。 |
コンピュータが起動するたびにミラーリストを更新するには以下のサービスを有効にしてください。 |
||
58行目: | 79行目: | ||
[Unit] |
[Unit] |
||
Description=Pacman mirrorlist update |
Description=Pacman mirrorlist update |
||
− | Requires=network.target |
+ | Requires=network-online.target |
− | After=network.target |
+ | After=network-online.target |
[Service] |
[Service] |
||
Type=oneshot |
Type=oneshot |
||
− | ExecStart=/usr/bin/reflector --protocol |
+ | ExecStart=/usr/bin/reflector --protocol https --latest 30 --number 20 --sort rate --save /etc/pacman.d/mirrorlist |
[Install] |
[Install] |
||
− | RequiredBy= |
+ | RequiredBy=multi-user.target |
</nowiki>}} |
</nowiki>}} |
||
{{ic|network.target}} がネットワーク状態を正確に反映するように [https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/ 適当なサービスを有効化] してください。 |
{{ic|network.target}} がネットワーク状態を正確に反映するように [https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/ 適当なサービスを有効化] してください。 |
||
− | + | === Systemd タイマー === |
|
{{ic|reflector.service}} を一週間ごとに実行したい場合: |
{{ic|reflector.service}} を一週間ごとに実行したい場合: |
||
81行目: | 102行目: | ||
[Timer] |
[Timer] |
||
OnCalendar=weekly |
OnCalendar=weekly |
||
+ | RandomizedDelaySec=12h |
||
− | AccuracySec=12h |
||
Persistent=true |
Persistent=true |
||
88行目: | 109行目: | ||
</nowiki>}} |
</nowiki>}} |
||
+ | 作成したら {{ic|reflector.timer}} を[[起動]]してください。 |
||
− | タイマーを起動: |
||
+ | |||
+ | ==== AUR パッケージ ==== |
||
+ | |||
+ | {{AUR|reflector-timer}} パッケージを使って ''reflector'' を毎週実行することもできます。 |
||
+ | |||
+ | デフォルト設定: |
||
+ | {{hc|/usr/share/reflector-timer/reflector.conf|<nowiki> |
||
+ | AGE=6 |
||
+ | COUNTRY=Germany |
||
+ | LATEST=30 |
||
+ | NUMBER=20 |
||
+ | SORT=rate |
||
+ | </nowiki>}} |
||
+ | |||
+ | 設定を上書きするには {{ic|/etc/conf.d/reflector.conf}} を編集: |
||
+ | {{hc|/etc/conf.d/reflector.conf|<nowiki> |
||
+ | COUNTRY=US |
||
+ | </nowiki>}} |
||
+ | インストールしたら {{ic|reflector.timer}} を[[有効化]]してください。 |
||
− | # systemctl enable reflector.timer |
2018年2月14日 (水) 21:49時点における版
Reflector は MirrorStatus ページから最新のミラーリストを取得して、ミラーを速度でソートし、/etc/pacman.d/mirrorlist
ファイルを上書きするスクリプトです。
インストール
使用方法
利用できるコマンドを表示するには、次のコマンドを実行:
# reflector --help
サンプル
以下のコマンドは同期が一番新しい5つのミラーを取り出して、速度でソートし、/etc/pacman.d/mirrorlist
ファイルを上書きします:
# reflector --verbose --latest 5 --sort rate --save /etc/pacman.d/mirrorlist
以下のコマンドは、最近同期が行われた HTTP または HTTPS ミラー200個を選択して、ダウンロード速度でソートし、/etc/pacman.d/mirrorlist
ファイルを上書きします:
# reflector --latest 200 --protocol http --protocol https --sort rate --save /etc/pacman.d/mirrorlist
以下のコマンドはアメリカに存在する、12時間以内に同期が行われた HTTPS ミラーを選択して、ダウンロード速度でソートし、/etc/pacman.d/mirrorlist
ファイルを上書きします:
# reflector --country 'United States' --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
Pacman フック
pacman フックを作成して pacman-mirrorlist が更新されるたびに reflector を実行して .pacnew
ファイルを削除するように設定できます:
/etc/pacman.d/hooks/mirrorupgrade.hook
[Trigger] Operation = Upgrade Type = Package Target = pacman-mirrorlist [Action] Description = Updating pacman-mirrorlist with reflector and removing pacnew... When = PostTransaction Depends = reflector Exec = /bin/sh -c "reflector --country 'United States' --latest 200 --age 24 --sort rate --save /etc/pacman.d/mirrorlist; rm -f /etc/pacman.d/mirrorlist.pacnew"
reflector の引数は適宜書き換えてください。
pacman フックについて詳しくは Pacman#フックを参照。
Systemd サービス
/etc/systemd/system/reflector.service
[Unit] Description=Pacman mirrorlist update [Service] Type=oneshot ExecStart=/usr/bin/reflector --protocol https --latest 30 --number 20 --sort rate --save /etc/pacman.d/mirrorlist
reflector.service
を起動すればミラーリストが更新されます。
コンピュータが起動するたびにミラーリストを更新するには以下のサービスを有効にしてください。
/etc/systemd/system/reflector.service
[Unit] Description=Pacman mirrorlist update Requires=network-online.target After=network-online.target [Service] Type=oneshot ExecStart=/usr/bin/reflector --protocol https --latest 30 --number 20 --sort rate --save /etc/pacman.d/mirrorlist [Install] RequiredBy=multi-user.target
network.target
がネットワーク状態を正確に反映するように 適当なサービスを有効化 してください。
Systemd タイマー
reflector.service
を一週間ごとに実行したい場合:
/etc/systemd/system/reflector.timer
[Unit] Description=Run reflector weekly [Timer] OnCalendar=weekly RandomizedDelaySec=12h Persistent=true [Install] WantedBy=timers.target
作成したら reflector.timer
を起動してください。
AUR パッケージ
reflector-timerAUR パッケージを使って reflector を毎週実行することもできます。
デフォルト設定:
/usr/share/reflector-timer/reflector.conf
AGE=6 COUNTRY=Germany LATEST=30 NUMBER=20 SORT=rate
設定を上書きするには /etc/conf.d/reflector.conf
を編集:
/etc/conf.d/reflector.conf
COUNTRY=US
インストールしたら reflector.timer
を有効化してください。