什么是 aria2
aria2 是一款用于下载文件的实用程序。支持的协议包括 HTTP(S)、FTP、SFTP、BitTorrent 和 Metalink。aria2 可以从多个来源/协议下载文件, 并尝试利用你的最大下载带宽。它支持同时从 HTTP(S)/FTP/SFTP 和 BitTorrent 下载文件。使用 Metalink 的块校验和, aria2 会在下载文件 (如 BitTorrent) 时自动验证数据块。
安装依赖
下载最新的程序代码 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
下载 aria2 源码
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
# 生成 configure 文件
autoreconf -i
# 静态编译
./configure ARIA2_STATIC=yes
# 使用 12核心 同时编译. 2分钟编译完成
make -j12
# 检查是否编译成功
make check
# 编译好如果文件过大, 可以用 strip 命令裁剪小
# 我这里编译完 78 MB, 裁剪之后只有 2.72 MB
strip -s test/aria2c
# 安装 aria2
make install
编译安装很简单. 接下来是配置 aria2
配置 aria2
配置文件的文档资料在这里 aria2c(1) 有最新的配置参数
要配置的地方有七处
- 全局设置
- 磁盘缓存
- 断点续传
- 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
启动命令
# 配置文件写自己的绝对路径 -D 是后台运行
aria2c --conf-path=./aria2.conf -D
aria2 web UI
AriaNg 下载地址: https://github.com/mayswind/AriaNg
下载后放在 httpd 服务器里面
在服务器设置里面填写 aria2 的服务器地址. 连接成功后就可以远程下载了
如果没有 httpd 服务器可以下载 AriaNg Native 使用
由于 AriaNg 通过异步加载语言文件, 所以你可能无法直接在本地文件系统打开 index.html 来运行 AriaNg。建议将 AriaNg 部署在 Web 容器中, 或下载不需要浏览器就可以运行的 AriaNg Native