Chinaunix首页 | 论坛 | 博客
  • 博客访问: 451301
  • 博文数量: 116
  • 博客积分: 2756
  • 博客等级: 少校
  • 技术积分: 1163
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-29 21:21
文章分类

全部博文(116)

文章存档

2018年(1)

2017年(1)

2016年(30)

2015年(41)

2014年(23)

2011年(7)

2010年(9)

2008年(4)

分类: BSD

2008-07-29 21:24:14

此文已经被红联社区抄袭过去了,

但是这篇文章是我写的!

本来希望版主加到faq里面,但是版主可能没有看见,或者是水平不行,

但是红联让我觉得很恶心,

并且最早写的内容里面包含一定的错误,希望不要误导群众,并且不能保证现有内容无误,

2008.9.12

fender

转载注明出处以及作者

版权:bsd licence

====================

感觉freebsd的分支比较复杂,在网上找了很多资料,问了不少的人,说一下我总结的结果。

freebsd现在(2008.7)有三个分支,分别是current、stable、release,

严格的说release不能算是一个分支,她只是stable或者是current代码树在某一个时间点的一个“快照”,

在freebsd的历史上在从stable或者是current都曾经引出过release,

但是估计以后可能只会从stable引出,

这三个分支只是指freebsd的基本系统和内核,


ports并不具体细分为哪一个分支,所有的分支都可以使用最新的ports,

但是你也别用4.x版本freebsd来的尝试安装最新的ports,因为每一个ports都有自己的要求的,

就是说具体到某一个ports可能要求某一个版本以上的release,为什么不要求某一个版本以上的stable或者是current呢,因为这两个都比最新的release还有新,


可以使用cvsup获得任意分支的freebsd的系统源代码编译后使自己的系统升级或者是降级到某一个分支和某一个分支的某一个版本,理论上说是这样,但是你不要尝试着干从4.x升到7.0这样的事情,

分支的概念只适合于你的基本系统:kernel+userland,并不适用于ports,就是说你可以使用5.x 6.x 7.0的release或者是stable、current来安装同一个版本的ports,但是最好也不要差的太远了,

小结:

1.代码树始终有current和stable,在某个时间点上会从stable(估计以后都会这样)的代码树上引出一个release(每个4个月),release只是stable分支在某个时间点上的一个快照!

2.由于release只是stable分支在某个时间点上的一个快照,所以可能同时会有多个release,这一点不要疑惑,比如目前(2008.9.12)我用的是7.0的release,也有人在使用6.3的release,最近的一个升级系统源代码(20080903)以及相应的安全公告显示6.2的release已经不在被支持提供安全更新了,但是你还是可以使用6.2release的,比如unix-center的pe860就一直使用6.2,uptime显示这个服务器已经29天没有关机了。

====================

这三个分支的特点如下:

1.current:current是项目开发的最前沿,所有新的功能以及特性都要先到这里来,这些新功能可能会被保留,也可能会被删除,总之这里是开发的最前沿,没有很高的水平不要乱弄。

2.stable:新功能和新特性在current里面经过一段时间测试以后,还需要进一步测试,进一步测试救灾stable里面进行,所以这个stable并不是稳定运行的意思,只是说功能上相对稳定,还需要进一布测试,经过长时间的测试就会形成release。

3.frelease:这个是freebsd最终给用户使用的分支,已经是经过长时间测试的,比较有保障,推荐一般用户使用,会有相关的安全维护,这些安全更新可以使用freebsd-update添加到系统当中去。

====================

freebsd系统升级的方法主要有两个:

1.cvsup升级源代码,然后重新编译。适用于release、stable、current,详细内容在handbook上有介绍,虽然只介绍了current和stable,但是cvsup也可以用于release,需要注意的是make buildworld的时候不要使用ccach,可能会无法编译基本系统,我从7.0p3到7.0p4就没有成功,平时ccache还是要用的,或者说是一定要用的。

2.freebsd-update工具,直接以二进制的方式升级基本系统,并且是在基本系统里面就自带了,但是只适合于release,不适合于current和stable,并且需要有关 维护人员做好相关的升级文件,才能使用freebsd-update,可能会比使用cvsup慢一点,但是很方便,如果对make buildworld有带你没有把握,就可以使用这个,但是还是需要重新编译内核以后使用uname才能看到效果。

另:release还可以使用最新的安装光盘来升级,这个貌似不太实用,因为要把整个光盘镜像下载下来,然后还要刻盘。

====================

总结:

所以对于多数人来说,应该跟踪release,然后使用freebsd-update来升级自己的release,当然你也可以使用cvsup来升级自己的release,区别在于freebsd-update要稍微慢一点,因为需要开发人员做好升级的文件,需要注意的是并不是只有一个release,可能同时有2个或者3个不同版本的release!

如果你想为freebsd做一些贡献,那么就跟踪stable,这样可以汇报一些bug,但是这样你只能使用cvsup,

如果你很自信又想为freebsd的开发多出点力,那就跟踪current,同样只能使用cvsup,

current不能保证编译整个系统时一定成功,stable要好一些。
阅读(1693) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:Linux入门考试题

给主人留下些什么吧!~~