From owner-freebsd-stable Fri Feb 23 22:28:27 2001 Delivered-To: freebsd-stable@freebsd.org Received: from web5201.mail.yahoo.com (web5201.mail.yahoo.com [216.115.106.95]) by hub.freebsd.org (Postfix) with SMTP id 113E937B4EC for ; Fri, 23 Feb 2001 22:28:20 -0800 (PST) (envelope-from teslik@yahoo.com) Message-ID: <20010224062819.21874.qmail@web5201.mail.yahoo.com> Received: from [64.170.164.210] by web5201.mail.yahoo.com; Fri, 23 Feb 2001 22:28:19 PST Date: Fri, 23 Feb 2001 22:28:19 -0800 (PST) From: Alex Teslik Reply-To: teslik@yahoo.com Subject: RE: 3.X-S to 4.X-S Problem To: Antonio Carlos Venancio Junior Cc: stable@freebsd.org, bobb@redbrick.dcu.ie, rse@engelschall.com MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Dear Antonio, I did solve this problem with the help of the email below. Note that before I did it I re-CVSup-ed with RELENG_4_0_0_RELEASE, blowing away RELENG_4 which just didn't work. I started with 3.2-RELEASE, upgraded to RELENG_3 with no problems, then went to RELENG_4_0_0_RELEASE. I followed the steps below pretty thoroughly except for the OpenSSH stuff (which I didn't need). A funny thing I noticed was that I had to do the ldconfig part everytime before I ran the buildworld, or else it would "forget" about where the libc stuff was. Other than that not too many problems except for the kernel FOO upgrade part. What a headache. Does anyone have a document that notes changes from the 3.x kernel syntax to the 4.x kernel syntax besides LINT. LINT doesn't point out the changes, it just has the syntax in it. A big thanks to bobb and Ralf for ending the suffering. I hope it works for you too! Next step, 4.2-RELEASE....... ALEX----> --- Robert bobb crosbie wrote: > Date: Mon, 19 Feb 2001 18:10:01 +0000 > To: teslik@yahoo.com > Subject: Re: your mail > Organization: bobb Industries > From: bobb@redbrick.dcu.ie (Robert "bobb" crosbie) > > Charlie Root hath declared on Monday the 19 day of February 2001 :-: > > Dear List, > > > > I keep getting the following error when upgrading to 4-STABLE from > 3-STABLE.I am following UPDATING exactly. This error occurs during > buildworld. > > There are a number of issues going from 3 to 4. > There is a good document on how to get around it at > http://laa.zp.ua/doc/FreeBSD/3.5-4.x.upgrade.txt > Though the site seems to be down at the moment, I'll attach the copy I > have. > > -- > Robert "bobb" Crosbie. > > Date: Thu, 3 Aug 2000 15:22:32 +0200 > From: "Ralf S. Engelschall" > To: freebsd-stable@FreeBSD.ORG > Subject: [PROCEDURE] Successful 3.5-S to 4.1-S upgrade > Message-ID: <20000803152232.A74889@engelschall.com> > > > This week we've moved all of our 3.5-STABLE boxes to 4.1-STABLE. As others > already determined, the steps in /usr/src/UPDATING are not sufficient for a > successful and smooth upgrade. While we upgraded machine after machine this > week, we had to adjust and enhance our upgrade procedure many times. Now that > all of our machines were successfully upgraded, I want to share our > experiences with you by forwarding you our last version of the procedure. > > I'm sure some steps can be simplified or perhaps even left out, but I did not > care very much about optimizations or speedups. For us it was just important > that the upgrade worked correctly. And that's the case with the above steps. > I hope this procedure can help you a little bit in upgrading your boxes, too. > > Yours, > Ralf S. Engelschall > rse@engelschall.com > www.engelschall.com > > Upgrading from FreeBSD 3.5-STABLE to FreeBSD 4.1-STABLE > Ralf S. Engelschall , August 2000 > ======================================================= > > o boot the old FreeBSD 3.x in multi-user mode > > o provide a particular build environment > $ vi /etc/make.conf > NOPERL=true # else Perl would fail to build under 3.x initially > NOPROFILE=true # to speed up building > MAKE_RSAINTL=YES # for non-US > USA_RESIDENT=NO # dito. > CFLAGS=-O -pipe # standard optimization > COPTFLAGS=-O -pipe # dito. > COMPAT1X=yes # install compatibility libraries > COMPAT20=yes # dito. > COMPAT21=yes # dito. > COMPAT22=yes # dito. > COMPAT3X=yes # dito. > > o provide boot-strapping run-time environment > $ mkdir -p /usr/obj/usr/src/lib/libc > $ ldconfig -R /usr/obj/usr/src/lib/libc > > o build the world initially (still under FreeBSD 3.x run-time) > $ cd /usr/obj > $ chflags -R noschg * > $ rm -rf * > $ cd /usr/src > $ make buildworld > > o build and install new GENERIC kernel+modules > $ make buildkernel KERNEL=GENERIC > $ make installkernel KERNEL=GENERIC > $ chflags noschg /kernel.GENERIC /GENERIC > $ mv /kernel.GENERIC /kernel.GENERIC.3 > $ mv /GENERIC /kernel.GENERIC > $ chflags schg /kernel.GENERIC > > o upgrade FOO kernel config from 3.x to 4.x > $ vi /sys/i386/conf/FOO > - remove "config kernel ...", "bio", "tty", "net", "conflicts" > - remove unnecessary quotations > - remove "pnp" device > - remove "acd0" device > - remove obsolete options (check output of "config FOO") > - replace some "xxx0" with "xxx" (compare LINT for details) > - replace "controller" & "disk" with "device" > - replace "wdc0" with "ata0" plus more "ata*" from GENERIC > - replace "bpfilter" with "bpf" > - replace "isa?" with "atkbdc?" for "atkbd0" and "psm0" device > > o build and install new FOO kernel+modules > $ make buildkernel KERNEL=FOO > $ make installkernel KERNEL=FOO > $ chflags noschg /kernel /FOO > $ mv /kernel /kernel.3 > $ mv /FOO /kernel > $ chflags schg /kernel > > o upgrade devices > $ cd /usr/src/sbin/mknod && make install > $ cp /usr/src/etc/MAKEDEV* /dev > $ cd /dev > $ sh MAKEDEV all > - make sure really all devices for disks exists: > for N in the list of disks > sh MAKEDEV N # eg ad0 > for M in the list of slices > sh MAKEDEV NsMa # eg ad0s1a > - edit /etc/fstab and replace "wd0" with "ad0" > > o upgrade boot blocks and loader > $ cd /sys/boot && make install > > o boot FreeBSD 4.x kernel (still with 3.x user-land) in single-user mode > $ shutdown -r now > > boot -s > $ mount -a > > o install the world > $ cd /usr/src/gnu/usr.bin/texinfo/install-info > $ make install > $ ldconfig -R /usr/obj/usr/src/lib/libc > $ cd /usr/src > $ make installworld > $ cd /usr/src/release/sysinstall && make all install > > o upgrade /etc > $ cp -rp /etc /etc.old > $ mergemaster -v -s > > o final adjustments for new FreeBSD 4.x user-land > $ touch /var/log/security > $ touch /var/log/cron > $ rm /var/cron/log* > > o switch to new shipped OpenSSH [OPTIONAL!] > $ ssh-keygen -f /etc/ssh/ssh_host_key > $ ssh-keygen -d -f /etc/ssh/ssh_host_dsa_key > $ vi /etc/rc.conf > sshd_enable="YES" > $ pkg_delete ssh-1.2.27 > > o boot FreeBSD 4.x kernel and user-land in multi-user mode > $ shutdown -r now > > o rebuild some criticial programs to avoid spurious segfaults > under the forthcoming final "buildworld/installworld" step > $ vi /etc/make.conf > #NOPERL=true > $ cd /usr/src/gnu/usr.bin/perl > $ (cd libperl && make all install) > $ (cd perl && make all install) > $ make clean all install > $ cd /usr/src/usr.bin/lex && make clean all install > $ cd /usr/src/usr.bin/yacc && make clean all install > $ cd /usr/src/gnu/usr.bin/as && make clean all install > $ cd /usr/src/gnu/usr.bin/cc && make clean all install > $ cd /usr/src/gnu/lib/libgcc && make clean all install > > o build and install the world finally from scratch (under FreeBSD 4.x > run-time) > $ cd /usr/obj > $ chflags -R noschg * > $ rm -rf * > $ cd /usr/src > $ make buildworld > $ make installworld > > o rebuild the kernel with the final tools > $ cd /sys/i386/conf > $ config FOO > $ cd /sys/compile/FOO > $ make depend all > $ make install > > o reboot to switch to the final FreeBSD 4.x system > $ shutdown -r now > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-stable" in the body of the message > > -- > $Id: 3.5-4.x.upgrade.txt,v 1.1.2.1 2000/10/02 10:07:02 laa Exp $ > ===== Alex Teslik __________________________________________________ Do You Yahoo!? Get email at your own domain with Yahoo! Mail. http://personal.mail.yahoo.com/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message