发信人: hahalee()
整理人: hahalee(1999-02-15 04:02:09), 站内信件
|
升级到FreeBSD 3.0-STABLE
(Original Author: Ruslan Ermilov)
1. 备份你的数据 (无需多讲了...)
2. 抓回 3.0-STABLE 的源码并在/usr/src里面展开. 如果你用 CVS的话, 可以这样: # cd /usr/src # cvs -q update -P -d -rRELENG_3
3. 编译源码 由于2.2.x是 a.out的格式,而 3.0-stable 是ELF格式的,所以 升级过程分为两步, 程序现在/usr/obj/aout下面 build world 然后用做好的 a.out "world" 工具在 /usr/obj/elf 下面生 成ELF的代码... 当然这些是自动的. 你需要输入: # cd /usr/src # make aout-to-elf-build ***注意*** 升级过程中,你可能会碰到下面的提示: ELF interpreter /usr/libexec/ld-elf.so.1 not found 不要担心,这个是正常的.
4. 回到单用户模式 下一部分要整个升级你的系统, 注意,所有的系统binary和lib 都会被新版本替换, 包括一些配置文件. # shutdown now 后会进入single user mode.
5. 重装系统 # cd /usr/src # make aout-to-elf-install 首先,会问你要用哪一个kernel的配置文件,一半情况下,直接用 默认的GENERAL配置就可以了. 然后,会问你的启动设备是什么, 比如sd0还是wd0. (译注:sd0是scsi 0, wd0 是 ide 0) 接下来, make还要做不少的事情: * 转移a.out库, 比如, /usr/lib下的被移动到 /usr/lib/aout * 把ELF代码装上系统 * 在新系统的启动设备上安装新的bootblock * 编译一个ELF的 kernel出来 * 把 /etc/objformat 内容更新为"ELF" * 问你是否reboot
6. 启动新系统 新的bootblock跟老的不一样. 屏幕提示: BTX loader 1.00 BTX version is 1.00 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive C: is disk1
FreeBSD/i386 bootstrap loader, Revision 0.2 633/15360kB ([email protected], Thu Jan 28 20:10:41 EET 1999) / Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 10 seconds... 在这里按下空白键, 然后输入 boot -s 进入单用户模式 Type '?' for a list of commands, 'help' for more detailed help. disk1s1a:> boot -s 启动完了后,mount上所有活动分区,打开swap: # mount -a -t ufs # swapon -a
7. 升级你的 /etc 和 /dev 可以用mergemaster来升级:(在你的新系统下面的/usr/ports里面有) 也可以参考下面的url来完成该任务:(熟练用户应该比较熟悉了) http://www.nothing-going-on.demon.co.uk/FreeBSD/make-world/make-world.html
8. 最好把你以前的 port 和自己的程序编译一遍.
-- (o- ====================================================== ^^ //\ 火车停下来的地方叫火车站; 汽车停下来的地方叫汽车站 oo) V_/ 我的桌上有一台工作站...... <=( ) ||========================================================_/_\
※ 来源:.网易 BBS bbs.netease.com.[FROM: 202.100.219.15]
|
|