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

Unix/Linux
Solaris系统性能问题
定时任务
SA299考前简要总结
2005.8.22 310-015考试在TK中出现的原题或类似的题
My sumarization after passing the exam of 310-015
博客序言
SM240 课程内容及学习目标
SA399课程介绍及学习目标
Solaris9的jumpstart服务器配置中文详解(转载自CU)
SA399第一章读书笔记
SA399第二章读书笔记
精灵王的提醒
步长法-解决判断循环链表
SA399第三章读书笔记
真令人惊讶
Solaris介绍(转载)
VxVM中的底层建卷
转: Solaris 10 安装及SVC管理及X及Vmware及其它可能遇到的一些问题
Solaris学习笔记(2)
小型机内存与pc机内存区别

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 79 ::
收藏到网摘: 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/