scoop中使用aria2加速下载
scoop中使用aria2加速下载
scoop为了加快下载速度,支持使用aria2加速下载。
下载aria2
scoop install main/aria2
scoop install extras/aria-ng-gui
安装一个使用aria2加锁并带有GUI界面的下载器aria-ng(该软件内部集成了aria,不需要再额外安装)
下载之后,在scoop中开启aria2加速下载(其实,默认是开启的)
scoop config aria2-enabled $true #直接使用true,效果也一样。
开启aria2之后,安装/下载软件时报错
安装软件的时候报错
报错Download: Exception: [AbstractCommand.cc:351] errorCode=19
- 问了一下 Gemini (谷歌的大模型)其中有一个可能的结果,需要添加一个参数
--async-dns=false
,用于禁用异步DNS查询。
上面的dns我修改过,不行,而且使用wget下载的时候正常的。
- 必应搜索到了一个 aria2 的 issues,地址 https://github.com/aria2/aria2/issues/613
里面同样提到了这个参数。但是这个参数在 aria2 的帮助文档(aria2c -h
)里是没有的。
先使用 aria2 结合这个参数下载试试(这里为了测试往博客园上传了一个aria2的包,仅用于测试):
aria2c --log=D:\aria2\log.txt --dir=E:\Users\zbf\Downloads --out=aria2.zip https://files.cnblogs.com/files/blogs/743623/aria2-1.37.0-win-64bit-build1.zip
同样的报错Download: Exception: [AbstractCommand.cc:351] errorCode=19
添加--async-dns=false
参数之后再试:
aria2c --async-dns=false --log=D:\aria2\log2.txt --dir=E:\Users\zbf\Downloads --out=aria2.zip https://files.cnblogs.com/files/blogs/743623/aria2-1.37.0-win-64bit-build1.zip
ok,成功了。
接下载只要scoop在调用aria2c下载时,添加上--async-dns=false
参数就行了。
使用命令配置的方式
scoop config aria2-options "--async-dns=false"
不要使用
scoop config aria2-async-dns false
,没有这个参数,也不会生效。
或者修改配置文件 C:\Users\zbf\.config\scoop\config.json
。
{
"last_update": "2024-06-10T21:22:48.1662202+08:00",
"scoop_repo": "https://github.com/ScoopInstaller/Scoop",
"scoop_branch": "master",
"aria2-enabled": true,
"aria2-options": "--async-dns=false"
}
然后使用scoop下载一个软件试试:
scoop download extras/powertoys
ok,成功了。
scoop中关于aria2参数的配置
scoop config /?
#在scoop中,开启aria2加速下载(其实,默认是开启的)
scoop config aria2-enabled $true #直接使用true,效果也一样。
#每次下载到一台服务器的最大连接数。
scoop config aria2-max-connection-per-server 16
#用于下载的线程数(编译版好像最大到16线程,如果更大需要自己编译了)
scoop config aria2-split 16
#切片大小
scoop config aria2-min-split-size 1M
#使用Aria2c下载文件时的警告是否开启
scoop config aria2-warning-enabled $true|$false
#重试之间等待的秒数。
scoop config aria2-retry-wait 2
#其他aria2参数(再执行一次该命令,会覆盖前面的命令)
scoop config aria2-options ....