使用 aria2
安装 并 配置 aria2
0 什么是 aria2
aria2 是一个用于下载的命令行工具,支持 HTTP(S), FTP, SFTP, BitTorrent, and Metalink 。
原本使用 QQ旋风,可最近发现它不好用了,上网搜索原因,原来是腾讯停止了该服务。
经过一番倒腾,找到了 aria2 。想到它同时支持 Linux/Windows ,以后也切换系统也方便。
1 安装 aria2
1.1 下载并安装 aria2 主程序
从 aria2官网 下载最新的版本,如: aria2-1.34.0-win-64bit-build1.zip 。并将其内容解压到 aria2 目录下。
这个压缩包中主要就一个名为 aria2c.exe
的程序,另外还有一些版本声明等文件。
文件名 | 功能 |
aria2c.exe | aria2 主程序 |
AUTHORS | 说明文档-作者 |
ChangeLog | 说明文档-改动日志 |
COPYING | 说明文档-许可证 |
LICENSE.OpenSSL | 许可证 |
NEWS | 说明文档-升级日志 |
README.html | 说明文档 |
README.mingw | 说明文档 |
1.2 下载控制脚本
下载 aria2 控制脚本 aria2_bat.zip ,并解压至 aria2 目录。
aria2_bat.zip 中有以下文件:
文件名 | 功能 |
Boot.bat | 将 aria2 设置/取消 成开机启动 |
Restart.bat | (以无 cmd 窗口方式)重启 aria2 |
Start.bat | 启动 aria2 的批处理文件(有 cmd 窗口) |
Start.vbs | 启动 aria2 的批处理文件(无 cmd 窗口) |
Status.bat | 查看 aria2 运行状态的批处理文件 |
Stop.bat | 停止 aria2 的批处理文件 |
使用
Boot.bat
设置开机启动,在 win 10 下无法正常工作(其它 windows 系统没有测试),提示说“系统找不到指定的文件”,原因是:开机运行 Start.vbs 时,并没有切换到 aria2 目录,导致无法找到 aria2c.exe。变通的方案:将Start.vbs
的快捷方式拖到%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup
(也就是通常所说的 “菜单”->“启动”)中。如果不想开机启动,再将快捷方式删除即可。
1.3 下载配置文件
aria2
完全可以只使用命令行参数来进行控制,但有使用一个配置文件还是更方便一点。
下载 aria2 配置文件 aria2_conf.zip
aria2_conf.zip 中有以下文件:
文件名 | 功能 |
aria2.conf | aria2 的配置文件。在 Start.bat 中指定使用本文件作为配置文件 |
aria2.session | 保存下载的会话信息,这里只是一个空文件。 在 aria2.conf 中进行指定了文件名 |
dht.dat |
1.4 启动 aria2
执行 Start.bat
或 执行 Start.vbs
或者考虑通过 Boot.bat
将 aria2 添加到开机启动中 。
1.5 停止 aria2
执行 Stop.bat
2 安装 UI 界面
aria2 只是一个命令行程序,没有UI界面。我们可以为其增加一个 Web UI。常见有以下几种方式,使用其中一种即可。
Chrome 和 FireFox 都能正常工作, Edge 和 IE 则不行。
2.1 使用 AriaNg
进入 AriaNg官网 下载最新的 AllInOne 的压缩包,如 AriaNg-1.0.0-AllInOne.zip 。并解压至 aria2 目录。
文件名 | 功能 |
index.html | 实现与 aria2 交互的页面 |
LICENSE | 版权说明文件 |
双击 index.html
即可。
与
WebUI-Aria2
相比,AriaNg 只有一个文件,但却会在浏览器中形成更多的访问记录,应该是页面刷新没有做好。
如果只在本机上使用 aria2 、习惯于Chrome浏览器,并且在Chrome中安装了
Camtd - Aria2下载管理器
插件 ,则不单独安装 AriaNg 也行。
2.2 使用 WebUI-Aria2
执行以下命令,获取最新的 WebUI-Aria2 版本。
git clone https://github.com/ziahamza/webui-aria2
进入下载得到的 webui-aria2
目录中的 docs
子目录,双击 index.html
即可。
如果没有安装 git,可以直接 下载zip包 ,解压后也会得到
webui-aria2-master
目录。
3 配置 Web 服务器(可选)
如果想要让其它计算机也能使用安装在本机上的 aria2 ,则需要提供一个 Web 服务器。
3.1 下载 Web 服务器
下载 Web 服务器,并解压至 aria2 目录。
压缩包中就一个名为 EasyWebSvr.exe
的文件。(当然也可以采用其它的 Web 服务器)
3.2 启动 Web 服务器
双击 EasyWebSvr.exe
。
在浏览器中,访问 http://localhost
如果是其它机器访问,则需要将 localhost
更换成安装 aria2 机器的 IP 地址,如: http://10.1.1.1
- 如果是与
AriaNg
配合使用,不需要特殊设置(只要两者都安装在同一目录即可) - 如果是
WebUI-Aria2
,则需要在EasyWebSvr.exe
的小图标中,选择右键菜单中的“设置”,然后将“服务器”的“主目录”设置为 WebUI-Aria2 得到的docs
子目录。(当然也可以考虑直接将EasyWebSvr.exe
放在docs
子目录中,不过不直观)
4 集成浏览器(可选)
4.1 Chrome
在 Chrome 中安装以下插件中的一个:
- 添加到aria2 :插件只将下载任务发送给
aria2
。使用本插件时, aria2 不能配置 rpc-secret。 - Camtd - Aria2下载管理器 : 插件中集成了
AriaNg
界面,将任务发送给aria2
。
4.2 FireFox
在 FireFox 安装以下插件:
- Aria2 下载器集成组件 :
插件中集成了
AriaNg
界面,将任务发送给aria2
。 (等同于 Chrome 中的“Camtd - Aria2下载管理器”)
5 Ubuntu 下安装及配置
5.1 安装及配置 aria2
执行命令安装
sudo apt-get install aria2
为了方便管理,可以
- 在用户 $HOME 目录下创建一个
aria2
的子目录, - 在
aria2
目录下创建conf
和download
两个子目录。 - 在 conf 子目录创建一个空的
aria2.session
文件 - 将
AriaNg
拷贝到 conf 子目录
相关命令如下:
mkdir aria2
cd aria2
mkdir conf download # 创建 conf 和 download 子目录
touch conf/aria2.session
aria2c https://github.com/mayswind/AriaNg/releases/download/1.0.0/AriaNg-1.0.0-AllInOne.zip
unzip AriaNg-1.0.0-AllInOne.zip # 解压下载的文件
mv index.html conf # 将解压得到的 index.html 移到 conf 子目录
最后,将 windows 下的 aria2.conf
文件拷贝到 conf 子目录,然后修改 aria2.conf
:
- 文件保存目录
dir
修改为刚才创建的download
目录的绝对路径。
这样, aria2 的安装、配置就算完成了。
5.2 安装及配置 nginx
为了让其它机器能够访问 Ubuntu 上的 aria2 ,所以需要为其添加一个 WEB 服务。这里选择 nginx 的 light 版本。
执行以下命令进行安装:
sudo apt-get install nginx-light
安装完成后,进入 /etc/nginx/sites-enabled
目录, 将原有的 default
(实际上是指向 /etc/nginx/sites-available/default
的一个软链接),拷贝一份为 aria2,然后删除 default
sudo cp default aria2
sudo unlink default
修改 aria2 文件中的内容:
server {
listen 12345 default_server;
listen [::]:12345 default_server;
root /home/xxx/aria2/conf;
主要修改三项:两个 listen 端口(修改成 12345) 和 一个 root 目录(修改成 AriaNg 的 index.html 所在的绝对路径)
这样, nginx 也算配置好了。
通过以下命令启动或配置 nginx
sudo nginx # 启动 nginx
sudo nginx -s stop # 停止 nginx 运行
sudo nginx restart # 重新启动 nginx
5.3 运行
在 ~/aria2/conf
目录下,启动 aria2
aria2c --conf-path=aria2.conf
为了让 aria2c 能够在后台运行,可以创建一个 aria2.sh
的脚本。内容为:
#!/bin/bash
cd ~/aria2/conf
screen -dmS aria2 aria2c --conf-path=aria2.conf
脚本先进入 ~/aria2/conf
目录,然后通过 screen 命令,启动 aria2c 并将其驻留后台。
5.4 开放端口
Ubuntu需要开放两个端口,不然其它的机器可能无法访问:
- nginx 的监听端口(如:配置文件中的 12345)
- aria2 的端口端口(缺省为 6800)
5.5 更简单一点
我们知道,配置 WEB 服务(nginx)的目的,是让我们可以访问到 AriaNg 的 index.html(有 WebUI-Aria2 也是一样的)。
如果我们能够确保自己机器(如:Windows)上已经有 AriaNg 的 index.html,那么,Ubuntu上实际并不需要配置 WEB 服务(nginx)。
可以直接让我们Windows上的浏览器打开本机 AriaNg 的 index.html,将 AriaNg设置
中的 Aria2 RPC地址
配置为 Ubuntu 的IP 和 aria2c 的监听端口就可以了。
使用这种方法,可以减少一个 Ubuntu 开放端口,也减少了安装Web服务的工作。特别适用于在个人云主机的 Ubuntu 上使用。
参考
声明: 本文采用 CC BY-NC-SA 3.0 协议进行授权,转载请注明出处。