原先使用的FreeBSD6.1是从6.0版本升级上来的,当时参考的是LLZQQ的《服务器托管一般性设置)期间也有区别,但还算顺利。最近换了网络,想把6.1再次升级,开始依旧参考原先的资料,但进行到make installworld一部出错,总是无法继续。
看来版本升级方法有所变化,便有上网搜寻一番,并参考了安装手册,重新进行安装:
1、升级源代码和ports,修改内核配置文件(MYCONFIG)这个与原先的没有差别。
2、#cd /usr/src
#make -j4 buildworld
#rehash
#make -j4 buildkernel KERNCONFIG=MYCONFIG (这一步时,KERNCONFIG少输入了一个N,结果重建的默认的内核,浪费不少时间)
#rehash
#reboot
3、重启机器后再次进入/usr/src,执行mergemaster -p后,执行make -j4 installworld,这时出现了问题,总是提示:
install:rename: /sbin/init to /sbin/init.bak:Opereation not permitted然后安装中止。
试图修改init.bak的属性,但不成功。查询了半天,最后还是在freebsd的英文社区找到答案,
chflags noschg /sbin/*取消了该目录下的权限修改保护,再执行安装命令,一切正常。
4、安装完毕,执行mergemaster后重新启动机器。
5、重启机器后
#cd /usr/obj
#chflags -R noschg *
#rm -rf *
至此,系统被升级到6.2版本,运行正常。