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

Unix/Linux
Linux教程:locate用法
wordpress 安装心得
gentoo的一些杂记
用VIM编写C/C++程序
Apache API notes
Apache API note(2)
FBI 供应商开发安全版 Linux 成本优势获青睐
来自HP的真实Linux体验的成功故事
2004全球20大安全隐患排行出炉 专家建议停用IE
启动“gnome-run”对话框
最近郁闷啊
有矢而发,触类旁通[内核学习的方法论]-- 转载自黄嘴企鹅Linux内核研究小组
linux内核阅读计划 -- based on kernel 2.6.8
IBM:大型机使用 Linux 的黄金时代即将到来
windows 环境下配置apache+mysql+php
利用crontab,系统每天定时备份mysql数据库
Linux 操作系统跑Linux慢的分析
php_mysql.dll不能注册的解决方法
距离rhce考试还有17天
决定你一生成就的二十一个信念

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 128 ::
收藏到网摘: 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/
这个是教育网的设置,公网的兄弟可以看着办啦