「Pacserve」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (カテゴリを変更) |
|||
| (2人の利用者による、間の6版が非表示) | |||
| 1行目: | 1行目: | ||
| + | [[Category:インターネットアプリケーション]] |
||
[[Category:パッケージ管理]] |
[[Category:パッケージ管理]] |
||
| − | [[Category:ネットワーク]] |
||
[[en:Pacserve]] |
[[en:Pacserve]] |
||
| + | [[pt:Pacserve]] |
||
| − | [http://xyne.archlinux.ca/projects/pacserve/ Pacserve] を使うことでコンピュータ同士で pacman のパッケージを簡単に共有することができます。インターネット接続の速度が遅い環境で、複数のマシンで Arch Linux を使っている場合に重宝します。 |
||
| + | [https://xyne.archlinux.ca/projects/pacserve/ Pacserve] を使うことでコンピュータ同士で pacman のパッケージを簡単に共有することができます。インターネット接続の速度が遅い環境で、複数のマシンで Arch Linux を使っている場合に重宝します。 |
||
== インストール == |
== インストール == |
||
| + | [[AUR]] から {{AUR|pacserve}} を [[インストール]] します。 |
||
| − | [[AUR]] から手動で {{AUR|pacserve}} をインストールするか、非公式リポジトリの [[非公式ユーザーリポジトリ#xyne-any|xyne-any]], [[非公式ユーザーリポジトリ#xyne-x86_64|xyne-x86_64]], [[非公式ユーザーリポジトリ#xyne-i686|xyne-i686]] のどれかからインストールすることができます。 |
||
| + | {{Tip|このパッケージは [[非公式ユーザーリポジトリ#xyne-x86_64|xyne-x86_64]] の非公式リポジトリにもあります}} |
||
| − | インストールしたら {{ic|pacserve.service}} を[[systemd#ユニットを使う|起動・有効化]]してください。 |
||
| − | + | 最後に {{ic|pacserve.service}} を [[systemd#ユニットを使う|起動・有効化]] します。 |
|
| + | |||
| + | [[iptables]] を使っている場合は、{{ic|pacserve-ports.service}} も起動した方が良いでしょう。その他の [[ファイアウォール]] では、TCP ポート {{ic|15678}} と UDP ポート {{ic|15679}} を開放してください。UDP ポートはマルチキャストトラフィックのみに制限することができます。 |
||
| + | |||
| + | == 設定方法 == |
||
| + | |||
| + | {{ic|pacserve.service}} は、 {{ic|/etc/pacserve/pacserve.service.conf}} の {{ic|PACSERVE_ARGS}} を編集することにより設定することができます。利用可能なオプションを見るには {{ic|pacserve --help}} を実行してください。 |
||
| + | |||
| + | === Avahi === |
||
| + | |||
| + | [[mDNS]] を使って Pacserve をアナウンスしたり発見したりするには、 {{ic|--avahi}} オプションを {{ic|/etc/pacserve/pacserve.service.conf}} の {{ic|PACSERVE_ARGS}} に追加して下さい。 |
||
== スタンドアロンの使用方法 == |
== スタンドアロンの使用方法 == |
||
| 29行目: | 40行目: | ||
SigLevel = Required</nowiki> |
SigLevel = Required</nowiki> |
||
'''<nowiki>Include = /etc/pacman.d/pacserve</nowiki>''' |
'''<nowiki>Include = /etc/pacman.d/pacserve</nowiki>''' |
||
| − | <nowiki>Server = |
+ | <nowiki>Server = https://xyne.archlinux.ca/repos/xyne |
...</nowiki>}} |
...</nowiki>}} |
||
| 41行目: | 52行目: | ||
XferCommand = /usr/bin/wget --timeout=6 --passive-ftp -c -O '%o' '%u' |
XferCommand = /usr/bin/wget --timeout=6 --passive-ftp -c -O '%o' '%u' |
||
| + | |||
| + | === マシンがお互いに見えない === |
||
| + | |||
| + | ピアの検出は {{AUR|python3-threaded_servers}} のバージョンに依存します。 |
||
| + | 異なるバージョンのサービスから来る TCP マルチキャストフレームは破棄されます。 |
||
| + | この場合、root で {{ic|journalctl -u pacserve}} を実行すると、そのような認識できないフレームについて警告を出します。 |
||
| + | このパッケージをアップグレードしてから {{ic|pacserve.service}} を再開してください。 |
||
| + | |||
| + | == 参照 == |
||
| + | |||
| + | * [https://bbs.archlinux.org/viewtopic.php?id=117094 ArchLinux フォーラムの pacserve スレッド] |
||
2023年9月6日 (水) 18:43時点における最新版
Pacserve を使うことでコンピュータ同士で pacman のパッケージを簡単に共有することができます。インターネット接続の速度が遅い環境で、複数のマシンで Arch Linux を使っている場合に重宝します。
目次
インストール
AUR から pacserveAUR を インストール します。
最後に pacserve.service を 起動・有効化 します。
iptables を使っている場合は、pacserve-ports.service も起動した方が良いでしょう。その他の ファイアウォール では、TCP ポート 15678 と UDP ポート 15679 を開放してください。UDP ポートはマルチキャストトラフィックのみに制限することができます。
設定方法
pacserve.service は、 /etc/pacserve/pacserve.service.conf の PACSERVE_ARGS を編集することにより設定することができます。利用可能なオプションを見るには pacserve --help を実行してください。
Avahi
mDNS を使って Pacserve をアナウンスしたり発見したりするには、 --avahi オプションを /etc/pacserve/pacserve.service.conf の PACSERVE_ARGS に追加して下さい。
スタンドアロンの使用方法
pacman の代わりに、pacsrv ラッパーを使ってパッケージのアップデートやインストールなどを行います。pacserve によってパッケージがホストされていれば、LAN から自動的にパッケージをダウンロードします。存在しない場合はインターネット上のミラーから通常通りにダウンロードします。例:
# pacsrv -Syu # pacsrv -S openssh
Pacserve を使うように Pacman を設定
pacserve デーモンを常時実行するようにしてラッパーを使わずに pacman を直接使いたい場合、以下の行を /etc/pacman.conf の各リポジトリの下に追加してください:
Include = /etc/pacman.d/pacserve
以下は Xyne リポジトリの例:
/etc/pacman.conf
... [xyne-x86_64] SigLevel = Required Include = /etc/pacman.d/pacserve Server = https://xyne.archlinux.ca/repos/xyne ...
もしくは (公式ミラーの場合のみ)、Include... 行を Pacman のミラーリストファイルの一番上に挿入したり、pacman.conf-insert_pacserve で pacman.conf ファイルを生成したりすることもできます。
トラブルシューティング
pacman.conf で外部のダウンローダを使っている場合に問題が発生する
wget など外部のダウンローダを使用する場合、ダウンロード時に pacsrv はエラーを返すことがあります。エラーを出さないようにするには、URL (%u) や出力フォーマット文字列 (%o) をシングルクォートで囲うようにしてください:
XferCommand = /usr/bin/wget --timeout=6 --passive-ftp -c -O '%o' '%u'
マシンがお互いに見えない
ピアの検出は python3-threaded_serversAUR のバージョンに依存します。
異なるバージョンのサービスから来る TCP マルチキャストフレームは破棄されます。
この場合、root で journalctl -u pacserve を実行すると、そのような認識できないフレームについて警告を出します。
このパッケージをアップグレードしてから pacserve.service を再開してください。