RFC: 5.3 Migration Guide
M. Warner Losh
imp at bsdimp.com
Tue Sep 7 12:28:26 PDT 2004
Having just done a 4.10 -> current upgrade...
In message: <1094426835.767.50.camel at localhost>
"Bruce A. Mah" <bmah at freebsd.org> writes:
: Thanks for any comments...
o FreeBSD/alpha unaffected
o Many users added disks and used the compat partitions
because they were easy, so the problem is likely wide
o Dangerously dedicated users are not impacted, but as always
DD isn't guaranteed to work.
o Mention RELENG_5 as well.
o Make sure that MAKEOBJDIRPREFIX isn't defined in
o Add a caution that says that if you do upgrade from old
kernel configuration files, to make sure that GENERIC is
used as a template due to the number of devices and options
that have been added.
o Mention COMPAT_FREEBSD4 is required here.
o Hints are needed for systems that have custom ISA non PNP
cards (with custom hints benig needed)
o Hints are also needed for non PNPBIOS systems.
o Hints are also needed for PNPBIOS systems to get floppies
right (this is a bug that may be fixed).
o An empty file is sufficient for modern hardware.
o I'd split this in two.
o I'd give the magic for unfucking yourself by showing how
to boot the new kernel with the old boot blocks.
o you *MUST* do a fsck -p before mount -uw / (note: I always
-uw rather than -u).
o I'd recommend against mount -a /, but instead mount -af ufs
/. NFS requires special care and setup.
o You ************M**U**S**T************ go into single user
mode at this point. At the very least you must reboot with
a new kernel. The new kernel will mostly work in multi-user
mode, but you might be screwed by the ifconfig changes or a
number of other binary changes between 4 and 5.
o Not needed. While it is useful to keep in the general
updating document, I think it would be too confusing. I was
able to upgrade w/o it.
o I found that doing this before rebooting was better because
you are in a saner environment. It doesn't hurt anything
(heck, you could do it before buildworld even).
o Ditto #10.
o You forgot the very important foot note about having 30MB
free on /, purging /tmp, etc. These items are absolutely
essential for a successful upgrade experience.
o This step is *NON*OPTIONAL*. Not only is it important, you
are totally fucked if you don't do it.
Item #14 (not yet present):
o You *MUST* install compatibility libraries before
rebooting. While most things work well enough w/o doing
this step, it is essential for the paranoid.
o rm -rf /etc/periodic (unless you've hacked anything in it)
will go a long way towards reducing RMS.
I followed the above advise, and had no problems at all. I'd also
recommend portupgrade strongly (in force mode), although I know that
some people hate it with a passion.
I'd also recommend having a 'script' that takes all these items and
presents them w/o annotation.
I'd also recommend doing this from a serial console if possible.
If you are using nextboot, disable it for the upgrade.
Can't think of anything else... Hope this is enough :-)
More information about the freebsd-current