当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > FreeBSD在安装ports时时间过长的解决方法

Unix/Linux
FREEBSD软件安装
FREEBSD6.0 架设FTP 服务器
FreeBSD用port安装JDK和Jboss
FreeBSD软件安装卸载工具--Ports和Packages详解
FreeBSD 里面用设置 ADSL宽带上网
FreeBSD防止ARP攻击
FreeBSD下安装J2EE开发环境
FreeBSD6.2架设FTP服务器详解
ssh 命令说明
openbsd4.1+apache+mysql+php 环境配置
OpenBSD挂载cdrom, iso, usb的方法
FREEBSD 的使用知识
Freebsd6.0下通过ports安装apache2.2.0+mysql5.1.7+php5.1.2
FreeBSD常用命令集
FreeBSD中使用QUOTA(磁盘配额)来限制用户空间
简单更新ports tree 的方法
通过posts安装 OpenSSH
谈谈FreeBSD软件安装方法
FreeBSD下一块网卡绑定多个IP的方法
BSD下vi用法详解

Unix/Linux 中的 FreeBSD在安装ports时时间过长的解决方法


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

FreeBSD在安装ports时缩短下载时间

方法A: 使用代理。

在/etc/make.conf中设置
FETCH_ENV= "HTTP_PROXY=IP[:端口]"
如果需要,在FETCH_ENV值后面加入空格,
HTTP_PROXY_AUTH=basic:*:user:password

方法B: 在其它机器上fetch

make fetch-recursive
...
然后将/usr/ports/distfiles拿走。


方法c:使用wget/axel加速你的port下载


以下所述功能均通过修改make.conf实现

对于wget
========
FETCH_CMD= wget
FETCH_BEFORE_ARGS= -c -t 1
FETCH_AFTER_ARGS=
DISABLE_SIZE=yes #这行是必要的,否则...

前面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

什么?不知道wget是什么?那就先
cd /usr/ports/ftp/wget/
make install clean

对于axel
========
同样,也可以使用axel来替换fetch来进行多线程下载
FETCH_CMD=axel
FETCH_BEFORE_ARGS= -a
FETCH_AFTER_ARGS=
DISABLE_SIZE=yes
或者只写一行
FETCH_CMD=axel -a

axel 穿透代理服务器的方法与wget一致

axel在/usr/ports/ftp/axel位置


添加更快的port下载站点
====================
另外,加上以下两行可以在让make先从更快的站点下载port

MASTER_SITE_OVERRIDE= \
ftp://ftp2.tsinghua.edu.cn/mirror/FreeBSD/ports/distfiles/\
ftp://freebsd.csie.nctu.edu.tw/pub/FreeBSD/ports/distfiles/\
ftp://ftp.hk.freebsd.org/pub/FreeBSD/ports/distfiles/\
ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/
这个是教育网的设置,公网的兄弟可以看着办啦