首页 » 站长随笔 » 其它资料 » 浏览内容

更新FreeBSD 6.0 Release到最新的 stable


2006-03-30 08:17:27 5,435 0 发表评论 字体: 作者:C.K.
标签: freebsd

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

更新FreeBSD 6.0 Release到最新的 stable
From:http://www.cublog.cn/u/12766/showart.php?id=70967

注意:不能使用“make world”进行更新,在FreeBSD 6.0中已经不支持这个target了,如果使用的话,会报错!
更新FreeBSD 6.0到最新的Stable大致需要以下几个步骤

1、删除以往的系统更新树(如果以前未作更新可忽略),在/usr/obj目录下。

方法是:

#cd /usr/obj
#chflags -R noschg *
#rm -rf *

另外的清除任务:如果以前更新过系统,或者更新时出现中断,运行下面的命令:

#cd /usr/src
#make cleardir
#make cleardir

2、利用cvsup同步Stable源代码树:

在/usr/share/examples/cvsup目录下找到“stable-supfile”这个文件,推荐拷贝到用户目录下面,诸如:/root,修改里面的
*default host=CHANGE_THIS.FreeBSD.org
把“CHANGE_THIS.FreeBSD.org“改成“cvsup.freebsd.org”或者”cvsup.freebsdchina.org”.
在”cvsup.freebsd.org”中,可以获得最新的stable源代码树!
运行下面的命令:
#cd /root ;转换到你修改过的stable-supfile所在的目录
#cvsup stable-supfile

3、记录更新的屏幕信息(可选)

为了了解整个的更新过程,有必要对更新时屏幕的信息进行记录,或许相关的信息,针对几个过程,推荐分别进行跟踪记录。
例如,记录buildworld的信息,可以采取下面的方式:
#script /root/mkbuildworld.out
这个命令行启动了脚本的运行记录,保存到/root/mkbuildworld.out文件中,接下来,我们只要输入命令即可!
当所有的命令运行完成后,输入:
#exit
退出脚本跟踪程序!

4、建立新的stable树:

#make buildworld ;在/usr/obj目录下建立一个全新的stable树

5、建立新的系统内核:

#make buildkernel ;建立新的stable缺省内核

6、安装新的系统内核:

#make installkernel :安装新的内核
#reboot ;重新启动系统

7,重新启动系统后,要进入单用户模式,对于FreeBSD 6 可以在启动文本菜单上选择“4”,进入单用户模式,然后输入下面的命令:
#fsck -p ;检查文件系统
#mount -u / ;装载根分区
#mount -a -t ufs ;装载所有的ufs分区
#swapon -a ;打开交换空间

8、安装新建的Stable树,保证内核和应用程序之间的同步:

(1)运行下面的命令:
#mergemaster -p
(2)安装新的Stable程序树
#make installworld
(3)进行/etc目录下配置文件的修改或更新
#mergemaster

9、关于”mergemaster -p”的说明

“mergemaster” 是一个用于安装系统配置文件的脚本工具,”mergemaster -p”的作用是建立一个临时的根环境,把新的配置文件映射到这个环境当中,然后和系统的配置文件进行比较和处理,目的是保证系统配置文件的更新,这一点很重要!在执行”mergemaster -p”的过程中,主要是进行以下处理:
检测系统是否存在临时的根环境,如果存在,让用户选择是利用现有的还是删除它,然后新建!
*** The directory specified for the temporary root environment,
/var/tmp/temproot, exists. This can be a security risk if untrusted
users have access to the system.

Use 'd' to delete the old /var/tmp/temproot and continue ;按 “d” ,删除
Use 't' to select a new temporary root directory ;按 “t” ,选择新的目录
Use 'e' to exit mergemaster ;按 “e” ,退出

Default is to use /var/tmp/temproot as is
How should I deal with this? [Use the existing /var/tmp/temproot]
一般的处理是选 “d” ,删除原有的目录,系统开始重新建立这个临时的根环境。

10、关于”mergemaster”的说明

执行完”make installworld”之后,需要对系统的”/etc”目录下的文件进行更新,在运行过程中,需要用户和系统进行交互,以确定需要对系统的配置文件进行怎样的更新。
每个配置文件的更新操作都有4个选项:
Use 'd' to delete the temporary ;不更新相应的系统配置文件
Use 'i' to install the temporary ;用新的配置文件覆盖旧的系统配置文件
Use 'm' to merge the temporary and installed versions ;根据新的配置文件,对旧的配置文件进行合并处理
Use 'v' to view the diff results again ;察看新的配置文件和系统原有的配置文件的不同
更新操作时,要根据用户自己的想法进行相应的操作,如果是新安装的系统进行更新的话,或者不需要保留原有的配置的话,一般选择第二项操作。
_________________

网站统计 Statistics

  • 创建时间: 2005年1月3日 距今5069 天
  • 日志总数: 2461
  • 评论总数: 630
  • 标签总数: 654
  • 链接总数: 273
  • 最后更新: 2018-8-31 17:57:04
  • 您是本站第 14180122 位访客

广告区 Guǎng Gào