「Powerpill」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(en:Powerpillへの転送ページ)
 
(文字列「http://xyne.archlinux.ca/」を「https://xyne.archlinux.ca/」に置換)
 
(他の1人の利用者による、間の2版が非表示)
1行目: 1行目:
  +
[[Category:パッケージ管理]]
#redirect[[en:Powerpill]]
 
  +
[[en:Powerpill]]
  +
[[it:Powerpill]]
  +
[[ru:Powerpill]]
  +
Powerpill は並列・分割ダウンロードをすることで Pacman のダウンロードを高速化する [[Pacman]] ラッパーです。内部的には [[Aria2]] と [[Reflector]] を使ってダウンロードの高速化をしています。[[Rsync]] をサポートしている公式ミラーなら Powerpill で Rsync を使うこともできます。単一のミラーからダウンロードするときに最大帯域を使いきっているユーザーなら効果的です。設定ファイルによって [[Pacserve]] もサポートされており、外部のミラーからダウンロードする前に使用することができます。例: アップデートをしようとして ''pacman -Syu'' を実行したらアップデートできるパッケージが20個、合計で200メガバイトだと表示された場合。pacman でダウンロードする場合、パッケージは1つずつ落ちてきます。powerpill でダウンロードすると、同時にダウンロードされるため数倍は高速です (実際の速度はユーザーの接続速度やサーバーの負担や速度などにより変わります)。
  +
  +
pacman と powerpill でダウンロード速度を比較すると、上記の例なら4倍近く差が出ることもあります。つまり pacman が 300 kB/秒でダウンロードするところを powerpill は平均 1.2 MB/秒でダウンロードできるわけです。
  +
  +
== インストール ==
  +
  +
[[AUR]] の {{AUR|powerpill}} か [https://xyne.archlinux.ca/repos/ Xyne のリポジトリ] から直接インストールできます。
  +
  +
== 設定 ==
  +
  +
Powerpill の設定ファイルは {{ic|/etc/powerpill/powerpill.json}} 一つだけで自由に編集できます。詳しくは ''powerpill.json'' man ページを参照してください。
  +
  +
== Reflector を使う ==
  +
  +
デフォルトで、Powerpill は [[Reflector]] を使って Arch Linux のウェブ API からミラーの最新リストを取得して並行ダウンロードするように設定されています。リストに十分なサーバーがあることを確認することで劇的にダウンロード速度を改善します。
  +
  +
== rsync を使う ==
  +
  +
ミラーによっては Rsync のサポートが利用可能です。有効にすると、単一の接続が使われるようになるため、データベースの同期 ({{ic|pacman -Sy}}) などの操作が圧倒的に高速になります。''rsync'' プロトコル自体もアップデートのチェックやファイルの転送の高速化に一役買っています。
  +
  +
''rsync'' サポートが利用できるミラーを探すときは、''reflector'' を使います:
  +
  +
$ reflector -p rsync
  +
  +
また、''reflector'' を使って最速のサーバーを ''n'' 個 (オプション {{ic|-f}})、最新のサーバーを ''m'' 個 (オプション {{ic|-l}})、抽出することもできます:
  +
  +
$ reflector -p rsync -f ''n'' -l ''m''
  +
  +
使用したいミラーを選択してください。{{ic|-c}} オプションを使うことで国別に選ぶことができます (完全なリストは {{ic|reflector --list-countries}} を見て下さい、名前はクォートで囲みます、大文字と小文字を区別するので注意してください)。完了したら、{{ic|/etc/powerpill/powerpill.json}} を編集して、''rsync'' セクションを見つけて、サーバーフィールドに使いたいサーバーを追加してください。
  +
  +
上記の設定後、可能であれば ''rsync'' サーバーから公式データベースやパッケージが全てダウンロードされるようになります。
  +
  +
== 基本的な使い方 ==
  +
  +
''powerpill'' は ''pacman'' のラッパースクリプトなので、ほとんどの操作は pacman と同じように動作します。
  +
  +
=== システムのアップデート ===
  +
  +
powerpill を使ってシステムをアップデート (インストールされているパッケージの同期と更新) するには、''pacman'' と同じように {{ic|-Syu}} オプションを使います:
  +
  +
# powerpill -Syu
  +
  +
=== パッケージのインストール ===
  +
  +
パッケージとその依存パッケージをインストールするには、''pacman'' と同じように powerpill に {{ic|-S}} オプションを付けます:
  +
  +
# powerpill -S ''package''
  +
  +
''pacman'' と同じように複数のパッケージをインストールすることもできます:
  +
  +
# powerpill -S ''package1'' ''package2'' ''package3''
  +
  +
== トラブルシューティング ==
  +
  +
<repo>.db.sig ファイルについて以下の [err] が表示される場合:
  +
  +
b5d7d7|ERR | 0B/s|/var/lib/pacman/sync/extra.db.sig
  +
899e91|ERR | 0B/s|/var/lib/pacman/sync/multilib.db.sig
  +
8fcc32|ERR | 0B/s|/var/lib/pacman/sync/core.db.sig
  +
85eb3d|ERR | 0B/s|/var/lib/pacman/sync/community.db.sig
  +
  +
リポジトリの署名ファイルが存在しない、以下のように {{ic|/etc/pacman.conf}} に設定されていないのが原因です:
  +
  +
SigLevel = PackageRequired
  +
  +
詳しくは [https://bbs.archlinux.org/viewtopic.php?pid=1254940#p1254940 Arch フォーラムの投稿] を参照。
  +
  +
== 参照 ==
  +
  +
* [https://xyne.archlinux.ca/projects/powerpill/ Powerpill] - 公式プロジェクトページ
  +
* [https://bbs.archlinux.org/viewtopic.php?id=153818 powerpill reborn] - powerpill is back :)

2018年2月6日 (火) 23:43時点における最新版

Powerpill は並列・分割ダウンロードをすることで Pacman のダウンロードを高速化する Pacman ラッパーです。内部的には Aria2Reflector を使ってダウンロードの高速化をしています。Rsync をサポートしている公式ミラーなら Powerpill で Rsync を使うこともできます。単一のミラーからダウンロードするときに最大帯域を使いきっているユーザーなら効果的です。設定ファイルによって Pacserve もサポートされており、外部のミラーからダウンロードする前に使用することができます。例: アップデートをしようとして pacman -Syu を実行したらアップデートできるパッケージが20個、合計で200メガバイトだと表示された場合。pacman でダウンロードする場合、パッケージは1つずつ落ちてきます。powerpill でダウンロードすると、同時にダウンロードされるため数倍は高速です (実際の速度はユーザーの接続速度やサーバーの負担や速度などにより変わります)。

pacman と powerpill でダウンロード速度を比較すると、上記の例なら4倍近く差が出ることもあります。つまり pacman が 300 kB/秒でダウンロードするところを powerpill は平均 1.2 MB/秒でダウンロードできるわけです。

インストール

AURpowerpillAURXyne のリポジトリ から直接インストールできます。

設定

Powerpill の設定ファイルは /etc/powerpill/powerpill.json 一つだけで自由に編集できます。詳しくは powerpill.json man ページを参照してください。

Reflector を使う

デフォルトで、Powerpill は Reflector を使って Arch Linux のウェブ API からミラーの最新リストを取得して並行ダウンロードするように設定されています。リストに十分なサーバーがあることを確認することで劇的にダウンロード速度を改善します。

rsync を使う

ミラーによっては Rsync のサポートが利用可能です。有効にすると、単一の接続が使われるようになるため、データベースの同期 (pacman -Sy) などの操作が圧倒的に高速になります。rsync プロトコル自体もアップデートのチェックやファイルの転送の高速化に一役買っています。

rsync サポートが利用できるミラーを探すときは、reflector を使います:

$ reflector -p rsync

また、reflector を使って最速のサーバーを n 個 (オプション -f)、最新のサーバーを m 個 (オプション -l)、抽出することもできます:

$ reflector -p rsync -f n -l m

使用したいミラーを選択してください。-c オプションを使うことで国別に選ぶことができます (完全なリストは reflector --list-countries を見て下さい、名前はクォートで囲みます、大文字と小文字を区別するので注意してください)。完了したら、/etc/powerpill/powerpill.json を編集して、rsync セクションを見つけて、サーバーフィールドに使いたいサーバーを追加してください。

上記の設定後、可能であれば rsync サーバーから公式データベースやパッケージが全てダウンロードされるようになります。

基本的な使い方

powerpillpacman のラッパースクリプトなので、ほとんどの操作は pacman と同じように動作します。

システムのアップデート

powerpill を使ってシステムをアップデート (インストールされているパッケージの同期と更新) するには、pacman と同じように -Syu オプションを使います:

# powerpill -Syu

パッケージのインストール

パッケージとその依存パッケージをインストールするには、pacman と同じように powerpill に -S オプションを付けます:

# powerpill -S package

pacman と同じように複数のパッケージをインストールすることもできます:

# powerpill -S package1 package2 package3

トラブルシューティング

<repo>.db.sig ファイルについて以下の [err] が表示される場合:

b5d7d7|ERR |       0B/s|/var/lib/pacman/sync/extra.db.sig
899e91|ERR |       0B/s|/var/lib/pacman/sync/multilib.db.sig
8fcc32|ERR |       0B/s|/var/lib/pacman/sync/core.db.sig
85eb3d|ERR |       0B/s|/var/lib/pacman/sync/community.db.sig

リポジトリの署名ファイルが存在しない、以下のように /etc/pacman.conf に設定されていないのが原因です:

SigLevel = PackageRequired

詳しくは Arch フォーラムの投稿 を参照。

参照