简介

aria2是一个轻量级的多协议和多源命令行 下载实用程序。它支持HTTP / HTTPS,FTP,SFTP, BitTorrent和Metalink。aria2可以通过内置的 JSON-RPC和XML-RPC接口进行操作。

特征

1、多连接下载

aria2可以从多个源/协议下载文件,并尝试利用您的最大下载带宽。真正加快您的下载体验。

2、轻量级

aria2不需要太多内存和CPU时间。当磁盘高速缓存关闭时,物理内存使用量通常为4MiB(正常HTTP / FTP下载)到9MiB(BitTorrent下载)。下载速度为2.8MiB /秒的BitTorrent的CPU使用率约为6%。

3、功能齐全的BitTorrent客户端

您可以在BitTorrent客户端中使用所有功能:DHT,PEX,加密,磁体URI,Web播种,选择性下载,本地对等发现和UDP跟踪器。

4、Metalink已启用

aria2支持Metalink下载格式 (又名Metalink v4),Metalink版本3和 Metalink / HTTP。Metalink提供文件验证,HTTP / FTP / SFTP / BitTorrent集成以及语言,位置,操作系统等的各种配置。

5、遥控器

aria2支持RPC接口来控制aria2进程。支持的接口是JSON-RPC(通过HTTP和WebSocket)和XML-RPC。

普通tcp/ip协议下载方式

1、从WEB下载:

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

2、从2个来源下载:

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

3、每个主机使用2个连接下载:

aria2c -x2 http://a/f.iso

注:下载https链接文件方式与上边命令一样直接命令加链接即可!

p2p协议下载方式

简介

比特流(BitTorrent)是一种内容分发协议,由布拉姆·科恩自主开发。它采用高效的软件分发系统和点对点技术共享大体积文件(如一部电影或电视节目),并使每个用户像网络重新分配结点那样提供上传服务。一般的下载服务器为每一个发出下载请求的用户提供下载服务,而BitTorrent的工作方式与之不同。分配器或文件的持有者将文件发送给其中一名用户,再由这名用户转发给其它用户,用户之间相互转发自己所拥有的文件部分,直到每个用户的下载都全部完成。这种方法可以使下载服务器同时处理多个大体积文件的下载请求,而无须占用大量带宽。

原理简述

1、普通的HTTP/FTP下载使用TCP/IP协议,BitTorrent协议是架构于TCP/IP协议之上的一个P2P文件传输协议,处于TCP/IP结构的应用层。 BitTorrent协议本身也包含了很多具体的内容协议和扩展协议,并在不断扩充中。

2、根据BitTorrent协议,文件发布者会根据要发布的文件生成提供一个torrent文件,即种子文件,也简称为"种子"。

3、.torrent文件本质上是文本文件,包含Tracker信息和文件信息两部分。Tracker信息主要是BT下载中需要用到的Tracker服务器的地址和针对Tracker服务器的设置,文件信息是根据对目标文件的计算生成的,计算结果根据 BitTorrent协议内的B编码规则进行编码。它的主要原理是需要把提供下载的文件虚拟分成大小相等的块,块大小必须为2k的整数次方(由于是虚拟分块,硬盘上并不产生各个块文件),并把每个块的索引信息和Hash验证码写入种子文件(.torrent)中。所以,种子文件(.torrent)就是被下载文件的"索引"。

1、BitTorrent(p2p协议)的文件:

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

磁力链接下载方式

简介

磁力链接,简单的说(Magnet URI scheme):类似下面这样以"magnet:?xt=urn:btih:"开头的字符串,就是一条磁力链接;确切的说:"磁力链接"的主要作用是识别【能够通过"点对点技术(即:P2P)"下载的文件】。这种链接是通过不同文件内容的Hash结果生成一个纯文本的"数字指纹",来识别文件的。而不是基于文件的位置或者名称。

特点

1、众所周知,BT下载速度不够稳定,当中断种时则无法完整下载。但是,这还不是最严重的。

2、从2009年开始,BT下载遭遇到了"更大的困难"--很多的BT服务器被关,不仅很多种子文件无法找到,BT Tracker服务器也断开解析工作,这就使得BT下载成为很大的难题。

3、磁力链接很好地解决了这个问题。磁力链接的问世与大行其道,标志着BT 1.0时代已经过去,BT 2.0 时代已经到来。

深刻理解磁力链接

简单地说,磁力链接是一种特殊链接,但是它与传统基于文件的位置或名称的普通链接(如http://xxx)不一样,它只是通过不同文件内容的Hash结果生成一个纯文本的"数字指纹",并用它来识别文件。它类似于生活消费品包装上常见的条码,不同的是这个"数字指纹"可以被任何人从任何文件上生成,这也就注定了磁力链接不需要任何"中心机构"的支持(例如:BT Tracker服务器),且识别准确度极高。

1、BitTorrent磁铁URI:

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

metalink知识库下载方式

简介

Metalink是Oracle的官方技术支持站点Oracle公司通过该网站来支持全球的客户,据Oracle公司的统计资料,据说80%的技术问题都是通过Metalink网上解决的。

站点标准

1、Anthony Bryan 的 MetaLink 是个开放标准,并非直白的下载客户端(比方 FlashGet,eMule 或者 GetRight 等等),其中支持多种协议和多 source,能让下载速度更快,算更上一层楼。现在已支持的协议有 http,ftp,rsync,BT,ed2k 和 magnet,这样目前最流行的软件发布方法都能从中收益。

2、支持 MetaLink 发布的软件会提供一个 .metalink 的 XML 文件,支持 MetaLink 的客户端就从中获得提供这个软件的所有 source 的 URL。为了保证多协议和多 source 提供的文件完整性,MetaLink 使用 MD5SUM, SHA1SUM 和 PGP 签名验证文件,传输错误或者 source 的问题都可以避免。

3、软件发布者可以从在线的 MetaLink Creator 创建要发布文件的 .metalink 文件,本地客户端在 MetaLink 网站也提供。我想唯一的麻烦是,现在支持 MetaLink 的客户端还不多,有 Linux 下的 aria2 ,老牌的 GetRight ,Mac 上的 Speed Download ,还有跨平台的 wxDownload Fast ,Firefox 的 FlashGot 插件也支持。

4、目前 OpenOffice 已经支持 MetaLink 发布,有些 Linux 发行版(多数不是非常有影响力)也开始用 MetaLink 发布,Packages则提供了不少软件的 MetaLink 连接,其中已经有 Fedora Core 6,Ubuntu 和 OpenSuse。

5、Metalink标准体现在一个扩展名是.metalink的XML文件,这个文件里记录着下载的URL信息。这个文件里记录着你想下载的文件的镜像服务器的地址。除了支持HTTP和FTP的镜像地址外,Metalink还支持着包括BitTorrent,ed2k和magnet links在内的P2P下载源的信息。在OpenOffice发布的metalink文件中就包含了50多条HTTP和FTP镜像服务器地址和一个torrent文件地址。在使用普通的下载链接下载OpenOffice的时候,如果服务器在下载过程中因为某种原因连接不上了,势必造成下载失败的结果,而是否能断点需传下载了一半的文件还要依赖于所使用的下载工具的性能。而如果是借助于metalink文件的下载,则可避免这种情况的发生。如果一台服务器中断了连接,下载客户端还可以通过metalink文件找到其他的下载链接来继续完成下载。这样就大大的提高了下载的成功性。毕竟列举出的所有服务器都不能连接的情况是几乎不可能发生的。而且,通过metalink下载的文件可以被自动校验。MetaLink 使用 MD5SUM, SHA1SUM 和 PGP 签名验证文件,这些校验信息都包含在.metalink文件中。校验信息就像人类的指纹一样,对于每个文件来说,是唯一的。如果在下载过程中出现了任何传输错误或者是服务器上的文件被替换了,校验信息都会匹配失败。如果使用传统的方式下载,在校验失败后,你必须要寻找下载地址来重新下载文件。但是使用Metalink下载,情况就不同了。比如说,你要下载的文件的metalink文件里包含了一个torrent文件信息,Metalink就可以利用这个torrent文件的块校验机制来校验镜像地址对应的文件。如果下载过程中有一个块的下载出错了,Metalink可以及时的发现,并立即重新下载这个块而不是在下载完成时才发现错误而重新下载整个文件。

6、发布metalink文件软件的发布者可以通过创建一个后缀名为.metalink文件来发布自己产品的下载信息。这个.metalink文件实际上是一个中包含了下载链接地址和下载优先级的XML文件。文件格式很简单,可以手工编辑,也可以借助于在线的Metalink创建工具Metalink Creator来创建。只要填写需要的信息可以完成你自己的metalink文件了。在这个在线的Metalink创建工具Metalink Creator 里,还提供了几个跨平台的应用和Perl 脚本 。一旦创建了.metalink文件,发布者就可以添加MIME 类型 ("application/metalink+xml") 到他们的服务器了。这将帮助使用着用他们的下载客户端来下载并打开metalink文件了。如果不设置MIME类型,当点击metalink文件的URL时,metalink文件将以文本的形式被浏览器打开,而不是被下载工具下载。还有一个小技巧,软件发布者可以定义下载地址的优先级。比如说,给torrent文件设置更高的下载优先权,可以帮助发布者节省带宽,但是,如果所有的种子都停止共享了,下载会自动启动HTTP/FTP下载。

文件的使用

1、普通的下载客户端都可以很容易的将.metalink文件下载到计算机上。然而,您可以使用支持metalink下载的下载工具。目前,Linux平台的用户可以选择aria2 client (命令行界面), wXDownload Fast client (图形界面),或者使用Flashgot, KGet2也即将支持metalink的下载。这里是其他操作系统平台上支持metalink下载的工具列表。

2、此处有一个列表,列出了提供了.metalink文件下载的项目。OpenOffice从7月开始提供了metalink文件给各种推广渠道。除了下载ISO文件和软件的安装包外,Metalink文件还可以做为升级包使用。Arch Linux 准备在它的升级管机制中使用metalink文件,来保证快速和稳定的升级包下载 。

1、Metalink知识库:

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

2、下载文本文件中的URI:

aria2c -i uris.txt

aria2 yum安装方式

1、安装 epel 源

yum install epel-release

2、安装aria2

yum -y install aria2