ubuntu交叉编译arm架构离线下载工具aria2

2019-07-13 06:52发布


最新aria2下载:aria2 github1.下载并解压最新的aria2wget https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1.tar.bz2 tar -jxv -f aria2-1.33.1.tar.bz2
  • 1
  • 2
2.编译并安装cd aria2-1.33.1 ./configure CPP="/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux/bin/arm-linux-gnueabihf-cpp" CC="/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux/bin/arm-linux-gnueabihf-gcc" CXX="/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux/bin/arm-linux-gnueabihf-g++" LD="/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux/bin/arm-linux-gnueabihf-ld" AR="/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux/bin/arm-linux-gnueabihf-ar" AS="/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux/bin/arm-linux-gnueabihf-as" RANLIB="/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux/bin/arm-linux-gnueabihf-ranlib" --prefix=/home/armmlinux/zdfwork/heiluo/aria2/aria2-1.33.1.arm/install --host=arm-linux make #等待编译完成 cd src #编译好的aria2在这里 cp aria2c /usr/local/bin有些版本在执行./configure时,可能出现checking for gcc… no checking for cc… no checking for cl.exe… no 运行下面命令,在执行一遍./configure就可以了yum install -y gcc-c++ gcc
  • 1
安装完成以后,执行下面命令,显示 
aria2 version 1.33.1 
Copyright (C) 2006, 2017 Tatsuhiro Tsujikawa 
表示成功了!aria2c -v
  • 1
3.aria2c 设置mkdir /root/aria2 touch /root/aria2/aria2.session vim /root/aria2/aria2.conf
  • 1
  • 2
  • 3
一下面内容为设置,可以对照注释进行修改## 文件保存相关 ## # 文件的保存路径(可使用绝对路径或相对路径), 默认: 当前启动位置 dir=/root/Downloads # 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M disk-cache=32M # 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc # 预分配所需时间: none < falloc ? trunc < prealloc # falloc和trunc则需要文件系统和内核支持 # NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项 file-allocation=trunc # 断点续传 continue=true ## 下载连接相关 ## # 最大同时下载任务数, 运行时可修改, 默认:5 max-concurrent-downloads=10 # 同一服务器连接数, 添加时可指定, 默认:1 max-connection-per-server=10 # 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M # 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载 min-split-size=20M # 单个任务最大线程数, 添加时可指定, 默认:5 split=10 # 整体下载速度限制, 运行时可修改, 默认:0 max-overall-download-limit=0 # 单个任务下载速度限制, 默认:0 max-download-limit=0 # 整体上传速度限制, 运行时可修改, 默认:0 max-overall-upload-limit=500K # 单个任务上传速度限制, 默认:0 max-upload-limit=100K # 禁用IPv6, 默认:false disable-ipv6=false ## 进度保存相关 ## # 从会话文件中读取下载任务 input-file=/root/aria2/aria2.session # 在Aria2退出时保存`错误/未完成`的下载任务到会话文件 save-session=/root/aria2/aria2.session # 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0 save-session-interval=60 # 强制保存会话, 即使任务已经完成, 默认:false # 较新的版本开启后会在任务完成后依然保留.aria2文件 force-save=true bt-hash-check-seed=true bt-seed-unverified=true bt-save-metadata=true ## RPC相关设置 ## # 启用RPC, 默认:false enable-rpc=true # 允许所有来源, 默认:false rpc-allow-origin-all=true # 允许非外部访问, 默认:false rpc-listen-all=true # 事件轮询方式, 取值:[epoll, kqueue, port, poll, select], 不同系统默认值不同 event-poll=select # RPC监听端口, 端口被占用时可以修改, 默认:6800 rpc-listen-port=6800 # 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项 rpc-secret=csdn2017 ## BT/PT下载相关 ## # 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true follow-torrent=true # BT监听端口, 当端口被屏蔽时使用, 默认:6881-6999 listen-port=19999 # 单个种子最大连接数, 默认:55 bt-max-peers=100 # 打开DHT功能, PT需要禁用, 默认:true enable-dht=true # 打开IPv6 DHT功能, PT需要禁用 enable-dht6=false # DHT网络监听端口, 默认:6881-6999 dht-listen-port=6881-6999 # 本地节点查找, PT需要禁用, 默认:false bt-enable-lpd=true # 种子交换, PT需要禁用, 默认:true enable-peer-exchange=true # 每个种子限速, 对少种的PT很有用, 默认:50K bt-request-peer-speed-limit=50K # 客户端伪装, PT需要 peer-id-prefix=-TR2770- user-agent=Transmission/2.77 # 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0 seed-ratio=0.2 # BT校验相关, 默认:true bt-hash-check-seed=true # 继续之前的BT任务时, 无需再次校验, 默认:false bt-seed-unverified=true # 保存磁力链接元数据为种子文件(.torrent文件), 默认:false bt-save-metadata=false #强制加密, 防迅雷必备 bt-require-crypto=true #添加额外tracker# #bt-tracker=
  • 添加上面设置之后,按下Esc键,输入:wq,保存退出。 
然后运行一下,就可以了aria2c --conf-path=/root/aria2/aria2.conf -D
  • 1
设置开机自动启动vim /etc/rc.d/rc.local
  • 1
最后一行添加aria2c --conf-path=/root/aria2/aria2.conf -D
  • 1
按下Esc,输入:wq 保存退出4.安装WEBUI 
先安装http服务yum -y install httpd chkconfig --levels 235 httpd on service httpd start下载最新WEBUI并解压wget https://github.com/ziahamza/webui-aria2/archive/master.zip yum install -y unzip unzip master.zip cp webui-aria2-master /var/www/html/ #文件夹移动到html cd /var/www/html/ mv webui-aria2-master webui #文件夹改名webui chmod 755 /var/www/html/webui

http://主机的ip/webui 访问; 
在“设置”–> “连接设置”中“主机:”后填写主机IP地址; 
如果aria2.conf配置文件中启用了RPC安全认证,需要在WEB客户端设置中填入密码令牌,否则客户端报错 
密码令牌的设置 在 # RPC相关设置 #最后一项中 
#设置的RPC授权令牌, v1.18.4新增功能, 取代 –rpc-user 和 –rpc-passwd 选项 
rpc-secret=csdn2017

ariac


项目地址:http://aria2.sourceforge.net/ 
下载地址:http://sourceforge.net/projects/aria2/files/stable/aria2-1.18.10/

介绍


Aria2是一个命令行下运行、多协议、多来源下载工具(HTTP/HTTPS、 
多链接下载。

特点


轻量,平均4-9MB内存使用量,BitTorrent下载速度2.8MiB/s时CPU占用约6%。 
全面的BitTorrent特性支持,包括 DHT, PEX, Encryption, Magnet URI, Web-Seeding,选择下载,本地资源探测。 Mtalink支持。包括File verification, HTTP/FTP/BitTorrent integration and Configuration for language, location, OS, 之类。 
是Linux下一个非常强大的多线程下载工具,支持断点及分段,支持传统的http、https、ftp协议,也同时支持BitTorrent协议,不少的网友用来下载迅雷离线文件也是不错的选择。


使用


下载

从URL中直接下载

aria2c http://example.org/mylinux.iso
  • 1

从两个来源(更多也可以)

aria2c http://a/f.iso ftp://b/f.iso
  • 1

下载BitTorrent种子

aria2c http://example.org/mylinux.torrent
  • 1

BitTorrent Magnet URI(传说中的磁铁链接)

aria2c 'magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C'
  • 1

Metalink

aria2c http://example.org/mylinux.metalink
  • 1

下载文本文件uri.text中的链接(URI)

aria2c -i uri.txt
  • 1

特殊功能

分段下载

分段下载利用 aria2 的分段下载功能可以加快文件的下载速度,对于下载大文件时特别有用。为了使用 aria2 的分段下载功能,你需要在命令中指定 s 选项。如:aria2c -s 2 http://www.mirror.tw/pub/ubuntu/releases/jaunty/ubuntu-9.04-desktop-i386.iso
  • 1
这将使用 2 个连接来下载该文件。s 后面的参数值介于 1~5 之间,你可以根据实际情况选择。

断点续传

断点续传,命令中使用 c 选项可以断点续传文件。如:aria2c -c http://www.mirror.tw/pub/ubuntu/releases/jaunty/ubuntu-9.04-desktop-i386.iso
  • 1

两种下载模式


直接下载


常用的两种模式是直接下载,比如前面我们介绍的那种命令的方式 
aria2c “http://host/file.zip” 这样,当它完成后就退出了,就像wget(估计你们也不知道吧)那样。

rpc server


另一种就是rpc server模式,特点就是,它启动之后什么都不干,然后等着从rpc接口添加任务,下载完也不退出,而是一直等着。对,就像迅雷干的那样,当然,它不会上传你硬盘上的数据。

rpc与直接下载的区别


因为第一种方式比较适合的是纯粹的程序员,因为程序员都是原生*nix,大家已经习惯了每次都要敲命令,没有命令行就没法用电脑,但是对于普通用户来说,最常用的就是第二种。

启动命令


默认启动方式

rpc方式一般启动命令是aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all -c -D
  • 1
但是,其实这个命令是不好的!不要使用这种启动方式。 
首先,用命令方式导致配置不方便修改保存, 
其次 -D导致无法看到出错信息。

推荐启动方式

推荐启动方式是使用配置文件 $HOME/.aria2/aria2.conf 。嗯,我知道路由上这个地址是无法修改或者重启后会丢失的,那么你可以放到别的地方,然后 aria2c –conf-path= 注意 填完整路径,因为鬼知道这个程序是从那个路径启动的。-D (用于后台执行, 这样ssh断开连接后程序不会退出) 只有在确认OK之后在启动脚本中使用。 
但是以上方式都是基于配置文件(即命令行)的,在图形界面上我们有更好的方法

图形界面


aria2是没有图形界面的,已知相对好用的图形界面有:

YAAM


YAAW – Yet Another Aria2 Web Frontend 
是一个纯前端实现的Aria2 Web前端界面。无需架设任何服务器,只需要在浏览器中打开即刻使用。 
项目地址:http://binux.github.com/yaaw/

webui-aria2


另一个web前端webui-aria2 
下载迅雷的配置是全局的 没有yaaw灵活 界面过于花俏 对移动设备兼容不行

YAAM和webui-aria2使用注意

①请使用chrome,firefox等现代浏览器访问。这两个东西都可以直接使用,除了看英文不爽以外,有什么必要下载回来使用?(吐槽:难道你们就不觉得webui-aria2的title总是被压成好几行,诡异的配 {MOD}(对,说的就是那个蓝 {MOD}背景,深蓝颜 {MOD}的 Use custom IP and port settings 按钮)不难看吗?)②这两个东西上的配置在重启后都会失效,因此请使用配置文件保存您的设置③图形界面基本都基于RPC模式,所以一定确定开启了RPC,IP端口可访问,并且在管理器中填写了正确的地址。④请将所有配置置于配置文件中 ,只有在确认配置无误后再加上 -D 选项⑤如果出错,请阅读出错信息! 
详细aria2配置信息请参见 
http://blog.binux.me/2012/12/aria2-examples/

uget(常用)


当然我们也可以使用其他一些下载工具,然后把aria2当做一个插件来是使用 
常用的有uget等 
网上找到的几篇uget+aria2的博客 
http://blog.csdn.net/darennet/article/details/40678527 
http://justcoding.iteye.com/blog/1651514 
uget主页:http://www.ugetdm.com/高级用法见:http://blog.csdn.net/myweishanli/article/details/42221481