当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > pacman终极提速--metalink

Unix/Linux
Linux远程启动
寻找Linux下的网络邻居
Linux 每次启动时钟日期就多了 8 小时
实例讲解 LILO 的配置和使用
深入解剖 LILO
在没有CD-ROM 驱动器的笔记本电脑上安装Linux
Linux 运行级init详解
把 RH 7.0 内核升级到 2.4
Linux 99问(四)
Linux内核重编译常见故障及其解决方法
Linux中文件的压缩与解压缩
Linux下如何实现IP与Mac地址的捆绑?
如何用 Linux 拨号上网
试试一张软盘可装下Linux(嵌入式Linux)
Linux 99问(三)
Linux 99问(二)
Linux 99问(一)
linux核心代码分析(系统初始化start_kernel函数)
让linux支持你的DMA66硬盘
用RPM校验文件

Unix/Linux 中的 pacman终极提速--metalink


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 159 ::
收藏到网摘: n/a

首先介绍一个下载器--aria2。
以前有一个叫做aria的下载器,有图形界面的。但是这个aria2似乎和这个aria并没有什么关系。它是命令行模式的下载工具。
pacman -S aria2
可以直接从extra仓库中安装这个软件。该软件支持多种下载方式(协议):HTTP/HTTPS/FTP/BitTorrent/Metalink
前4种就不必我介绍了,这里重点介绍Metalink。什么是Metalink呢?这里的Metalink可不是Oracle中的那个Metalink。这里的Metalink其实说简单一点,就是提供一个所有包含同一个文件的服务器列表,下载工具尝试和这些服务器建立连接,从而实现多个服务器同时下载文件。这和Windows下的迅雷很象。但是不同的是,迅雷需要一个服务器,而且服务器列表是迅雷的服务器帮你完成的,而metalink是连接本身就包含在列表文件中--或者说,列表是你手动给出的。Archlinux官方ISO下载也采用了metalink的方式。

那么好,我们该如何使用这个工具呢?首先,建立一个脚本文件,命名为pacget,脚本内容如下:
PHP 代码:
#!/bin/bash
#pacget script

rm -f *.
aria2
cachedir
=/var/cache/pacman/
pkg
file
=`echo $1|awk -F '/' '{ print $NF }'
`
echo
Downloading: $file|sed
's,/,,'
repo=`echo $1|awk -F '/' '{x=NF-3 } { print  $x }'
`
echo
repo:
$repo
if [[ $2 = *.db.tar.gz.part || $repo = "testing" ]];
then
       
echo
"(using one mirror)"
       
mirrors=$
1
else
       if [ -
f /etc/