使用百度下载东西难免受到限速的影响很是不爽,在ubuntu上又没有百度云客户端,导致云盘中的资源下载不下来,然后百度发现了aria2,下面是安装过程
下载源码编译安装
先去github上下载压缩包1.33.1链接
然后执行如下命令
tar zxvf aria2.tar.gz #解压cd /aria2-1.34.0 #进入解压目录./configuremakemake install
编写配置文件
mkdir /root/aria2touch /root/aria2/aria2.sessionvim /root/aria2/aria2.conf
下面内容为配置文件内容:
## 文件保存相关 ### 文件的保存路径(可使用绝对路径或相对路径), 默认: 当前启动位置dir=/root/Downloads# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16Mdisk-cache=32M# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc# 预分配所需时间: none < falloc ? trunc < prealloc# falloc和trunc则需要文件系统和内核支持# NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项file-allocation=trunc# 断点续传continue=true## 下载连接相关 ### 最大同时下载任务数, 运行时可修改, 默认:5max-concurrent-downloads=10# 同一服务器连接数, 添加时可指定, 默认:1max-connection-per-server=10# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M# 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载min-split-size=20M# 单个任务最大线程数, 添加时可指定, 默认:5split=10# 整体下载速度限制, 运行时可修改, 默认:0max-overall-download-limit=0# 单个任务下载速度限制, 默认:0max-download-limit=0# 整体上传速度限制, 运行时可修改, 默认:0max-overall-upload-limit=500K# 单个任务上传速度限制, 默认:0max-upload-limit=100K# 禁用IPv6, 默认:falsedisable-ipv6=false## 进度保存相关 ### 从会话文件中读取下载任务input-file=/root/aria2/aria2.session# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件save-session=/root/aria2/aria2.session# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0save-session-interval=60# 强制保存会话, 即使任务已经完成, 默认:false# 较新的版本开启后会在任务完成后依然保留.aria2文件force-save=truebt-hash-check-seed=truebt-seed-unverified=truebt-save-metadata=true## RPC相关设置 ### 启用RPC, 默认:falseenable-rpc=true# 允许所有来源, 默认:falserpc-allow-origin-all=true# 允许非外部访问, 默认:falserpc-listen-all=true# 事件轮询方式, 取值:[epoll, kqueue, port, poll, select], 不同系统默认值不同event-poll=select# RPC监听端口, 端口被占用时可以修改, 默认:6800rpc-listen-port=6800# 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项rpc-secret=csdn2017## BT/PT下载相关 ### 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:truefollow-torrent=true# BT监听端口, 当端口被屏蔽时使用, 默认:6881-6999listen-port=19999# 单个种子最大连接数, 默认:55bt-max-peers=100# 打开DHT功能, PT需要禁用, 默认:trueenable-dht=true# 打开IPv6 DHT功能, PT需要禁用enable-dht6=false# DHT网络监听端口, 默认:6881-6999dht-listen-port=6881-6999# 本地节点查找, PT需要禁用, 默认:falsebt-enable-lpd=true# 种子交换, PT需要禁用, 默认:trueenable-peer-exchange=true# 每个种子限速, 对少种的PT很有用, 默认:50Kbt-request-peer-speed-limit=50K# 客户端伪装, PT需要peer-id-prefix=-TR2770-user-agent=Transmission/2.77# 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0seed-ratio=0.2# BT校验相关, 默认:truebt-hash-check-seed=true# 继续之前的BT任务时, 无需再次校验, 默认:falsebt-seed-unverified=true# 保存磁力链接元数据为种子文件(.torrent文件), 默认:falsebt-save-metadata=false#强制加密, 防迅雷必备bt-require-crypto=true#添加额外tracker##bt-tracker=
启动
aria2c --conf-path=/root/aria2/aria2.conf -D
浏览器插件
火狐附加组件管理->搜索百度网盘助手->添加到firefox
这是打开百度网盘会出现如下图所示的图标
点击到处下载->设置,在下图中修改rpc的token,和ip即可,其中token要和上文配置文件中的rpc-secret的值保持一致


WebUI
aria2c自己提供了一个web界面地址是:http://aria2c.com/
界面如下图

点击右侧的设置(扳手),和上文浏览器插件的设置一样,填写自己的ip和token;
上面那个自带的感觉不好用:
火狐搜索:aria2
找到如下带有闪电图标的组件添加到火狐中

插件安装完成后,进行配置,点击首选项->rpc服务器->默认服务器
在该界面添加自己aria的服务端信息,ip,端口,秘钥
使用
aria2c http://AAA.BBB.CCC/file.zip 普通下载aria2c -s 2 http://AAA.BBB.CCC/file.zip 开2个线程下载aria2c http://AAA.BBB.CCC/file.zip ftp://DDD.EEE.FFF/GGG/file.zip 从不同的地址下载同一文件aria2c http://AAA.BBB.CCC/file.zip ftp://DDD.EEE.FFF/GGG/file.zip 支持不同的协议下载同一文件aria2c -o test.torrent http://AAA.BBB.CCC/file.torrent 下载BT种子aria2c --max-upload-limit 40K -T file.torrent 设定BT最大上传速度aria2c http://AAA.BBB.CCC/file.metalink 从metalink下载文件
使用不同的名字保存文件
在初始化下载的时候,我们可以使用-o(小写)选项在保存文件的时候使用不同的名字。这儿我们将要使用 owncloud.zip 文件名来保存文件。
# aria2c -o owncloud.zip https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#d31304 16MiB/21MiB(74%) CN:1 DL:6.2MiB]03/22 09:51:02 [NOTICE] Download complete: /opt/owncloud.zipDownload Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================d31304|OK | 7.3MiB/s|/opt/owncloud.zipStatus Legend:(OK):download completed.
下载多个文件
下面的命令将会从指定位置下载超过一个的文件并保存到当前目录,在下载文件的过程中,我们可以看到文件的(日期、时间、下载速度和下载进度)。
# aria2c -Z https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2 ftp://ftp.gnu.org/gnu/wget/wget-1.17.tar.gz[DL:1.7MiB][#53533c 272KiB/21MiB(1%)][#b52bb1 768KiB/3.6MiB(20%)]03/22 10:25:54 [NOTICE] Download complete: /opt/wget-1.17.tar.gz[#53533c 18MiB/21MiB(86%) CN:1 DL:3.2MiB]03/22 10:25:59 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================b52bb1|OK | 2.8MiB/s|/opt/wget-1.17.tar.gz53533c|OK | 3.4MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
使用 -P 参数来扩展下载地址:
[11:30 sxuan@hulab ~/gatk4_practice]$ aria2c -Z -P "http://host/image{1,2,3}_{A,B,C}.png"5da2af|ERR | 0B/s|http://host/image1_A.png%0A3c98a4|ERR | 0B/s|http://host/image1_B.png%0A17ba0a|ERR | 0B/s|http://host/image1_C.png%0Ae7afa3|ERR | 0B/s|http://host/image2_A.png%0Ae99fcf|ERR | 0B/s|http://host/image2_B.png%0A1f151a|ERR | 0B/s|http://host/image2_C.png%0A2da0f1|ERR | 0B/s|http://host/image3_A.png%0A17b599|ERR | 0B/s|http://host/image3_B.png%0Ad9f5ad|ERR | 0B/s|http://host/image3_C.png%0A
续传未完成的下载
当你遇到一些网络连接问题或者系统问题的时候,并将要下载一个大文件(例如: ISO 镜像文件),我建议你使用 -c 选项,它可以帮助我们从该状态续传未完成的下载,并且像往常一样完成。不然的话,当你再次下载,它将会初始化新的下载,并保存成一个不同的文件名(自动的在文件名后面添加 .1 )。注意:如果出现了任何中断,aria2 使用 .aria2 后缀保存(未完成的)文件。
# aria2c -c https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#db0b08 8.2MiB/21MiB(38%) CN:1 DL:3.1MiB ETA:4s]^C03/22 10:09:26 [NOTICE] Shutdown sequence commencing... Press Ctrl-C again for emergency shutdown.03/22 10:09:26 [NOTICE] Download GID#db0b08bf55d5908d not complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================db0b08|INPR| 3.3MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(INPR):download in-progress.如果重新启动传输,aria2 将会恢复下载。# aria2c -c https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#873d08 21MiB/21MiB(98%) CN:1 DL:2.7MiB]03/22 10:09:57 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================873d08|OK | 1.9MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
从文件获取输入
就像 wget 可以从一个文件获取输入的 URL 列表来下载一样。我们需要创建一个文件,将每一个 URL 存储在单独的行中。aria2 命令行可以添加 -i 选项来执行此操作。
# aria2c -i test-aria2.txt[DL:3.9MiB][#b97984 192KiB/21MiB(0%)][#673c8e 2.5MiB/3.6MiB(69%)]03/22 10:14:22 [NOTICE] Download complete: /opt/wget-1.17.tar.gz[#b97984 19MiB/21MiB(90%) CN:1 DL:2.5MiB]03/22 10:14:30 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================673c8e|OK | 4.3MiB/s|/opt/wget-1.17.tar.gzb97984|OK | 2.5MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
每个主机使用两个连接来下载
默认情况,每次下载连接到一台服务器的最大数目,对于一条主机只能建立一条。我们可以通过 aria2 命令行添加 -x2(2 表示两个连接)来创建到每台主机的多个连接,以加快下载速度。
# aria2c -x2 https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#ddd4cd 18MiB/21MiB(83%) CN:1 DL:5.0MiB]03/22 10:16:27 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================ddd4cd|OK | 5.5MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
从密码保护的网站下载一个文件
或者,我们也可以从一个密码保护网站下载一个文件。下面的命令行将会从一个密码保护网站中下载文件。
# aria2c --http-user=xxx --http-password=xxx https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2# aria2c --ftp-user=xxx --ftp-password=xxx ftp://ftp.gnu.org/gnu/wget/wget-1.17.tar.gz
