前言 Aria2是一款开源、跨平台的命令行界面下载管理器,常常被各种下载器软件使用。
介绍
-Aria2是一款开源、跨平台的命令行界面下载管理器,支持的下载协议有:HTTP、HTTPS、FTP、Bittorrent 和 Metalink。它以高效、轻量和灵活著称,适用于需要批量下载、自动化任务或远程控制的用户。
在上网的时候,我们可能需要下载一些东西,而浏览器自带的下载比较缓慢。为此,许多人安装了类似IDM或者Motrix等等软件,用多线程来加速下载。其实,许多开源的下载器就是Aria2的前端,我们可以直接使用Aria2进行下载。
+Aria2是一款开源、跨平台的命令行界面下载管理器,支持的下载协议有:HTTP、HTTPS、FTP、Bittorrent 和 Metalink。它以高效、轻量和灵活著称,适用于需要批量下载、自动化任务或远程控制的用户。
Aria2 有以下几个特点:
多连接下载:可以从多个来源/协议下载文件并尝试利用您的最大下载带宽,真正加快您的下载体验;
@@ -130,15 +131,45 @@
支持Metalink:支持 Metalink 下载描述格式。 在下载中使用 Metalink 数据块的校验和自动验证下载的数据部分;远程控制:支持 RPC 接口来控制 aria2 进程。 支持的接口是 JSON-RPC(通过 HTTP 和 WebSocket)和 XML-RPC。
Aria2 原生使用命令行工具进行操作,为了更方便控制我们可以使用其他开源的面板配合本体,如AriaNg或者webui-aria2。
-Windows
-首先下载aria2-1.37.0-win-64bit-build1.zip,将下载好的文件解压并放到你喜欢的目录下,设置系统环境变量,类似D:\DATA\Data\AriaNg-1.3.10-AllInOne,随后即可在 CMD 中使用 Aria2 。
随后可以安装 AriaNg 前端,AriaNg 使用纯 html & javascript 开发, 所以其不需要任何编译器或运行环境.
-
AriaNg 现在提供三种版本, 标准版、单文件版和 AriaNg Native. 标准版适合在 Web 服务器中部署, 提供资源缓存和按需加载的功能. 单文件版适合本地使用, 您下载后只要在浏览器中打开唯一的 html 文件即可. AriaNg Native 同样适合本地使用, 并且不需要使用浏览器.这里建议使用单文件版或者Native版。
Arch linux
+要使用Aria2来替代浏览器自带的下载,一般需要三个条件:
+-
+
- 在系统中安装Aria2,并设置环境变量和开机自启; +
- 让Aria2接管浏览器的下载; +
- 需要一个前端面板来更方便的控制Aria2(可选). +
安装
+Windows
+首先下载aria2-1.37.0-win-64bit-build1.zip,将下载好的文件解压并放到你喜欢的目录下,设置系统环境变量,类似D:\DATA\Data\AriaNg-1.3.10-AllInOne,随后即可在 CMD 中使用aria2c -v查看Aria2 。
然后创建一个配置文件C:\Users\<你>\.aria2\aria2.conf,内容如下:
# 下载目录
+dir=C:/Users/<你>/Downloads
+
+# 断点续传
+continue=true
+file-allocation=prealloc
+
+# RPC 设置
+enable-rpc=true
+rpc-listen-all=true
+rpc-allow-origin-all=true
+rpc-listen-port=6800
+rpc-secret=<你的密码>
+
+随后在这个项目中winsw下载 WinSW-x64.exe到一个目录,并重命名为 aria2-service.exe,并在同目录下创建aria2-service.xml,内容如下:
<service>
+ <id>aria2</id>
+ <name>Aria2 Service</name>
+ <description>Aria2 Download Manager</description>
+ <executable>C:\Users\<你>\scoop\apps\aria2\current\aria2c.exe</executable>
+ <arguments>--conf-path=C:\Users\<你>\.aria2\aria2.conf</arguments>
+</service>
+
+随后使用.\aria2-service.exe install安装服务,并使用.\aria2-service.exe start启动服务,类似linux上的systemctl.
++注意修改用户名!
+
Arch linux
+Arch linux 和大部分常规发行版可以适用此方法。
首先安装aria2本体:
paru -S aria2
@@ -171,35 +202,106 @@
[Install]
WantedBy=default.target
-在更新配置文件和服务文件后,执行以下命令以重启服务:
+在更新配置文件和服务文件后,执行以下命令以重启服务:
systemctl --user daemon-reload
systemctl --user enable aria2.service
systemctl --user start aria2.service
-使用以下命令检查服务状态:
+使用以下命令检查服务状态:
systemctl --user status aria2.service
+Nixos
+{ lib, pkgs, username, ... }:
+{
+ services.aria2.enable = false;
+ systemd.services.aria2 = {
+ description = "Aria2 Download Manager (dich)";
+ after = [ "network.target" ];
+ wants = [ "network.target" ];
+ wantedBy = [ "multi-user.target" ];
+
+ serviceConfig = {
+ Type = "simple";
+ User = username;
+
+ ExecStartPre = [
+ "${pkgs.coreutils}/bin/mkdir -p /home/${username}/.config/aria2"
+ "${pkgs.coreutils}/bin/touch /home/${username}/.config/aria2/aria2.session"
+ ];
+
+ ExecStart = "${pkgs.aria2}/bin/aria2c --conf-path=/home/${username}/.config/aria2/aria2.conf";
+
+ Restart = "always";
+ RestartSec = "5s";
+
+ NoNewPrivileges = true;
+ PrivateTmp = true;
+ };
+ };
+}
+
+命令行用法
+如果你不想用浏览器插件或者面板,也可以直接使用命令行操作:
+aria2c [选项] [URL | 磁力链接 | .torrent文件]
+
+例子:
+-
+
- 下载单个文件 +
aria2c https://example.com/file.iso
+
+-
+
- 指定保存路径和文件名 +
aria2c -d ~/Downloads -o ubuntu.iso https://releases.ubuntu.com/24.04/ubuntu.iso
+
+-
+
- 同时下载多个文件 +
aria2c https://example.com/file1.zip https://example.com/file2.zip
+
+-
+
- 从文件读取 URL 列表 +
aria2c -i urls.txt
+
+(urls.txt 每行一个链接)
-
+
- 下载 torrent 文件 +
aria2c ubuntu.torrent
+
+-
+
- 下载磁力链接 +
aria2c "magnet:?xt=urn:btih:xxxxx..."
+
+-
+
- 限制 BT 上传 +
aria2c --max-upload-limit=50K ubuntu.torrent
+
浏览器插件
-如果你想让其直接接管浏览器下载,可以使用以下几种浏览器插件:
+如果你想让其直接接管浏览器下载,可以使用以下几种浏览器插件,它们都自带面板:
Chrome 浏览器
-
-
- Aria2 Explorer是一款功能强大的扩展,能够自动拦截浏览器的下载任务,并通过 JSON-RPC 接口将其导出到 Aria2 进行下载。 -
- Aria2 for Chrome +
- Aria2 Explorer是一款功能强大的扩展,能够自动拦截浏览器下载任务并自带Aria2-NG面板。
Firefox 浏览器
-
-
- Integrated Aria2 Download Manager 是一款 Firefox 扩展,能够拦截下载任务,并将其转发到 Aria2。 -
通用版
--
-
- varia -
🔗
-附带 aria2 的服务端应用
--
-
- AriaNg for Openwrt -
- aria2-ariang-docker +
- Aria2-Integration也是一款 Firefox 拓展,拦截下载任务的同时带有 Aria2-NG面板,方便使用。
++注意!如果你前面配置中设置了rpc的密码,需要在面板中也写入才可连接成功。
+

面板
+如果你不想使用浏览器插件,也可以使用aria2+独立面板的方法,但这样就不能接管浏览器的下载,适合其他环境使用。
+这里推荐使用 AriaNg 前端,AriaNg 使用纯 html & javascript 开发, 所以其不需要任何编译器或运行环境.
+
AriaNg 现在提供三种版本, 标准版、单文件版和 AriaNg Native. 标准版适合在 Web 服务器中部署, 提供资源缓存和按需加载的功能. 单文件版适合本地使用, 您下载后只要在浏览器中打开唯一的 html 文件即可. AriaNg Native 同样适合本地使用, 并且不需要使用浏览器.这里建议使用单文件版或者Native版,下之后打开其中的html并设为书签即可。
Done.
diff --git a/public/pagefind/fragment/en_7048507.pf_fragment b/public/pagefind/fragment/en_7048507.pf_fragment new file mode 100644 index 0000000..ec58bf0 Binary files /dev/null and b/public/pagefind/fragment/en_7048507.pf_fragment differ diff --git a/public/pagefind/fragment/en_a7d2e07.pf_fragment b/public/pagefind/fragment/en_a7d2e07.pf_fragment deleted file mode 100644 index 2131f4e..0000000 Binary files a/public/pagefind/fragment/en_a7d2e07.pf_fragment and /dev/null differ diff --git a/public/pagefind/index/en_1a222ef.pf_index b/public/pagefind/index/en_1a222ef.pf_index new file mode 100644 index 0000000..9534d77 Binary files /dev/null and b/public/pagefind/index/en_1a222ef.pf_index differ diff --git a/public/pagefind/index/en_458921d.pf_index b/public/pagefind/index/en_458921d.pf_index deleted file mode 100644 index d3ab12d..0000000 Binary files a/public/pagefind/index/en_458921d.pf_index and /dev/null differ diff --git a/public/pagefind/index/en_4fc9c25.pf_index b/public/pagefind/index/en_4fc9c25.pf_index new file mode 100644 index 0000000..1c2247b Binary files /dev/null and b/public/pagefind/index/en_4fc9c25.pf_index differ diff --git a/public/pagefind/index/en_5b10636.pf_index b/public/pagefind/index/en_5b10636.pf_index new file mode 100644 index 0000000..b6dce6d Binary files /dev/null and b/public/pagefind/index/en_5b10636.pf_index differ diff --git a/public/pagefind/index/en_754c485.pf_index b/public/pagefind/index/en_754c485.pf_index deleted file mode 100644 index 95f9738..0000000 Binary files a/public/pagefind/index/en_754c485.pf_index and /dev/null differ diff --git a/public/pagefind/index/en_78d4526.pf_index b/public/pagefind/index/en_78d4526.pf_index new file mode 100644 index 0000000..fc195de Binary files /dev/null and b/public/pagefind/index/en_78d4526.pf_index differ diff --git a/public/pagefind/index/en_97d2f69.pf_index b/public/pagefind/index/en_97d2f69.pf_index deleted file mode 100644 index aa4b1a0..0000000 Binary files a/public/pagefind/index/en_97d2f69.pf_index and /dev/null differ diff --git a/public/pagefind/index/en_c059996.pf_index b/public/pagefind/index/en_c059996.pf_index deleted file mode 100644 index 35ed69c..0000000 Binary files a/public/pagefind/index/en_c059996.pf_index and /dev/null differ diff --git a/public/pagefind/index/en_e2ee7e8.pf_index b/public/pagefind/index/en_e2ee7e8.pf_index new file mode 100644 index 0000000..f9d7bb0 Binary files /dev/null and b/public/pagefind/index/en_e2ee7e8.pf_index differ diff --git a/public/pagefind/pagefind-entry.json b/public/pagefind/pagefind-entry.json index c162131..a4816cb 100644 --- a/public/pagefind/pagefind-entry.json +++ b/public/pagefind/pagefind-entry.json @@ -1 +1 @@ -{"version":"1.3.0","languages":{"en":{"hash":"en_71429e4e20","wasm":"en","page_count":93}}} \ No newline at end of file +{"version":"1.3.0","languages":{"en":{"hash":"en_a5a6d11e14","wasm":"en","page_count":93}}} \ No newline at end of file diff --git a/public/pagefind/pagefind.en_71429e4e20.pf_meta b/public/pagefind/pagefind.en_71429e4e20.pf_meta deleted file mode 100644 index 12279db..0000000 Binary files a/public/pagefind/pagefind.en_71429e4e20.pf_meta and /dev/null differ diff --git a/public/pagefind/pagefind.en_a5a6d11e14.pf_meta b/public/pagefind/pagefind.en_a5a6d11e14.pf_meta new file mode 100644 index 0000000..b727b24 Binary files /dev/null and b/public/pagefind/pagefind.en_a5a6d11e14.pf_meta differ diff --git a/static/images/aria2-rpc.webp b/static/images/aria2-rpc.webp new file mode 100644 index 0000000..f82cfe8 Binary files /dev/null and b/static/images/aria2-rpc.webp differ