歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

pacman終極提速--metalink

首先介紹一個下載器--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 $1awk -F '/' '{ print $NF }'` echo Downloading: $filesed 's,/,,' repo=`echo $1awk -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/pacman.d/$repo ]; then        mirrors=`sed -n 's/^Server = //; s,$,/'"$file"', ; /^ftp/p; /^http/p' /etc/pacman.d/$repo`        fi fi aria2c -t20 -m2 -l /var/log/pacget.log $mirrors -o $file.pacget if [ -f $cachedir/$file.pacget.aria2 ]; then       rm $cachedir/$file.pacget $cachedir/$file.pacget.aria2       exit 0 fi mv $file.pacget $2 exit 0 這個腳本是將/etc/pacman.d下的pacman服務器列表生成每個下載文件的服務器列表。並且調用aria2下載指定包。別忘了將這個文件放置在/usr/bin下,並且加上可執行權限:chmod +x pacget然後,修改/etc/pacman.conf文件,指定下載器為pacget:XferCommand = pacget %u %o接下來,就可以以平常的方式使用pacman了。不過pacman自己帶的服務器列表比較老,很多服務器不是不存在了就是更新慢,有些我們這裡根本連不上。不符合中國"國情"。服務器貴精不貴多,我這裡給出幾個更新還算及時,速度還算可以的服務器(國外的,本人是網通): 代碼:

http://ftp.belnet.be/linux/archlinux http://mirror.cs.vt.edu/pub/ArchLinux http://mirrors.easynews.com/linux/archlinux http://distro.ibiblio.org/pub/linux/distributions/archlinux http://ftp.gigabit.nu/archlinux將這幾個服務器替換到你的/etc/pacman.d/下的服務器列表文件即可。




Copyright © Linux教程網 All Rights Reserved