Aria2 CentOS 安装与使用全教程

Aria2 是一款轻量级、开源、跨平台的命令行下载工具,支持 HTTP/HTTPS、FTP、SFTP、BitTorrent 和 Metalink 等多种协议。在 CentOS 系统中部署 Aria2 可以实现高速、多线程、断点续传及远程控制下载,非常适合搭建个人离线下载服务器。

本教程将详细指导你在 CentOS 7/8/9 系统上完成 Aria2 的安装、配置、开机自启设置及常见问题排查。


一、环境准备

确保你拥有以下条件:

  • 一台运行 CentOS 7/8/9 的服务器(物理机或云主机)
  • 具备 root 权限或可使用 sudo
  • 网络畅通,能访问外网仓库
💡 建议先更新系统:
# CentOS 7
sudo yum update -y

# CentOS 8/9
sudo dnf update -y

二、安装 Aria2

1. 启用 EPEL 仓库(仅 CentOS 7 需要)

Aria2 位于 EPEL(Extra Packages for Enterprise Linux)仓库中:

sudo yum install epel-release -y
sudo yum install aria2 -y

对于 CentOS 8/9,可直接使用 dnf 安装:

sudo dnf install aria2 -y

2. 验证安装

aria2c --version

若输出类似 aria2 version 1.35.0,说明安装成功。


三、创建配置文件

Aria2 默认不启用 RPC(远程控制),需手动配置。

1. 创建目录和配置文件

sudo mkdir -p /etc/aria2
sudo touch /etc/aria2/aria2.session
sudo vi /etc/aria2/aria2.conf

2. 写入基础配置

将以下内容粘贴到 aria2.conf 中(可根据需求调整):

# RPC 设置
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
rpc-listen-port=6800
rpc-secret=your_strong_token_here  # 强烈建议设置密钥

# 下载设置
dir=/data/downloads
input-file=/etc/aria2/aria2.session
save-session=/etc/aria2/aria2.session
save-session-interval=60

# 性能优化
max-concurrent-downloads=5
continue=true
max-connection-per-server=16
split=16
min-split-size=10M

# 日志(便于调试)
log=/var/log/aria2.log

# 客户端伪装, PT需要
peer-id-prefix=-TR2770-
user-agent=Transmission/2.77

# 头部伪装
user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
⚠️ 请将 your_strong_token_here 替换为强密码(如随机字符串),用于 Web 界面认证。

3. 创建下载目录并授权

sudo mkdir -p /data/downloads

四、配置 systemd 服务(开机自启)

1. 创建专用用户(推荐安全做法)

sudo useradd -r -s /sbin/nologin aria2
sudo chown -R aria2:aria2 /data/downloads
sudo chown -R aria2:aria2 /etc/aria2

2. 创建服务文件

sudo vi /etc/systemd/system/aria2.service

3. 写入服务配置内容

[Unit]
Description=Aria2c Download Manager
After=network.target

[Service]
User=aria2 #用户
Group=aria2 #用户组
WorkingDirectory=/data/downloads
ExecStart=/usr/bin/aria2c --conf-path=/etc/aria2/aria2.conf
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target

4. 启动并启用服务

sudo systemctl daemon-reload
sudo systemctl start aria2
sudo systemctl enable aria2

验证服务状态:

sudo systemctl status aria2

应看到 Active: active (running),且日志显示监听端口 6800


五、防火墙与端口开放(如启用 firewalld)

若服务器启用了防火墙,需放行 RPC 端口:

sudo firewall-cmd --permanent --add-port=6800/tcp
sudo firewall-cmd --reload

六、远程控制与前端界面(可选)

配置完成后,可通过以下方式远程管理 Aria2:

  • 使用 AriaNg(Web 前端)
  • 在 AriaNg 中设置:

    • 协议:http
    • 主机:你的服务器IP
    • 端口:6800
    • 密钥:your_strong_token_here(即 rpc-secret 的值)
✅ 至此,Aria2 已成功部署为后台服务,支持远程调用、断点续传、多线程下载,并随系统自动启动!

以下是其常用命令行使用方法汇总:

一、基础用法

1. 下载单个文件(直链)

aria2c https://example.com/file.zip
  • 默认保存在当前目录。
  • 自动识别协议(HTTP/FTP/BT 等)。

2. 指定保存路径和文件名

aria2c -d /path/to/save -o newname.zip https://example.com/file.zip
  • -d:指定目录(--dir
  • -o:指定文件名(--out

二、加速下载(多线程 & 多连接)

3. 启用多线程与多连接

aria2c -s 16 -x 16 https://example.com/largefile.iso
  • -s N--split=N):将文件分成 N 个分片并行下载(默认 5)。
  • -x N--max-connection-per-server=N):每个服务器最多建立 N 个连接(默认 1)。

    建议组合使用(如 -s 16 -x 16)以最大化带宽利用率。

4. 设置最小分片大小(避免小文件过度分片)

aria2c -s 16 -k 1M https://example.com/file.zip
  • -k--min-split-size=SIZE):默认 20M,可设为 1M512K

三、断点续传

5. 恢复中断的下载

aria2c -c https://example.com/file.zip
  • -c--continue=true):启用断点续传(仅支持 HTTP/HTTPS/FTP)。

    若之前已部分下载,会自动从断点继续。

四、批量下载

6. 从文本文件读取多个 URL

创建 urls.txt

https://example.com/file1.zip
https://example.com/file2.iso

执行:

aria2c -i urls.txt -s 8 -x 8
  • -i FILE--input-file=FILE):每行一个 URL,支持选项后缀(如 http://... dir=/tmp out=name.zip)。

五、BT / 磁力链接下载

7. 下载种子文件

aria2c example.torrent

8. 下载磁力链接

aria2c "magnet:?xt=urn:btih:xxxxxxxx"

9. 查看种子内容(不下载)

aria2c -S example.torrent

10. 选择性下载文件(按编号)

aria2c --select-file=1,3-5 example.torrent

六、限速与日志

11. 限制下载速度

aria2c --max-download-limit=500K https://example.com/file.zip      # 单任务限速
aria2c --max-overall-download-limit=2M                            # 全局限速

12. 输出日志

aria2c -l aria2.log https://example.com/file.zip
  • -l--log=FILE):日志文件路径;- 表示输出到标准输出。

七、后台运行(守护进程)

13. 以后台模式运行

aria2c -D https://example.com/file.zip
  • -D--daemon=true):启动后转入后台,关闭终端不影响下载。

八、使用配置文件

14. 创建配置文件 ~/.aria2/aria2.conf

dir=/downloads
continue=true
max-connection-per-server=16
split=16
min-split-size=1M
enable-rpc=true
rpc-listen-all=true
rpc-secret=mysecret123

15. 使用配置文件启动

aria2c --conf-path=~/.aria2/aria2.conf -D

九、RPC 远程控制(配合 WebUI)

16. 启动 RPC 服务

aria2c --enable-rpc --rpc-listen-all --rpc-secret=your_token -D
  • 默认端口:6800
  • 可通过 AriaNg 等 WebUI 管理任务。

17. 通过 curl 添加任务(带 token)

curl http://localhost:6800/jsonrpc -d '{
  "jsonrpc": "2.0",
  "method": "aria2.addUri",
  "id": "1",
  "params": ["token:your_token", ["https://example.com/file.zip"]]
}'

十、其他实用选项

选项说明
--file-allocation=trunc立即分配磁盘空间(避免稀疏文件)
--check-integrity=true下载后校验完整性(需有哈希信息)
--referer=URL设置 Referer(绕过防盗链)
--all-proxy=http://127.0.0.1:7890设置全局代理
--dry-run=true仅测试链接有效性,不实际下载

查看帮助

aria2c --help        # 快速帮助
man aria2c           # 完整手册(Linux/macOS)
aria2c -h            # 同 --help

提示

  • 高速下载建议:-s 16 -x 16 -k 1M --file-allocation=trunc
  • 国内用户常配合代理(如 Clash)使用:--all-proxy=http://127.0.0.1:7890

如需图形界面,推荐搭配 AriaNg 使用。