什么是Aria2?
aria2是一个下载文件的工具。 支持的协议是HTTP(S),FTP,SFTP,BitTorrent和Metalink。
aria2可以从多个来源/协议下载文件,并尝试利用您的最大下载带宽。
它支持从HTTP(S)/ FTP / SFTP和BitTorrent同时下载文件,而从HTTP(S)/ FTP / SFTP下载的数据则上传到BitTorrent群集。
使用Metalink的块校验和,当下载像BitTorrent这样的文件时,aria2会自动验证数据块。
一.下载Aria2 源码
https://github.com/aria2/aria2/releases
下载最新的程序代码 2018年1月1日
需要的第三方库
功能 | 依赖 |
---|---|
HTTPS | OSX or GnuTLS or OpenSSL or Windows |
SFTP | libssh2 |
BitTorrent | None. Optional: libnettle+libgmp or libgcryptor OpenSSL (see note) |
Metalink | libxml2 or Expat. |
Checksum | None. Optional: OSX or libnettle or libgcryptor OpenSSL or Windows (see note) |
gzip, deflate in HTTP | zlib |
Async DNS | C-Ares |
Firefox3/Chromium cookie | libsqlite3 |
XML-RPC | libxml2 or Expat. |
JSON-RPC over WebSocket | libnettle or libgcrypt or OpenSSL |
需要什么功能在 ./configure
之前把依赖安装好.
例如 我用的是 CentOS 7 要想支持全部的功能.就需要安装 OpenSSL libssh2 libxml2 zlib libsqlite3 这要这5个的devel版本
全部安装可以直接执行这个命令.这样所有依赖都可以解决.
yum install libxml2-devel autoconf automake autopoint libtool gettext-devel libssh2-devel libgcrypt-devel LibGmp openssl-devel kernel-devel cppunit-devel sqlite-devel
下载程序源码:
wget https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1.tar.gz tar -xvf aria2-1.33.1.tar.gz cd aria2-1.33.1 autoreconf -i #生成configure 文件 ./configure ARIA2_STATIC=yes #静态编译 make -j12 #使用12核心 同时编译. 2分钟编译完成. make -j12 check #检查是否编译成功 strip -s test/aria2c #编译好如果文件过大,可以用 strip命令 裁剪小.我这里编译完78MB,裁剪之后只有2.72MB make -j12 install #安装 Aria2
编译安装很简单. 接下来是配置 Aria2.
配置文件的文档资料在这里https://aria2.github.io/manual/en/html/aria2c.html
上面有最新的配置参数.
要配置的地方有七处.
- 全局设置
- 磁盘缓存
- 断点续传
- HTTP/FTP/SFTP
- HTTP
- RPC Options
- BT/PT下载相关
这个是我的配置文件,每一个详细参数说明都在配置文件里面有
# 全局设置 min-tls-version=TLSv1.1 disable-ipv6=true log=./aria2.log content-disposition-default-utf8=true # 磁盘缓存 disk-cache=256M # 断点续传 continue=true input-file=./aria2.session save-session=./aria2.session save-session-interval=60 force-save=true # HTTP/FTP/SFTP lowest-speed-limit=10 max-connection-per-server=16 split=16 min-split-size=10M # HTTP max-concurrent-downloads=5 http-accept-gzip=true user-agent= <写自己的> save-cookies=./aria2.cookies # RPC Options enable-rpc=true rpc-listen-port=6800 rpc-allow-origin-all=true rpc-certificate=./aria2.crt rpc-private-key=./aria2.key rpc-secret= <安全密码,写自己的> rpc-listen-all=true rpc-secure=true # BT/PT下载相关 bt-save-metadata=true bt-max-peers=0 bt-request-peer-speed-limit=8M #根据自己的网速设置 max-upload-limit=300K seed-time=10 listen-port=6801-6919
启动命令:
aria2c --conf-path=./aria2.conf -D #配置文件写自己的绝对路径 -D是后台运行
搭建Aria2 UI
AriaNg 下载地址: https://github.com/mayswind/AriaNg
下载后放在 httpd 服务器里面
在服务器设置里面填写 Aria2 的服务器地址.连接成功后就可以远程下载了.
如果没有 httpd 服务器可以下载 AriaNg Native 使用
由于 AriaNg 通过异步加载语言文件,所以您可能无法直接在本地文件系统打开 index.html 来运行 AriaNg。建议将 AriaNg 部署在 Web 容器中,或下载不需要浏览器就可以运行的 AriaNg Native。
https://github.com/aria2/aria2
https://github.com/mayswind/AriaNg-Native
https://aria2.github.io/manual/en/html/aria2c.html