From owner-freebsd-stable Mon Feb 1 06:41:09 1999 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id GAA28117 for freebsd-stable-outgoing; Mon, 1 Feb 1999 06:41:09 -0800 (PST) (envelope-from owner-freebsd-stable@FreeBSD.ORG) Received: from relay.ucb.crimea.ua (relay.ucb.crimea.ua [212.110.138.1]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id GAA26924 for ; Mon, 1 Feb 1999 06:36:25 -0800 (PST) (envelope-from ru@ucb.crimea.ua) Received: (from ru@localhost) by relay.ucb.crimea.ua (8.9.2/8.9.2/UCB) id QAA30728; Mon, 1 Feb 1999 16:35:09 +0200 (EET) (envelope-from ru) Date: Mon, 1 Feb 1999 16:35:06 +0200 From: Ruslan Ermilov To: FreeBSD Stable Subject: Step-by-step 2.2.8 -> 3.0-STABLE transition instructions Message-ID: <19990201163506.A83373@ucb.crimea.ua> Mail-Followup-To: FreeBSD Stable References: <19990127200951.A19404@ucb.crimea.ua> <80570.917461685@zippy.cdrom.com> <19990129192548.A23285@ucb.crimea.ua> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.94.17i In-Reply-To: <19990129192548.A23285@ucb.crimea.ua>; from Ruslan Ermilov on Fri, Jan 29, 1999 at 07:25:48PM +0200 X-Operating-System: FreeBSD 3.0-STABLE i386 Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hi! Here I would like to describe the step-by-step 2.2.8 to 3.0-STABLE transition process I did last Saturday. 1. Backup your system!!! Use whatever backup method you want. As for me, I just plugged a cheap (???) 3Gb IDE disk in and copied the contents of all my partitions onto it. Also, I've made it bootable. You may find the following tutorial helpful at this step: http://www.freebsd.org/tutorials/diskformat/diskformat.html 2. Fetch the sources for 3.0-STABLE and put them into /usr/src. If you have a local CVS repository, just upgrade the sources from it: # cd /usr/src # cvs -q update -P -d -rRELENG_3 3. Recompile the sources. # cd /usr/src # make aout-to-elf-build This will: a) build an aout world in the /usr/obj/aout directory. b) build an ELF world in the /usr/obj/elf, using just built aout tools from the step a). During step b) you may notice the following messages: `ELF interpreter /usr/libexec/ld-elf.so.1 not found' You can safely ignore them. Step 3 WILL NOT touch your system in any way. 4. Reboot into single-user mode. 5. Upgrade your system. # cd /usr/src # make aout-to-elf-install This will: a) ask you: Which config file do you wish to use? [GENERIC] _ Just press , and it will build GENERIC kernel later, which is sufficient in most cases. b) ask you: What is your boot device (e.g. wd0 or sd0)? [sd0] _ If your boot drive is SCSI disk, say, sd0, answer sd0, don't tell it da0 now!!! c) move aout libraries into aout subdir of each library directory. For example, all a.out libs from /usr/lib will be in /usr/lib/aout. At this step the upgrade may fail with the message: `ldconfig: /usr/local/lib/aout: No such file or directory' If this happens for you, just do: # mkdir -p /usr/local/lib/aout Then restart install process: # cd /usr/src # make aout-to-elf-install WARNING!!! Don't interrupt the upgrade process after this step, or you'll leave your system in unusable state. d) install aout world on your system e) install ELF world on your system f) install new boot blocks on your boot drive g) build and install ELF kernel you've choosen in step a), and install it on your boot drive h) set the default object format to ELF i) ask you to reboot the system 6. Boot into single-user mode. 7. Update your /etc and /dev. This is something you have to do by hand, eyeball, and judicious use of the diff command. You may find the following tutorial very helpful at this step: http://www.nothing-going-on.demon.co.uk/FreeBSD/make-world/make-world.html Read sections `Update /etc' and `Update /dev' of this document. Also, pay a special attention to the contents of your /etc/group and /etc/master.passwd. FreeBSD-3.0 introduces 3 new system uids - `kmem', `tty' and `bind', and new group `bind'. These can be used to run certain services in a sandbox mode. Consult security(7) manpage later. After you've successfully updated your /dev, you may want to rename sd0 to da0 in your /etc/fstab. Don't forget to do: # cd /dev # sh MAKEDEV da0s1a 8. Your system is now fully updated to run elf. 9. Reboot into muti-user mode. 10. [Optional] Recompile your ports in ELF. 11. [Optional] Recompile your own programs. 12. Delete /usr/obj P.S. Use at your own risk!!! This procedure is based only on my own experience of upgrading two (2.2.8-RELEASE and 2.2.8-STABLE) machines to 3.0-STABLE. Regards, -- Ruslan Ermilov Sysadmin and DBA of the ru@ucb.crimea.ua United Commercial Bank +380.652.247.647 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message