论坛: UNIX系统 标题: ports问题,实在太慢了。在国内有加快下载速度的方法吗 复制本贴地址    
作者: jk [li3645636]    论坛用户   登录
用ports安装个apache22,用了近1个小时。如果下载源码安装也不用这么慢的。求加快速度的方法。谢谢佬大了。我是刚从linux转过来的。
以前都是yum install rpmname
或者;tar -zxvf *.tar.gz
cd path
./configure
make
make install

freebsd的port安装方式实在太慢了。求加快速度的方法。

20cn的pf手册打不开了。来自名门之后的openbsd防火墙.


[此贴被 jk(li3645636) 在 07月19日22时40分 编辑过]

地主 发表时间: 08-07-19 22:37

回复: NetDemon [netdemon]   ADMIN   登录
ports 是下载源代码并在本机编译的方法,我想你说的慢,是因为有大量的时间花费在下载代码上面了,因为默认是到国外下载的。

对于每一个ports ,你可以cat distinfo ,那里显示需要下载的原文件名字,你自己手工下载并放到 /usr/ports/distfiles 下面,这样make的时候就不需要去下载源代码了

另外BSD也有linux的rpm类似的方式,叫PACKAGE,用pkg_add pkg_delete 安装,卸载一个已经编译好的package.这些你可能用到package 能够在freebsd的ftp上下载到,包括apache mysql php postfix ....


B1层 发表时间: 08-07-19 23:47

回复: jk [li3645636]   论坛用户   登录
用迅雷下载。然后将port复制到目标机上/usr/ports/distfiles 目录

cd /usr/ports/distfiles
tar -zxvf apache2.2-9.tar.gz
cd apache*
./configure --prefix=/usr/local/httpd \
--enable=so
make
make install
这是源码安装方式,如果要手动启动apache,得去修改rc.conf,添加/usr/local/httpd/bin/apachectl start
这是管理员的方法。
-------------------------------------------------------------------------------------

# cd /usr/ports/www/apache22
# make install
# make clean
如果是系统默认的ports安装方式,直接apaceh_enable="yes"就可以启动了.

如果是pkg_add -r apache22,r参数也是从网络下载,但参数非自行定制。


问题,ports哪里可以手动下载,比喻在xp的机器上先下载好ports,然后复制到要安装的机器上,从本地安装。速度快,而且不用修改。直接在rc.conf里添加apache_enable="YES"






[此贴被 jk(li3645636) 在 07月20日01时17分 编辑过]

B2层 发表时间: 08-07-20 01:14

回复: NetDemon [netdemon]   ADMIN   登录
是用迅雷下载。然后将apache2.2-9.tar.gz复制到目标机上/usr/ports/distfiles 目录

然后直接就
# cd /usr/ports/www/apache22
# make install
# make clean
而不是在/usr/ports/distfiles 下面XXXXXXX


ports 是一个获取源代码,自动修改源代码让他更适合BSD,检查程序依赖性,编译源代码,安装编译好2进制文件的一个过程,ports下的每一个文件都是在描述上述这4个过程的。他也是一种源码安装方式,只不过比默认的源码安装方式更加适合BSD。他也需要一个源代码的发行包。

ports哪里可以手动下载?
url在ports/Mk/bsd.sites.mk 中
文件名在/usr/ports/xxx/distinfo中

cat /usr/ports/www/apache22/distinfo 得到 apache22的源代码文件名
cat /usr/ports/Mk/bsd.sites.ml | grep apache 得到该文件所有可以下载的URL


B3层 发表时间: 08-07-20 18:23

回复: NetDemon [netdemon]   ADMIN   登录
如果你要安装apache
那么你要下载的.bz2 的那个而不是.tar.gz 那个

你要保证你放到/usr/ports/distfiles/下面的那个文件和distinfo 中描述的完全一致


B4层 发表时间: 08-07-20 18:28

回复: jk [li3645636]   论坛用户   登录
明白意思了。
如果用缺省的ports安装apache.程序首先会寻找/usr/ports/distfiles目录,查看是否已有此文件。如果无,则查找/usr/ports/Mk/bsd.sites.ml文件,查看下载文件的链接。下载完成之后将文件保存至/usr/ports/distfiles目录。如果要从本地从ports安装,则下载的文件名与/usr/ports/www/apache/distinfo里所示的文件名一样。否则不能ports安装。

cat /usr/ports/Mk/bsd.sites.ml    //此文件有所有软件的下载链接地址,可用grep 关键字

默认的ports下载地址应该是从美国。可以将镜像改为国内吧.
ftp.cn.freebsd.org
这个属性可以在哪修改

[此贴被 jk(li3645636) 在 07月20日18时54分 编辑过]


[此贴被 jk(li3645636) 在 07月20日18时55分 编辑过]

B5层 发表时间: 08-07-20 18:53

回复: NetDemon [netdemon]   ADMIN   登录
既然是ports,就意味着,那并不是freebsd本身的文件,不同的ports是在不同的地方下载的,很少从freebsd本身的服务器上下载,改一个地方是没用的

B6层 发表时间: 08-07-21 06:51

回复: buntu [celeron]   论坛用户   登录
看到有对ports下载加速的方法,不知道老大用的是什么方法来解决这个下载慢的问题的。

B7层 发表时间: 08-07-22 09:16

回复: jk [li3645636]   论坛用户   登录
加快的方法就是用下载软件下载。复制到目标/usr/ports/distfiles


B8层 发表时间: 08-07-23 19:44

回复: Later [yaochi]   论坛用户   登录
把这个加到你的 /etc/make.conf 文件中,以后PORTS会先检测载国内镜象,若没有,再下PORTS中确认的目录的。

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


B9层 发表时间: 08-09-10 16:14

论坛: UNIX系统

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号