aria2 文件下载器

提起下载工具,在Linux下大多数人可能会想到Wget,但实际上我个人认为Aria2是一个更好的选择。Aria2是一款C++编写的轻量级命令行下载工具,然而它的功能却异常强大,它支持HTTP/HTTPS/FTP/BitTorrent/Metalink等多种协议,支持多线程下载、断点续传等实用功能,同时具有很好的可扩展性。

项目Github地址:https://github.com/aria2/aria2

安装Aria2

在Ubuntu下,我们直接从软件源中安装即可。

apt install aria2

安装完成后,我们就可以使用aria2c命令了,此外我们还可以使用man aria2c查看相关文档。

aria2c命令行工具

下面我们以例子的形式演示一些aria2c命令行工具的常用功能。

多线程下载

下面例子下载了一个文件,其中-x 8参数表示使用多线程下载(向同一个主机发起多个连接),线程数为8

aria2c -x 8 https://releases.ubuntu.com/22.04/ubuntu-22.04.3-desktop-amd64.iso

如果想让Aria2在后台运行,可以使用-D参数。

断点下载

Aria2支持断点下载,我们可以使用-c参数保存下载状态。

aria2c -x 8 -c https://releases.ubuntu.com/22.04/ubuntu-22.04.3-desktop-amd64.iso

使用-c参数下载文件时,目录下还会创建一个<文件名>.aria2文件,其中记录了当前的下载状态数据。如果下载中断,我们再次执行命令后会从断点开始下载,而不必重新下载。

BT下载

Aria2支持BT下载,我们直接指定种子文件即可,另外还可以使用--bt-tracker参数指定Tracker服务器。

aria2c -x 8 -c ubuntu-22.04.3-desktop-amd64.iso.torrent

种子文件是二进制数据,aria2c还提供了种子文件的内容解析功能,我们可以用以下命令查看种子文件中的内容。

aria2c --show-files ubuntu-22.04.3-desktop-amd64.iso.torrent

除此之外,Aria2也支持磁力链。

使用RPC模式

Aria2还提供了RPC模式,它可以作为服务端运行,图形界面客户端可以通过HTTP协议连接并远程操作。AriaNg是一个比较小巧好用的客户端,它能在图形界面上配置Aria2,并管理下载任务。

AriaNg项目地址:https://github.com/mayswind/AriaNg

我们可以使用命令行以服务端模式启动Aria2,默认Aria2会启动在6800端口。

aria2c --enable-rpc --rpc-allow-origin-all

此时我们运行客户端即可成功连接。

编写配置文件

前面使用AriaNg客户端时我们可以在客户端中对Aria2的一些参数进行配置,但实际上这些配置都是临时的,Aria2服务端重启后就会重置。如果需要永久性的配置一些参数,可以将这些配置写入配置文件,配置文件的默认路径是~/.aria2/aria2.conf

下面例子配置文件中,我们将单主机的下载线程数设置为8,它的作用和前面命令行中的-x参数是一样的。在配置文件中配置后,它会同时影响aria2c命令行和RPC模式的参数默认值。

max-connection-per-server=8

有关更多配置文件的内容可以参考Aria2的文档,此外Github上也有很多优秀的配置供我们参考。

作者:Gacfox
版权声明:本网站为非盈利性质,文章如非特殊说明均为原创,版权遵循知识共享协议CC BY-NC-ND 4.0进行授权,转载必须署名,禁止用于商业目的或演绎修改后转载。
Copyright © 2017-2024 Gacfox All Rights Reserved.
Build with NextJS | Sitemap