「Reflector」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎Systemd タイマー: 情報を更新)
(Pacman フックの部分を英語版と同期)
42行目: 42行目:
   
 
== 自動化 ==
 
== 自動化 ==
 
=== 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 サービス ===
 
=== Systemd サービス ===
85行目: 65行目:
   
 
ミラーリストをスケジュールより先に更新するには、{{ic|reflector.service}} を [https://wiki.archlinux.jp/index.php/Systemd#.E3.83.A6.E3.83.8B.E3.83.83.E3.83.88.E3.82.92.E4.BD.BF.E3.81.86 start] してください。
 
ミラーリストをスケジュールより先に更新するには、{{ic|reflector.service}} を [https://wiki.archlinux.jp/index.php/Systemd#.E3.83.A6.E3.83.8B.E3.83.83.E3.83.88.E3.82.92.E4.BD.BF.E3.81.86 start] してください。
  +
  +
=== Pacman フック ===
  +
  +
[[pacman フック]]を作成して {{Pkg|pacman-mirrorlist}} が更新されるたびに {{ic|reflector.service}} を実行して {{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 'systemctl start reflector.service; [ -f /etc/pacman.d/mirrorlist.pacnew ] && rm /etc/pacman.d/mirrorlist.pacnew'
  +
</nowiki>}}
  +
  +
パラメータは [[#Systemd サービス]] の説明に従って {{ic|/etc/xdg/reflector/reflector.conf}} で設定します。
  +
  +
これと同様のフックは {{AUR|reflector-mirrorlist-update}} でも提供されています。
   
 
== 参照 ==
 
== 参照 ==

2021年8月25日 (水) 14:48時点における版

関連記事

ReflectorMirrorStatus ページから最新のミラーリストを取得して、ミラーを速度でソートし、/etc/pacman.d/mirrorlist ファイルを上書きするスクリプトです。

インストール

reflector パッケージをインストールしてください。

使用方法

警告:
  • 最初に /etc/pacman.d/mirrorlist ファイルをバックアップしておいてください。
  • Pacman で同期とアップデートをする前に /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

自動化

Systemd サービス

サービスは、/etc/xdg/reflector/reflector.conf で指定されたパラメータを使用し Reflector を実行します。このファイルのデフォルトのオプションは、例として示しています。

たとえば、HTTPS をサポートし、上書き /etc/pacman.d/mirrorlist する最新の5つのミラーを日本とオーストラリアから選択するには、次のコマンドを使用します。

/etc/xdg/reflector/reflector.conf
--save /etc/pacman.d/mirrorlist
--country Japan,Australia
--protocol https
--latest 5

reflector.service有効化 すればミラーリストが起動時に更新されます。

Systemd タイマー

バージョン2020.8 以降、Reflector は systemd/タイマー (reflector.timer) を提供しており、 Reflector#Systemd サービス reflector.service を毎週開始します。スケジュールは reflector.timer編集 することで変更できます。

まず、Reflector#Systemd サービス の説明に従って、設定ファイルを編集します。設定ファイルを更新した後、reflector.timer有効化 してください。

ミラーリストをスケジュールより先に更新するには、reflector.servicestart してください。

Pacman フック

pacman フックを作成して pacman-mirrorlist が更新されるたびに reflector.service を実行して .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 'systemctl start reflector.service; [ -f /etc/pacman.d/mirrorlist.pacnew ] && rm /etc/pacman.d/mirrorlist.pacnew'

パラメータは #Systemd サービス の説明に従って /etc/xdg/reflector/reflector.conf で設定します。

これと同様のフックは reflector-mirrorlist-updateAUR でも提供されています。

参照