使用Aria2完成下载任务
互联网最大的特点之一就是信息的便捷分享,对一个“爱学习”的童鞋来说,冲浪的过程中或多或少都要下载一些文件、音视频什么的。常用的文件下载器包括:迅雷、电驴等通用下载器;百度云等各类云盘客户端;以及wget、curl等命令行。今天向大家介绍一个下载工具 Aria2。
Aria2 是一个轻量级的下载命令,在Windows、MAC和Linux上都可以使用。它不仅具有多线程、跳转跟踪、断点续传等专业下载器才有的功能,还具备丰富的协议支持(如:HTTP/HTTPS,FTP,SFTP,BitTorrent and Metalink)。Aria2 参数繁多,配置上可以说是复杂,命令行使用显得很不友好(主要是实现高级下载功能参数太多),好在它支持配置文件,我们可以通过配置文件为Aria2指定运行参数,更让人惊喜的是Aria2 支持通过 JSON-RPC 和 XML-RPC 接口进行控制。
下面就让我们看看如何使用 Aria2 代替迅雷等专业下载器进行下载。通过本文读者将学会:
1. 如何配置和使用aria2
2. 如何使用aria2从**云下载 (要有点探索精神啊)
安装 Aria2
Aria2 是一个跨平台的命令,不同平台下载相应版本的命令即可(我是传送门)。需要注意的是,自己安装的话记得添加环境变量或将 Aria2 安装在系统既有的搜索目录内,这样才能在任何位置通过命令行访问到 aria2c 命令。对于基于Linux的系统,如MacOS和Ubuntu等,还可以使用应用程序管理器 apt | apt-get | yum 等直接从仓库中拉去 Aria2,这种方式会自动配置环境变量,推荐使用。
另外,用户还可以自行搜索是否有其他集成了 Aria2 的优秀作品, 这样既可以体验 Aria2的强大功能又能享受开发者提供的便捷。例如:苹果用户可下载 Aria2GUI,该工具集成了Aria2 和 Aria2 控制界面,使用起来十分方便。
使用 Aria2
本节介绍 Aria2 的一些常规使用实例,并说明其两种运行模式,读者请主要关注搭配配置文件的使用方法和 RPC 运行模式。
常规使用
## 直接从网上下载
aria2c http://example.org/mylinux.iso
## 从两个源下载
aria2c http://a/f.iso ftp://b/f.iso
## 四线程同时下载
aria2c -j4 http://a/f.iso
## 按顺序下载文件中的链接
aria2c -i uris.txt
其他常规下载示例,参见 Aria2 官网。
使用配置文件
官方文档中罗列了很多 Aria2 的运行参数,对于一个复杂的下载任务来说,将这些参数以命令行的方式追加在 aria2c 命令后是一种很不友好的方式,好在 aria2c 支持配置文件,我们可以将aria2c的运行参数写入配置文件 aria2c.conf 中,然后在命令行中通过 --conf-path 指定配置文件,这样aria2c就能使用指定参数运行。例如:
aria2c.exe --conf-path=aria2c.conf http://a/f.iso
运行模式
Aria2 常用两种模式:一是直接下载模式,二是 RPC等待模式。
直接下载模式:上述示例中都是直接下载模式,用户通过指定参数或配置文件开启一个下载任务,下载完成或出错任务结束,类似 wget 和 curl。
RPC等待模式:这种模式比较特别,运行在这种模式下的aria2 成为一个服务,持续监听发送到指定接口的下载任务,任务完成或中断aria2不退出,有点类似迅雷。我们可以通过以下命令来将aria2运行在RPC等待模式:
enable-rpc=true
pause=true
rpc-allow-origin-all=true
rpc-listen-all=false #允许非外部访问
rpc-listen-port=6368 #RPC端口, 仅当默认端口被占用时修改
rpc-save-upload-metadata=true
rpc-secure=false
推荐 配置文件 + RPC等待模式 的使用方法。
Aria2界面化
Aria2本身是没有图形界面的,图形界面基本是在RPC等待模式上进行的包装,所以一定确定开启了RPC,IP端口可访问,并且在管理器中填写了正确的地址。
已知相对好用且使用范围广的 Aria2 界面有:
1. ziahamza 的 webui-aria2
2. binux 的 yaaw
两个都是 Web 应用,风格各有千秋,自行根据需要下载进行配置即可。不想麻烦的童鞋(像我)可以直接使用其搭建好的 Demo。
Webui-Aria2界面 (Demo地址)
webui-aria2的操作界面设计还挺好的,个人比较喜欢。
用户只要在 “设置 - 连接设置” 中准确配置 aria2 所在的主机、监听的端口以及额外的认证信息(如果启用认证的话),就可以链接上aria2服务。此外用户还可以在 “设置-全局设置” 中对aria2的运行参数进行修改。WebUI-Aria2提供13中语言,用户可根据需求进行本地化设置。最最最最有特点的是它提供下载任务搜索功能。
YAAW界面 (Demo地址)
Yaaw界面相对简洁一些,操作起来和webui-aria2相差不多,读者自行摸索一段时间就都熟悉了。
Yaaw不支持再配置,只是使用配置好的参数运行而已。
Binux 说webui-aria2和yaaw的界面配置都会在重启后失效,这个问题从来不重启的我是没法测试了,不过就算重启失效,只要设置了aria2 开机自启,配置界面也就是一两分钟的事。
附加内容
理论上,只要有资源的uri,我们都可以使用aria2将其下载。问题是现在各大网络服务都有自己的门禁机制,一般想拿到资源uri还是一个比较麻烦的事。嗯,让你发愁的事也让很多大神发愁,不过你选择逆来顺受,大神选择的却是干翻TA。这里推荐 tampermonkey 插件,有了它再加上各位大神的保价护航,各大网盘随便下,告别客户端,告别10kb。
参考资料:
1. Aria2 说明文档
2. Aria2 配置教程
4. aria2配置示例