Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1353053
  • 博文数量: 236
  • 博客积分: 4966
  • 博客等级: 上校
  • 技术积分: 3342
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-13 01:03
文章分类

全部博文(236)

文章存档

2017年(2)

2016年(1)

2015年(8)

2014年(11)

2013年(45)

2012年(27)

2011年(22)

2010年(31)

2009年(37)

2008年(6)

2007年(45)

2006年(1)

分类: BSD

2009-07-19 23:56:33

FreeBSD系统的一个非常方便的地方就在于它的ports,但巧的是我装系统时选的是最小模式,且忘了选装ports了,如果刚好你的系统中也没安装ports的话可用下面几种方式安装ports:

1、sysinstall--->configure----->distributions----->ports----->选择光盘或Ftp或其它的网络连接即可。
2、直接从官方站点下载ports.tar.gz再解压,这样很快。位置:ftp://ftp.freebsd.org/pub/FreeBSD/ports/ports/ports.tar.gz

装完ports之后还要记得更新是不是?比如,如果是从光盘中安装的ports那资料肯定是有点老了,就算是直接从官方下载的最新的,但以后也得更新是不是???
更新ports有两种方法:
一是使用命令:portsnap fetch extract
以后的更新则用此命令就够了:portsnap fetch update
当然也还可以放在cron里定时升级:portsnap cron
第一次使用输入portsnap fetch extract回车即可,因为有几十兆的文件需要下载,需要等待一段时间。
如果用户没有安装ports,这个命令是无效的,需要通过sysinstall来安装ports
附:在使用此命令更新时虽然第一次会慢,但也不至于慢到如此程度吧,一查,原来其默认是到portsnap.freebsd.org官方去下载,(唉,那得下到什么时候...)幸好国内还有几个源,看下面的地址,portsnap.hshh.org,portsnap2.hshh.org,portsnap3.hshh.org (网通),portsnap4.hshh.org,使用方法:直接在/etc/portsnap.conf 里面更改就行了,把其中SERVERNAME=portsnap.freebsd.org替换成SERVERNAME=portsnap.hshh.org或SERVERNAME=portsnap2.hshh.org或SERVERNAME=portsnap3.hshh.org或SERVERNAME=portsnap4.hshh.org,一般来说用第一个portsnap.freebsd.org这个地址就行了
附:make软件时也得先下载,下面这个方法可以借鉴一下,让速度快点

先下载工具axel(类快车)的安装配置
cd /usr/ports/ftp/axel
make install clean
安装好后,编译/etc/make.conf,使其生效,代替系统默认的fetch下载软件进行工作
ee /etc/make.conf
ee 为文本编辑工具,比较人性化,是FreeBSD内带的
然后添加如下内容
FETCH_CMD=axel
FETCH_BEFORE_ARGS=-n 5 -a
FETCH_AFTER_ARGS=
DISABLE_SIZE=yes
这里最主要的地方是
FETCH_BEFORE_ARGS=-n 5 -a
表示五线程下载,如果你要10个线程同时下载,就使用 -n 10 、 如果你想使用类迅雷的,从多个服务器同时下载的工具,只要加上 -Sx,x为下载的的最大源数 、 例:你想五个线程,从五个服务器进行下载就写成 、
FETCH_BEFORE_ARGS=-n 5 -S5 -a

当然得先安装cvsup是不是??

^_^如果ports都没装的话,这个就不用指望了...

直接重启也是一个办法,如果不作这几步就会提示找不到cvsup命令
接着就该更新了,先从/usr/share/examples/cvsup目录下复制一个ports-supfile文件到/root用户目录下或者/usr下,随便哪都行,然后执行
对ports进行升级,还得先配置ports-supfile文件,不然速度有点影响,原因无它,还是服务器位置问题,这个网址内有介绍中国地区的CVS服务器列表(这里只列举中国大陆地区的)http://www.freebsdchina.org/mirrors.php
中国大陆
cvsup.cn.FreeBSD.org
cvsup2.cn.FreeBSD.org
cvsup3.cn.FreeBSD.org
cvsup4.cn.FreeBSD.org
cvsup5.cn.FreeBSD.org
选择CVS服务器的时候, 最好使用如:
ping cvsup.cn.FreeBSD.org 来查看一下,相对于你, 哪个服务器更快一些, 这样可以加快更新的速度,节省时间。
# ee ports-supfile
更改一下部分:
*default host=CHANGE_THIS.FreeBSD.org #CVS服务器,改成自己需要的服务器地址就行了
*default base=/usr                   # cvsup接收文件的存放目录
*default prefix=/usr
*default release=cvs tag=. 
*default delete use-rel-suffix
ports-all
# 更新全部Ports,这个要注意一下,默认值就是它,将会更新全部Ports,
# 若只需要更新某个Ports目录,在前面加#,将它注释掉
# 将ports-all 注释后,将后面需要更新的目录前面的#去掉,这样就是单个更新
#ports-accessibility
#ports-arabic
#ports-archivers
#ports-astro
#ports-audio
#ports-benchmarks
#ports-biology
#ports-cad
#ports-chin
#....
#ports-shells
#ports-sysutils
#ports-textproc
#ports-ukrainian
#ports-vietnamese
#ports-www
#ports-x11
#ports-x11-clocks
#ports-x11-fm
#ports-x11-fonts
#ports-x11-servers
#ports-x11-toolkits
#ports-x11-wm
修改完supfile后 保存.
对src进行更新,更改stable-supfile(服务器选择稳定版本比较好)
# ee stable-supfile
方法同ports的更新

其实除了上面两个方法之外,还有一个不算办法的办法
就是直接下载ports.tar.gz后解压缩
#fetch ftp://ftp4.FreeBSD.org/pub/FreeBSD/ports/ports/ports.tar.gz
#tar -zxvf ports.tar.gz -C /usr/
特点:也是老牌的方法,比第一中方法要快些,不过往往不最新的(相对来说) 

下面总结一下
从6.0开始,freebsd升级ports就不再需要cvsup了,而是用portsnap,
一、portsnap与cvsup的区别在于:
1、portsnap有数字签名,较安全,cvsup没有。
2、portsnap是打包压缩下载,所以会比cvsup快一些,当然除了第一次使用。
建议更新方式只选择一种就行了,如果混用两种方法的话,有时候会出现一些错误,(错误引起的原因可能是两种方法中设置的服务器更新不同步引起的)其实解决方法也简单,直接把/var/db/ports*删除,然后再删除/usr/ports/下所有的,最新再重新更新过ports就行了

阅读(1181) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册