Ports安装可以说是FreeBSD下最方便的软件安装方式,其可以获取软件的最新版本并方便地安装到FreeBSD系统上。不过其美中不足的一 点就是软件的下载速度经常很慢(尤其是国内的网络带宽普遍较小的情况下)。Ports默认的下载工具是fetch,我们可以改使用其它优秀的下载工具,比 如 wget/axel,来提速Ports安装软件事的下载过程,实际效果还是比较明显的。

对于wget
=========

一、安装wget

# cd /usr/ports/ftp/wget
# make install clean


二、配置/etc/make.conf

# ee /etc/make.conf

加入:

FETCH_CMD= wget
FETCH_BEFORE_ARGS= -c -t 1
FETCH_AFTER_ARGS=
DISABLE_SIZE=yes #这行是必要的,否则fetch可能失败,参考信息

前面3行也可以换成

FETCH_CMD=wget -c -t 1

如果要wget穿透代理服务器,添加下面两行:

FETCH_ENV=http_proxy=http://proxy2.zsu.edu.cn:3128
FETCH_ENV=ftp_proxy=http://proxy2.zsu.edu.cn:3128

或者使用其他的穿越代理工具例如proxychains 或者socks5(runsocks)
对应则是FETCH_CMD=proxychains wget或runsocks wget

对于axel
========

一、安装axel

# cd /usr/ports/ftp/axel
# make install clean

二、配置/etc/make.conf

# ee /etc/make.conf

同样,也可以使用axel来替换fetch来进行多线程下载:

FETCH_CMD=axel
FETCH_BEFORE_ARGS= -n 10 -a
FETCH_AFTER_ARGS=
DISABLE_SIZE=yes

或者只写一行:

FETCH_CMD=axel -n 10 -a

axel 穿透代理服务器的方法与wget相同。

添加更快的port下载站点
=======================

在/etc/make.conf添加以下行,设置软件的优先下载站点,通过也能提升port的下载速度。

MASTER_SITE_OVERRIDE?=\
http://ports.hshh.org/${ DIST_SUBDIR }/\
http://ports.cn.freebsd.org/${ DIST_SUBDIR }/\
ftp://ftp.freeBSDchina.org/pub/FreeBSD/ports/distfiles/${ DIST_SUBDIR }/
MASTER_SITE_OVERRIDE?=${ MASTER_SITE_BACKUP }