Canonical upgrade procedure for 6.0?
Stacey Roberts
stacey at vickiandstacey.com
Sun Oct 30 09:55:23 PST 2005
Hello Roland,
On Sun, 30 Oct 2005, Roland Smith wrote:
> On Sun, Oct 30, 2005 at 11:44:24AM +0000, Stacey Roberts wrote:
> > Hello Roland,
> > Thanks for the response.
> >
> > On Sun, 30 Oct 2005, Roland Smith wrote:
> >
> > > On Sun, Oct 30, 2005 at 10:28:35AM +0000, Stacey Roberts wrote:
> > > > Hello,
> > > > Is there anywhere on the FreeBSD.org site that has any (even if semi-official) procedure for upgrading a FreeBSD-5Stable machine (i386) to 6.0?
> > >
> > > Chapter 20 of the Handbook details how to update your system with cvsup
> > > and how to rebuild your kernel+world.
> >
> > I know about the procedures details in that chapter, however, I'm
> > recalling the fact that at one point in time, there was a "migrating"
> > link (http://www.freebsd.org/old/releases/5.4R/migration-guide.html)
> > on the old website that included, if you will, *the way* to migrate
> > from FreeBSD-4 to FreeBSD-5 - that included changes and extra steps as
> > against what is mentioned in chapter 20 in the Handbook.
>
> The migration from 4 to 5 was much more involved, because some
> subsystems had been radically changed. The changes from 5 to 6 are less
> so, AFAIK.
>
> > If chapter 20 is the way, then fair enough, but I thought it a simple
> > thing to ask.
>
> Actually, the instructions in /usr/src/UPDATING are considered to be
> canonical, AFAIK. Chapter 20 refers to it. Look for "COMMON ITEMS",
> especially "To upgrade in-place from 5.x-stable to current".
Okay.., I took the view that following the Handbook was the way to go, changing "*default release=cvs tag=RELENG_5" to "*default release=cvs tag=RELENG_6".
All went fine, that is, I was able to cvsup sources to upgrade a FreeBSD-5-Stable machine to FreeBSD-6.0-RC-1:
$ uname -a
FreeBSD <snipped> 6.0-RC1 FreeBSD 6.0-RC1 #0: Sun Oct 30 16:09:08 GMT 2005 <snipped>:/usr/obj/usr/src/sys/GENERIC i386
$
All looks well, whereby I can log in successfully, and load X as before (I know that at some point I need to rebuild all installed ports), however I now need to configure, compile and install a custom kernel. But when I checked the location of where (the default in FreeBSD) I'd expect to see a new GENERIC, I see the following:
/usr/src/sys/i386/conf $ ls -tla
total 92
drwxr-xr-x 2 root wheel 512 Oct 30 18:05 .
drwxr-xr-x 14 root wheel 512 Oct 29 19:48 ..
-rw-r--r-- 1 root wheel 1741 Oct 29 19:48 GENERIC.hints
-rw-r--r-- 1 root wheel 372 Oct 28 20:21 DEFAULTS
-rw-r--r-- 1 root wheel 10211 Oct 28 20:21 GENERIC
-rw-r--r-- 1 root wheel 33284 Oct 7 15:00 NOTES
-rw-r--r-- 1 root wheel 322 Sep 18 04:37 SMP
-rw-r--r-- 1 root wheel 1766 Jul 29 17:02 PAE
-rw-r--r-- 1 root wheel 13 Jun 20 17:52 .cvsignore
-rw-r--r-- 1 root wheel 120 Feb 26 2003 Makefile
/usr/src/sys/i386/conf $
After copying GENERIC to "MYKERNEL", I'd have expected to go through MYKERNEL to add / delete as required, as well as remove the debugging statements that I'd come across from reading various suggestions (like "options INVARIANTS", etc), but I've found that the GENERIC on this system doesn't have the entries for any of those debugging statements to remove. Here's a snippet where I'd have expected to see some of those entries:
$ more GENERIC
#
# GENERIC -- Generic kernel configuration file for FreeBSD/i386
#
# For more information on this file, please read the handbook section on
# Kernel Configuration Files:
#
# http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ../../conf/NOTES and NOTES files.
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.429.2.4 2005/10/28 19:21:27 jhb Exp $
machine i386
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
ident GENERIC
# To statically compile in device wiring instead of /boot/device.hints
#hints "GENERIC.hints" # Default places to look for devices.
makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
#options SCHED_ULE # ULE scheduler
options SCHED_4BSD # 4BSD scheduler
options PREEMPTION # Enable kernel thread preemption
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options FFS # Berkeley Fast Filesystem
options SOFTUPDATES # Enable FFS soft updates support
options UFS_ACL # Support for access control lists
options UFS_DIRHASH # Improve performance on big directories
options MD_ROOT # MD is a potential root device
options NFSCLIENT # Network Filesystem Client
options NFSSERVER # Network Filesystem Server
options NFS_ROOT # NFS usable as /, requires NFSCLIENT
options MSDOSFS # MSDOS Filesystem
options CD9660 # ISO 9660 Filesystem
options PROCFS # Process filesystem (requires PSEUDOFS)
options PSEUDOFS # Pseudo-filesystem framework
options GEOM_GPT # GUID Partition Tables.
options COMPAT_43 # Compatible with BSD 4.3 [KEEP THIS!]
options COMPAT_FREEBSD4 # Compatible with FreeBSD4
options COMPAT_FREEBSD5 # Compatible with FreeBSD5
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
options KTRACE # ktrace(1) support
options SYSVSHM # SYSV-style shared memory
options SYSVMSG # SYSV-style message queues
options SYSVSEM # SYSV-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
options AHC_REG_PRETTY_PRINT # Print register bitfields in debug
# output. Adds ~128k to driver.
options AHD_REG_PRETTY_PRINT # Print register bitfields in debug
# output. Adds ~215k to driver.
options ADAPTIVE_GIANT # Giant mutex is adaptive.
device apic # I/O APIC
# Bus support.
device eisa
device pci
# Floppy drives
device fdc
I see the line entry for "makeoptions DEBUG=-g", but where are all the others (INVARIANTS, WITNESS, etc)? Presumably, something's gone wrong somewher along the way?
Any information, would be appreciated, please.
Regards,
Stacey
>
> That being said, I guess the least troublesome route is to make a backup
> of your data (including configuration files), wipe the disks and do a
> re-install of 6.0. That way you can be sure there are no leftovers from
> 5.x. And then you can "port" your config files to the new release.
>
> Especially, it gives you an opportinity to tune things like slices and
> their sizes. Personally I like to have /home on a separate slice for
> easy dumps and backups, since my /usr is to big to fit on DVD with
> /usr/home in it.
>
> Roland
> --
> R.F.Smith (http://www.xs4all.nl/~rsmith/) Please send e-mail as plain text.
> public key: http://www.xs4all.nl/~rsmith/pubkey.txt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 466 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20051030/c9d2b851/attachment.bin
More information about the freebsd-questions
mailing list