Expand the 4.x -> current updating section. Update to show how to use

make kernel.  Update the compatibility slice section.  Note about
updating devices in the kernel config file.  MAKEOBJDIRPREFIX changes
and mention the port alternative to COMPAT4X=yes.  Fix copyright.

This should be MFC'd.
This commit is contained in:
Warner Losh 2004-09-04 21:03:10 +00:00
parent 418eba0242
commit e5dc5f61fb

View File

@ -1703,7 +1703,7 @@ COMMON ITEMS:
To upgrade in-place from 4.x-stable to current
----------------------------------------------
# 5.x uses more space than 4.x. Also, the location of kernel
# modules has changed. If you are installing 5.0 onto a 4.x
# modules has changed. If you are installing 5.x onto a 4.x
# system, you'll need about 30MB of free disk space on your /
# partition. If you have less than this, you may encounter difficult
# to back out of problems with this procedure. If /tmp is on
@ -1714,9 +1714,8 @@ COMMON ITEMS:
<make sure you have good level 0 dumps>
<maybe fix /etc/fstab> [7]
make buildworld [9]
make buildkernel KERNCONF=YOUR_KERNEL_HERE [8]
cp sys/${MACHINE}/conf/GENERIC.hints /boot/device.hints [2]
make installkernel KERNCONF=YOUR_KERNEL_HERE
make kernel KERNCONF=YOUR_KERNEL_HERE [8]
cd sys/boot ; make STRIP="" install [6]
[1]
<reboot in single user> [3]
@ -1782,25 +1781,36 @@ COMMON ITEMS:
described here.
[7] Before you upgrade, please make sure that you are not using
compatibility slices. These are device names of the form, on i386
and other architectures that use MBR slicing, /dev/ad0a without the
actual slice name. Chances are excellent that these will break.
compatibility slices. These are device names of the form /dev/ad0a
without the actual slice name. These will break with 5.x and newer.
You generally must update these entries to use the post FreeBSD
2.x form of /dev/ad0s1a.
2.x form of /dev/ad0s1a. i386 and pc98 are affected, while alpha
is not.
[8] In order to have a kernel that can run the 4.x binaries
needed to do an installworld, you must include the COMPAT_FREEBSD4
option in your kernel. Failure to do so may leave you with a system
that is hard to boot to recover.
Make sure that you merge any new devices from GENERIC since the
last time you updated your kernel config file.
[9] When checking out sources, you must include the -P flag to have
cvs prune empty directories. Also, if CPUTYPE is defined in your
/etc/make.conf, make sure to use the "?=" instead of the "=" assignment
operator, so that buildworld can override the CPUTYPE if it needs to.
cvs prune empty directories.
If CPUTYPE is defined in your /etc/make.conf, make sure to use the
"?=" instead of the "=" assignment operator, so that buildworld can
override the CPUTYPE if it needs to.
MAKEOBJDIRPREFIX must be defined in an environment variable, and
not on the command line, or in /etc/make.conf. buildworld will
warn if it is improperly defined.
In case you would like to avoid installing new packages of everything,
you might want to uncomment the "COMPAT4X= YES" entry, so that 4.x
compatibility libraries are built which should allow you to continue
using your existing software for a while.
using your existing software for a while. Alternatively, you can
install the misc/compat4x port.
[10] In order to create temporary files, /dev/random must be
initialized by feeding data into it. src/etc/rc.d/preseedrandom
@ -1814,7 +1824,7 @@ previous releases if your system is older than this.
Copyright information:
Copyright 1998, 2002 M. Warner Losh. All Rights Reserved.
Copyright 1998-2004 M. Warner Losh. All Rights Reserved.
Redistribution, publication, translation and use, with or without
modification, in full or in part, in any form or format of this