之前在文章 《在 Linux 上安装 transmission 进行远程 PT 下载》 中提到,迅雷从 2017 年 7 月开始陆续暂停了第三方远程下载固件。

远程下载是一个很方便的功能,可以在任何地方通过 Web 添加任务,让家中的 NAS 进行资源下载。

但是 PT 站资源毕竟不如互联网上的多,注册 PT 站也是比较困难的。如果我们需要下载互联网上的资源怎么办呢?aria2 就是一个可以替代迅雷远程固件的工具。

如果你的 NAS 使用的是 Fedora 系统,那安装 aria2 是比较简单的,在 Fedora 的软件源中就包含了此软件,下面我们将介绍如何安装和使用 aria2 进行远程下载。

本文暂不讨论编译安装 aria2。

本文适用读者

具有 Linux 使用基础的人士。

安装 aria2

直接使用默认的包管理器 dnf 安装:

dnf install aria2

启动 aria2 服务

假设你使用 root 身份进行操作,执行下面命令,将使用普通用户 thunder 启动 aria2。启动后任务会在后台运行,并监听 TCP 6800 端口。

su -s "/bin/bash" -c "aria2c --enable-rpc=true --rpc-listen-all=true --log=/var/log/aria2c.log --file-allocation=falloc --continue=true --max-overall-upload-limit=200K --enable-dht=true --rpc-allow-origin-all=true --save-session=/home/thunder/.aria2/aria2.session --dir=/var/thunder/TDDOWNLOAD --input-file=/home/thunder/.aria2/aria2.session --rpc-secret=889a21cad --peer-id-prefix=-TR2770- --user-agent=Transmission/2.77" thunder > /dev/null 2>&1 &

如果你一定要用 root 身份来启动这个程序,或者你本来就是用普通用户登录的,那你可以直接执行下面的命令启动,注意相关的文件需要替换:

aria2c --enable-rpc=true --rpc-listen-all=true --log=/var/log/aria2c.log --file-allocation=falloc --continue=true --max-overall-upload-limit=200K --enable-dht=true --rpc-allow-origin-all=true --save-session=/home/thunder/.aria2/aria2.session --dir=/var/thunder/TDDOWNLOAD --input-file=/home/thunder/.aria2/aria2.session --rpc-secret=889a21cad --peer-id-prefix=-TR2770- --user-agent=Transmission/2.77

重要参数解释:

下面参数需要根据自己的情况自定义。

  • --log=/var/log/aria2c.log 设定log路径,log 文件应该先存在并且权限正确,也可以省略。
  • --max-overall-upload-limit=200K 全局上传速度限制
  • --save-session=/home/thunder/.aria2/aria2.session 任务信息保存文件
  • --input-file=/home/thunder/.aria2/aria2.session 启动时读取任务信息保存文件
  • --dir=/var/thunder/TDDOWNLOAD 下载目录
  • --rpc-secret=889a21cad RPC 服务 token

你可以执行 netstat -tnlp | grep aria2c 验证是否启动成功,若启动成功,则会出现监听中的端口。

tcp        0      0 0.0.0.0:6889            0.0.0.0:*               LISTEN      1828/aria2c
tcp        0      0 0.0.0.0:6800            0.0.0.0:*               LISTEN      1828/aria2c
tcp6       0      0 :::6889                 :::*                    LISTEN      1828/aria2c
tcp6       0      0 :::6800                 :::*                    LISTEN      1828/aria2c

将端口映射到公网

如果你打算在公司或其他地方管理 nas 上的 aria2,你需要将 nas 上的 6800 端口映射到公网,映射方法根据路由器品牌的不同可能略有差别,请自行查询操作方法。

如果你只是在家中(同一局域网)管理 aria2,则可以跳过此步骤。

使用 AriaNg 管理 aria2 任务

直接访问下面网址:
http://tool.appgao.com/AriaNg

关于 Aria2 WebUI

aria2 默认是不包含 GUI 的,但是它开放了 json 和 xml 的接口用来管理。

很多开发者为它量身定制了各种版本的 GUI 程序,这使得你可以在几乎所有平台上使用可视化的工具来管理 aria2。

我们今天将介绍 Aria2 WebUI,这是一个 html5 版本的管理程序,它通过访问上个步骤中提到过监听在 6800 端口的 jsonrpc 服务来管理aria2。

要使用 Aria2 WebUI,你必须保证你能访问到 nas 的 6800 端口。

Aria2 WebUI 是一个开源项目,您可以访问 GitHub 下载源码来部署,也可以直接访问作者部署的公用版来使用。

使用 Web 管理 aria2 任务

下面我们讲解使用 Aria2 WebUI 作者部署的公共版来管理 aria2。

  1. 访问 http://ziahamza.github.io/webui-aria2/
  2. 点击 设置 --> 连接管理,填写 主机地址端口密码令牌 并保存。
  3. 开始使用。

一些说明

  • 主机地址是你家里的公网 IP
  • 端口是 6800,或你在路由器上做了端口映射之后的新端口
  • 密码令牌是你在启动命令中 --rpc-secret=889a21cad 设置的 889a21cad
  • 其他你不知道如何设置或不理解的选项都保持默认或空白即可

webui-aria2设置.jpg

截图

可以在图片上点击右键选择在新标签页中打开查看大图。

chrome_2017-09-28_15-29-22.png

chrome_2017-09-28_15-30-19.png