「Aria2」の版間の差分
(→サンプル aria2.conf: ノートを翻訳) |
(→インストール: 同期) |
||
| (同じ利用者による、間の6版が非表示) | |||
| 1行目: | 1行目: | ||
[[Category:ダウンロードユーティリティ]] |
[[Category:ダウンロードユーティリティ]] |
||
[[Category:BitTorrent]] |
[[Category:BitTorrent]] |
||
| − | [[fa:Aria2]] |
||
[[en:Aria2]] |
[[en:Aria2]] |
||
| − | [[it:Aria2]] |
||
[[ru:Aria2]] |
[[ru:Aria2]] |
||
| + | [[zh-hans:Aria2]] |
||
プロジェクトの [http://aria2.sourceforge.net/ ホームページ] より: |
プロジェクトの [http://aria2.sourceforge.net/ ホームページ] より: |
||
: ''aria2 は軽量なマルチプロトコル&マルチソースのコマンドラインダウンロードユーティリティです。[[Wikipedia:HTTP|HTTP]]/[[Wikipedia:HTTPS|HTTPS]], [[Wikipedia:FTP|FTP]], [[Wikipedia:BitTorrent_(protocol)|BitTorrent]], [[Wikipedia:Metalink|Metalink]] をサポートしています。aria2 はビルトインの [[Wikipedia:JSON-RPC|JSON-RPC]] と [[Wikipedia:XML-RPC|XML-RPC]] インターフェイスで操作することができます。'' |
: ''aria2 は軽量なマルチプロトコル&マルチソースのコマンドラインダウンロードユーティリティです。[[Wikipedia:HTTP|HTTP]]/[[Wikipedia:HTTPS|HTTPS]], [[Wikipedia:FTP|FTP]], [[Wikipedia:BitTorrent_(protocol)|BitTorrent]], [[Wikipedia:Metalink|Metalink]] をサポートしています。aria2 はビルトインの [[Wikipedia:JSON-RPC|JSON-RPC]] と [[Wikipedia:XML-RPC|XML-RPC]] インターフェイスで操作することができます。'' |
||
| 10行目: | 9行目: | ||
== インストール == |
== インストール == |
||
| − | {{Pkg|aria2}} パッケージをインストールしてください。 |
+ | {{Pkg|aria2}} パッケージを [[インストール]] してください。 |
| − | aria2 を[[デーモン]]として使 |
+ | aria2 を [[デーモン]] として使用するには、[[#aria2 をデーモンとして使用する|systemd ユーザーユニット]] を作成します。 |
| − | |||
| − | == 実行 == |
||
| − | |||
| − | aria2 パッケージの実行ファイルの名前は {{ic|aria2c}} です。後方互換性を保つために昔の名前がそのまま残っています。 |
||
== 設定 == |
== 設定 == |
||
| 32行目: | 27行目: | ||
{{ic|$XDG_CONFIG_HOME/aria2/aria2.conf}} が存在せず設定オプションの管理を簡単にしたい場合: |
{{ic|$XDG_CONFIG_HOME/aria2/aria2.conf}} が存在せず設定オプションの管理を簡単にしたい場合: |
||
$ touch $XDG_CONFIG_HOME/aria2/aria2.conf |
$ touch $XDG_CONFIG_HOME/aria2/aria2.conf |
||
| − | |||
| − | === サンプル .bash_alias === |
||
| − | |||
| − | alias down='aria2c --conf-path=${HOME}/.aria2/aria2.conf' |
||
| − | alias rapid='aria2c --conf-path=/file/aria2.rapidshare' |
||
=== サンプル aria2.conf === |
=== サンプル aria2.conf === |
||
| 56行目: | 46行目: | ||
{{Note|上記の aria2.conf の例では、$ HOME 変数が誤って使用されている可能性があります。一部のユーザーは、 aria2 作業ディレクトリに個別の $ {HOME} サブディレクトリを明示的に作成する中括弧の構文を報告しています。このようなディレクトリは、 bash が $ HOME 環境変数と見なすため |
{{Note|上記の aria2.conf の例では、$ HOME 変数が誤って使用されている可能性があります。一部のユーザーは、 aria2 作業ディレクトリに個別の $ {HOME} サブディレクトリを明示的に作成する中括弧の構文を報告しています。このようなディレクトリは、 bash が $ HOME 環境変数と見なすため |
||
| − | このようなディレクトリを辿るのは難しいかもしれません。現時点では、 aria 2.conf で絶対パス |
+ | このようなディレクトリを辿るのは難しいかもしれません。現時点では、 aria 2.conf で絶対パスを使用することをお勧めします。}} |
==== オプションの説明 ==== |
==== オプションの説明 ==== |
||
| 87行目: | 77行目: | ||
==== 補足 ==== |
==== 補足 ==== |
||
| − | + | <sup>1</sup> {{ic|1=file-allocation=falloc}}: ext4 (エクステントをサポート), btrfs, xfs などのファイルシステムは巨大なファイル (GB) がほぼ即座に割り当てられるため推奨されます。ext3 などのレガシーファイルシステムでは falloc を使用しないでください。prealloc は、aria2 プロセスがダウンロードに進むのをロックしている間、標準の割り当てとほぼ同じ時間を消費するためです。 |
|
{{Tip|設定オプションの完全なリストは {{ic|<nowiki>aria2c --help=#all</nowiki>}} や aria2 の [[man ページ]]を見て下さい。}} |
{{Tip|設定オプションの完全なリストは {{ic|<nowiki>aria2c --help=#all</nowiki>}} や aria2 の [[man ページ]]を見て下さい。}} |
||
| 219行目: | 209行目: | ||
=== pacman XferCommand === |
=== pacman XferCommand === |
||
| + | こちらを参照 [[pacman/ヒントとテクニック#aria2]] |
||
| − | aria2 は [[pacman]] パッケージマネージャのデフォルトのダウンロードマネージャとして使うことができます。詳しくは ArchWiki の [[pacman のパフォーマンスの向上]]を見て下さい。 |
||
| − | |||
| − | === カスタム最小ビルド === |
||
| − | |||
| − | 不必要な機能やプロトコルを削除することでアプリケーションのレスポンスを改善することができます。カスタムビルドで外部ライブラリを削除することで更なる向上が望めます。利用可能なオプションは {{ic|./configure --help}} で確認できます。詳しくは [[Arch Build System]] のページを見て下さい。 |
||
| − | |||
| − | === システムの起動時に aria2c を起動 === |
||
| − | |||
| − | 以下の [[systemd]] サービスファイルを保存して、ユーザー名と設定パスを必要に応じて修正してください。デーモン化するように設定がなっていることを確認してください ({{ic|1=daemon=true}} を使用)。 |
||
| − | |||
| − | {{hc|/etc/systemd/system/aria2c.service|<nowiki> |
||
| − | [Unit] |
||
| − | Description=Aria2c download manager |
||
| − | After=network.target |
||
| − | |||
| − | [Service] |
||
| − | User=aria2 |
||
| − | Type=forking |
||
| − | ExecStart=/usr/bin/aria2c --conf-path=/home/aria2/.aria2/aria2.daemon |
||
| − | |||
| − | [Install] |
||
| − | WantedBy=multi-user.target |
||
| − | </nowiki>}} |
||
| − | |||
| − | 作成したらサービスを[[systemd#ユニットを使う|起動・有効化]]してください。 |
||
=== ユーザーエージェントの変更 === |
=== ユーザーエージェントの変更 === |
||
| 253行目: | 219行目: | ||
{{ic|-UMozilla/5.0}} など、何でも好きに設定できます。 |
{{ic|-UMozilla/5.0}} など、何でも好きに設定できます。 |
||
| − | === makepkg で |
+ | === makepkg で aria2 を使う === |
| − | curl でソースファイルをダウンロードする代わりに |
+ | {{Pkg|curl}} でソースファイルをダウンロードする代わりに aria2 を使うことができます。以下のように {{ic|DLAGENTS}} 変数を変更してください: |
{{hc|/etc/makepkg.conf|2= |
{{hc|/etc/makepkg.conf|2= |
||
[...] |
[...] |
||
| − | DLAGENTS=('ftp::/usr/bin/aria2c -UWget -s4 %u -o %o' |
+ | DLAGENTS=('ftp::/usr/bin/aria2c -UWget -s4 -x4 %u -o %o --follow-metalink=mem' |
| − | 'http::/usr/bin/aria2c -UWget -s4 %u -o %o' |
+ | 'http::/usr/bin/aria2c -UWget -s4 -x4 %u -o %o --follow-metalink=mem' |
| − | 'https::/usr/bin/aria2c -UWget -s4 %u -o %o' |
+ | 'https::/usr/bin/aria2c -UWget -s4 -x4 %u -o %o --follow-metalink=mem' |
| − | 'rsync::/usr/bin/rsync -z %u %o' |
+ | 'rsync::/usr/bin/rsync --no-motd -z %u %o' |
'scp::/usr/bin/scp -C %u %o') |
'scp::/usr/bin/scp -C %u %o') |
||
[...] |
[...] |
||
}} |
}} |
||
| + | {{Note|{{ic|-UWget}} オプションを使用して、ユーザーエージェントを Wget に変更してください。これにより、サイトがユーザーエージェントに基づいてリクエストをフィルタリングし、ユーザーがアクセスに使用するツールによって異なるレスポンスを提供する場合に問題が発生するのを防ぐことができます。aria2 はあまり知られていないダウンローダーであるため、サイトによってはダウンローダーではなくブラウザとして認識される場合があります。このため、ユーザーエージェントを Wget に変更することで、ほとんどの場合で問題が解決する可能性があります。 |
||
| − | {{Note|Use the {{ic|-UWget}} option to change the user agent to Wget. It may prevent problems when downloading from sites that filters the requests based on the user agent to provide different responses on what the users uses to access the URL. Since Aria2 is a lesser known downloader it may be recognized by the site as a browser instead of a downloader, so changing the user agent to Wget may fix it in most cases}} |
||
| + | また、{{ic|1=--follow-metalink=mem}} オプションを使用して、メタリンクを別ファイルとしてダウンロードし、ソースチェックサムプロセスが失敗するのを防ぎます。}} |
||
| + | |||
| + | === aria2 をデーモンとして使用する === |
||
| + | |||
| + | aria2 をデーモンとして使用するには、[[systemd/ユーザー#ユーザーユニットを書く|systemd/ユーザーユニットの書き込み]] を実行する必要があります。例えば: |
||
| + | |||
| + | {{hc|~/.config/systemd/user/aria2cd.service|2= |
||
| + | [Unit] |
||
| + | Description=aria2 Daemon |
||
| + | |||
| + | [Service] |
||
| + | ExecStart=/usr/bin/aria2c --conf-path=''/path/to/conf'' |
||
| + | |||
| + | [Install] |
||
| + | WantedBy=default.target |
||
| + | }} |
||
| + | |||
| + | [[#サンプル aria2.daemon]] で設定ファイルの例を示します。 |
||
| + | |||
| + | === aria2 で torrent をシードする === |
||
| + | |||
| + | すでにダウンロードされている torrent をシードするには、{{ic|--check-integrity}} オプションを使用します: |
||
| + | |||
| + | $ aria2c --check-integrity=true --seed-ratio=0.0 --dir="/path/to/iso" "/path/to/torrent/archlinux-2020.03.01-x86_64.iso.torrent" |
||
| + | |||
| + | {{ic|1=--seed-ratio=0.0}} を指定すると、ファイルが永久にシードされます。 |
||
== 参照 == |
== 参照 == |
||
2025年1月22日 (水) 04:24時点における最新版
プロジェクトの ホームページ より:
- aria2 は軽量なマルチプロトコル&マルチソースのコマンドラインダウンロードユーティリティです。HTTP/HTTPS, FTP, BitTorrent, Metalink をサポートしています。aria2 はビルトインの JSON-RPC と XML-RPC インターフェイスで操作することができます。
インストール
aria2 を デーモン として使用するには、systemd ユーザーユニット を作成します。
設定
aria2.conf
aria2 はデフォルトで $XDG_CONFIG_HOME/aria2/aria2.conf を確認してグローバルな設定オプションを設定します。--conf-path スイッチを使うことで挙動を変更することが可能です:
- 設定ファイル
/file/aria2.rapidshareに指定したオプションをつかってaria2.example.rarをダウンロード
$ aria2c --conf-path=/file/aria2.rapidshare http://rapidshare.com/files/12345678/aria2.example.rar
$XDG_CONFIG_HOME/aria2/aria2.conf が存在していて /file/aria2.rapidshare で指定したオプションを優先させたい場合、--no-conf スイッチをコマンドに付け加えます:
- デフォルトの設定ファイルを使用せず設定ファイル
/file/aria2.rapidshareに指定したオプションを使ってaria2.example.rarをダウンロード
$ aria2c --no-conf --conf-path=/file/aria2.rapidshare http://rapidshare.com/files/12345678/aria2.example.rar
$XDG_CONFIG_HOME/aria2/aria2.conf が存在せず設定オプションの管理を簡単にしたい場合:
$ touch $XDG_CONFIG_HOME/aria2/aria2.conf
サンプル aria2.conf
continue
dir=${HOME}/Desktop
file-allocation=none
input-file=${HOME}/.aria2/input.conf
log-level=warn
max-connection-per-server=4
min-split-size=5M
on-download-complete=exit
上記の設定は以下を実行するのと同じです:
$ aria2c dir=${HOME}/Desktop file-allocation=none input-file=${HOME}/.aria2/input.conf on-download-complete=exit log-level=warn FILE
オプションの説明
continue- コントロールファイルが存在する場合に部分的にダウンロードされたファイルからダウンロードを続行する。
dir=${HOME}/Desktop- ダウンロードしたファイルを
~/Desktopに保存。 file-allocation=none- ダウンロードを始める前にディスク容量を予め予約しない (デフォルト: prealloc) 1。
input-file=${HOME}/.aria2/input.conf~/.aria2/input.confに書かれた、タブあるいは改行で区切られた URI のリストをダウンロード。log-level=warn- ログレベルを警告やエラーだけを出力するように設定 (デフォルト: debug)。
max-connection-per-server=4- サーバーごとの接続の最大数を4に設定 (デフォルト: 1)。
min-split-size=5M- 容量が 2*5MB = 10MB よりも大きい場合にファイルを分割 (デフォルト: 20M)。
on-download-complete=exit- ダウンロードセッションが完了したら
exitコマンドを実行してシェルを終了。
サンプル入力ファイル #1
- 2つのソースから
aria2-1.10.0.tar.bz2を~/Desktopにダウンロードしてaria2-1.10.0.tar.bz2にマージ
http://aria2.net/files/stable/aria2-1.10.0/aria2-1.10.0.tar.bz2 https://sourceforge.net/projects/aria2/files/stable/aria2-1.10.0/aria2-1.10.0.tar.bz2
サンプル入力ファイル #2
aria2-1.9.5.tar.bz2をダウンロードしてaria2.old.tar.bz2として/file/oldに保存aria2-1.10.0.tar.bz2をダウンロードしてaria2.new.tar.bz2として~/Desktopに保存
http://aria2.net/files/stable/aria2-1.9.5/aria2-1.9.5.tar.bz2 dir=/file/old out=aria2.old.tar.bz2 http://aria2.net/files/stable/aria2-1.10.0/aria2-1.10.0.tar.bz2 out=aria2.new.tar.bz2
補足
1 file-allocation=falloc: ext4 (エクステントをサポート), btrfs, xfs などのファイルシステムは巨大なファイル (GB) がほぼ即座に割り当てられるため推奨されます。ext3 などのレガシーファイルシステムでは falloc を使用しないでください。prealloc は、aria2 プロセスがダウンロードに進むのをロックしている間、標準の割り当てとほぼ同じ時間を消費するためです。
http-user=USER_NAME http-passwd=PASSWORD allow-overwrite=true dir=/file/Downloads file-allocation=falloc enable-http-pipelining=true input-file=/file/input.rapidshare log-level=error max-connection-per-server=2 summary-interval=120
オプションの説明
http-user=USER_NAME- パスワードで保護されているログインをするために HTTP ユーザー名を USER_NAME に設定。全ての URI に適用されます。
http-passwd=PASSWORD- パスワードで保護されているログインをするために HTTP パスワードを PASSWORD に設定。全ての URI に適用されます。
allow-overwrite=true- コントロールファイルが存在しない場合にダウンロードをやり直す (デフォルト: false)。
dir=/file/Downloads- ダウンロードしたファイルを
/file/Downloadsに保存。 file-allocation=falloc- posix_fallocate() を呼び出してダウンロードが始まる前にディスク容量を確保 (デフォルト: prealloc)。
enable-http-pipelining=true- HTTP/1.1 パイプラインを有効にしてネットワークの遅延と負担を減らす (デフォルト: false)。
input-file=/file/input.rapidshare/file/input.rapidshareに指定された、タブあるいは改行で区切られた URI のリストをダウンロード。log-level=error- エラーだけを出力するようにログレベルを設定 (デフォルト: debug)。
max-connection-per-server=2- サーバーごとの接続の最大数を2に設定 (デフォルト: 1)。
summary-interval=120- 120秒ごとにダウンロードの進捗を出力 (デフォルト: 60) 3。
補足
aria2.rapidshareにユーザー名とパスワードを記述するので、ファイルのパーミッションは 600 などに設定することを推奨します:
$ cd /file $ chmod 600 /file/aria2.rapidshare $ ls -l total 128M -rw------- 1 arch users 167 Aug 20 00:00 aria2.rapidshare
- 3
summary-interval=0 - ダウンロードの進捗の出力を控えめにすることで全体のパフォーマンスを改善できます。ログは
log-levelオプションで指定した値に合わせて出力されます。
サンプル aria2.bittorrent
bt-seed-unverified max-overall-upload-limit=1M max-upload-limit=128K seed-ratio=5.0 seed-time=240
オプションの説明
bt-seed-unverified=false- シードする前にファイルのハッシュを確認しない (デフォルト: true)。
max-overall-upload-limit=1M- アップロードの最大速度を 1MB/秒に設定 (デフォルト: 0)。
max-upload-limit=128K- torrent ごとのアップロードの最大速度を 128K/秒に設定 (デフォルト: 0)。
seed-ratio=5.0- 共有比が 5.0 に達するまで完了した torrent をシードする (デフォルト: 1.0)。
seed-time=240- 240分間は完了した torrent をシードする。
サンプル aria2.daemon
以下の設定を使って Aria2 をサービスとして起動することができます。下に記載しているフロントエンドと組み合わせて使うこともできます。rpc-user と rpc-pass は非推奨となっていますが、ほとんどのフロントエンドはまだ新しい認証に移植されていません。ユーザーやパスワード、Download ディレクトリは忘れずに変更してください。
continue daemon=true dir=/home/aria2/Downloads file-allocation=falloc log-level=warn max-connection-per-server=4 max-concurrent-downloads=3 max-overall-download-limit=0 min-split-size=5M enable-http-pipelining=true enable-rpc=true rpc-listen-all=true rpc-user=rpcuser rpc-passwd=rpcpass
フロントエンド
ウェブ UI
- YaaW — HTML/CSS/Javascirpt だけで書かれた Yet Another Aria2 ウェブフロントエンド。
- Webui — aria2 の Html フロントエンド。
- aria2rpc —
aria2cのリモートインスタンスに接続するコマンドラインツール。aria2cがインストールされている場合/usr/share/doc/aria2/xmlrpc/aria2rpc下にあります。
他の UI
- aria2fe — CLI ベースの aria2 ダウンロードユーティリティの GUI。
- Diana — aria2 のコマンドラインツール。
- downloadm — aria2c をバックエンドとして用いるダウンロードアクセラレータ/マネージャ。
- https://sourceforge.net/projects/downloadm/ || downloadmAUR[リンク切れ: アーカイブ: aur-mirror]
- eatmonkey — aria2 で動作する Xfce のダウンロードマネージャ。
- karia2 — aria2 ダウンロードマネージャの QT4 インターフェイス。
- uGet — プラグインを使って aria2 をバックエンドとして利用できる機能豊富な GTK+/CLI ダウンロードマネージャ。
- yaner — aria2 ダウンロードマネージャの GTK+ インターフェイス。
- http://iven.github.com/Yaner || yaner-gitAUR[リンク切れ: アーカイブ: aur-mirror]
シェルの設定ファイルに diana による監視機能を追加すると便利です:
da(){
watch -ctn 1 "(echo -e '\033[32mGID\t\t Name\t\t\t\t\t\t\t%\tDown\tSize\tSpeed\tUp\tS/L\tTime\033[36m'; \
diana list| cut -c -112; echo -e '\033[37m'; diana stats)"
}
ヒントとテクニック
パッケージをインストールしないでダウンロード
以下のコマンドを使って下さい:
# pacman -Sp packages | aria2c -i -
pacman -Sp はパッケージの URL を標準出力に出力します。それから | で次のコマンドにパイプしています。そして aria2c -i - の -i スイッチによって aria2c は指定されたファイルからファイルの URL をダウンロードします。- が指定されているため、URL は標準入力から読み込まれます。
pacman XferCommand
こちらを参照 pacman/ヒントとテクニック#aria2
ユーザーエージェントの変更
サイトによってはユーザーエージェントでリクエストを弾くようになっていることがあり、Aria2 はあまり有名なダウンローダーではないため、Aria のユーザーエージェントを他の有名なダウンローダーやブラウザにすると良いかもしれません。以下のように -U オプションを使います:
$ aria2c -UWget http://some-url-to-download/file.xyz
-UMozilla/5.0 など、何でも好きに設定できます。
makepkg で aria2 を使う
curl でソースファイルをダウンロードする代わりに aria2 を使うことができます。以下のように DLAGENTS 変数を変更してください:
/etc/makepkg.conf
[...]
DLAGENTS=('ftp::/usr/bin/aria2c -UWget -s4 -x4 %u -o %o --follow-metalink=mem'
'http::/usr/bin/aria2c -UWget -s4 -x4 %u -o %o --follow-metalink=mem'
'https::/usr/bin/aria2c -UWget -s4 -x4 %u -o %o --follow-metalink=mem'
'rsync::/usr/bin/rsync --no-motd -z %u %o'
'scp::/usr/bin/scp -C %u %o')
[...]
aria2 をデーモンとして使用する
aria2 をデーモンとして使用するには、systemd/ユーザーユニットの書き込み を実行する必要があります。例えば:
~/.config/systemd/user/aria2cd.service
[Unit] Description=aria2 Daemon [Service] ExecStart=/usr/bin/aria2c --conf-path=/path/to/conf [Install] WantedBy=default.target
#サンプル aria2.daemon で設定ファイルの例を示します。
aria2 で torrent をシードする
すでにダウンロードされている torrent をシードするには、--check-integrity オプションを使用します:
$ aria2c --check-integrity=true --seed-ratio=0.0 --dir="/path/to/iso" "/path/to/torrent/archlinux-2020.03.01-x86_64.iso.torrent"
--seed-ratio=0.0 を指定すると、ファイルが永久にシードされます。
参照
- aria2 wiki - 公式サイト
- aria2 usage examples - 公式サイト
- aria2c downloader through VPN tunnel - 非公式サイト