upgrade revision 1.4.2.6
1	$NetBSD: upgrade,v 1.4.2.6 1998/05/29 03:42:46 mycroft Exp $	
2
3The upgrade to NetBSD _VER is a binary upgrade; it can be quite difficult
4to advance to a later version by recompiling from source due primarily
5to interdependencies in the various components.
6
7No automated upgrade procedure exists for upgrading to release _VER for the
8NetBSD/mac68k architecture.  The current procedure is essentially to perform
9a new install from scratch.  It is hoped that there will be a good upgrade
10procedure for future releases.  Please feel free to volunteer to help
11replace these installation tools.
12
13The following steps outline the current upgrade procedure.  These steps
14should help ease the upgrade process.  Please read these instructions
15carefully and completely before proceeding:
16
171) Since upgrading involves replacing the kernel and most of the system
18   binaries, it has the potential to cause data loss.  You are strongly
19   advised to BACK UP ANY IMPORTANT DATA ON YOUR DISK, whether on the
20   NetBSD partition or on another operating system's partition, before
21   beginning the upgrade process.  Although the upgrade should not
22   damage your filesystem(s) in any way, you never know what may happen.
23
242) Download the distribution sets you want from the "mac68k/binary/sets"
25   subdirectory of the NetBSD _VER distribution.  You will need the base
26   set and the kernel at a minimum.  Be sure to download the files in
27   _binary_ mode.  If you will be upgrading from within NetBSD, make sure
28   that you place the distribution sets on a filesystem you will be able to
29   reach from single-user mode.
30
313) Install the _VER kernel.  You may either use the Installer utility
32   (included in the "installation/misc" subdirectory) or install from
33   within NetBSD (the latter is recommended for speed reasons).  If you
34   choose the former, proceed as you normally would.  If you choose to
35   install from within NetBSD, then boot (or shutdown) into single-user
36   mode and do the following:
37
38     cd /
39     tar -zxvpf /path/to/kern.tgz
40
41   There is no need to backup your old kernel explicitly since it will be
42   incapable of running many of the newer binaries you are about to
43   install (unless, of course, you have a backup copy of your older
44   binaries and want to revert to them for some reason).  However, you
45   might want to keep a backup if you are upgrading from within NetBSD just
46   in case the newer kernel has trouble booting your machine. 
47
484) If you are installing using the Installer, skip to step 5.  Otherwise,
49   reboot into NetBSD in single-user mode.  Run 'fsck -f' and then mount all
50   local partitions read/write.  Usually 'mount -a -t nonfs' should do the
51   trick, but if you have several partitions on the same disk, take note of
52   the fact that a change in partition numbering may have moved a few of
53   your partitions around.  You can do a 'disklabel sdX' (where X is a
54   drive on which you have NetBSD partitions) to see how the partitions are
55   currently layed out.  It is likely that a partition has shifted into the
56   'sdXd' or 'sdXe' slots, slots that often were not available under
57   previous releases of NetBSD.  If this is the case, you will need to
58   manually mount your root partition  (via 'mount -w /') and edit your
59   /etc/fstab file to reflect the new partition layout.  Unless you are
60   familiar with 'ex' or 'ed', the easiest way to fix your /etc/fstab file
61   is probably to simply do a 'cat > /etc/fstab' and type in the corrected
62   file in its entirety.
63
645) Install the distribution sets.  Keep in mind that the NetBSD _VER
65   distribution takes up a considerably larger amount of disk space than
66   did the 1.2 or 1.2.1 distributions.  If you are using the Installer,
67   proceed normally (remember that you will need to mount non-root
68   partitions by hand using the MiniShell before installing).  If you are
69   installing from within NetBSD, do the following:
70
71     cd /
72     tar --unlink -zxvpf /path/to/base.tgz
73
74   It is crucial that you use the '--unlink' flag when invoking tar or you
75   will fail to correctly overwrite some files.  Keep in mind that there is
76   no going back once you have installed the base set short of a complete
77   re-install of an earlier distribution.  Continue with the appropriate
78   command line for each of the other sets you wish to install except for
79   the etc set.  If you are in the Installer, open up the Minishell and do
80   the following:
81
82     cd /tmp
83     exit
84
85   Ignore the warning message this will cause.  Now, use the Installer to
86   install the etc set (it will install into /tmp instead of the /etc
87   directory). 
88
89   If you are in NetBSD, do the following instead:
90
91     cd /tmp
92     tar --unlink -zxvpf /path/to/etc.tgz
93
946) If you are in the Installer, quit it and boot into NetBSD in single-user
95   mode.  From there, 'cd' to the /tmp/etc directory and compare each file
96   there with your old files in /etc.  You will probably want to replace
97   some of your system configuration files, or incorporate some of the
98   changes in the new versions into yours.  You should take note of the
99   following when upgrading to the NetBSD _VER etc.tgz set:
100
101   * The first file to pay attention to is /etc/rc.conf.  This file did not
102   exist under NetBSD 1.2, but it is used to configure the rc scripts
103   under NetBSD _VER.  Edit the file to your preferences, making sure
104   that you change the line that says:
105
106     rc_configured=NO
107
108   to read:
109
110     rc_configured=YES
111
112   This will enable all of the options you have configured in /etc/rc.conf.
113
114   * The next important item to take note of is the new networking
115   configuration files.  If you currently have an /etc/hostname.xxN file
116   (fill in the xx with either ae or sn and the X with a number), you will
117   need to convert it into an ifconfig.xxN file before networking
118   automatically works.  The format for the new file is simply the
119   arguments which you would give to ifconfig on the command line.  The
120   following is an example of the minimal ifconfig.xxN file:
121
122     inet hostname.domain.dom netmask 0xffffff00
123
124   Read the ifconfig(8) man page for more details on arguments to ifconfig.
125   Be sure to set
126
127     auto_ifconfig=YES
128
129   in /etc/rc.conf to ensure that your network interfaces will be brought
130   up automatically on boot.
131
132   * Several of the options given to many of the file systems have changed,
133   and some of the file systems have changed names.  IT IS IMPERATIVE THAT
134   YOU CHANGE ANY INSTANCES OF "ufs" IN /etc/fstab TO "ffs".  To find out
135   more about different filesystem options, read the man page for the
136   associated mount command (e.g. mount_mfs(8) for MFS filesystems; note:
137   FFS type filesystems are documented in the mount(8) man page).  If you
138   have not already done so, you may also need to correct /etc/fstab for
139   a shift in the partition numbering scheme.  See step (4) above for more
140   details.
141
142   * You will also probably want to upgrade your device nodes at this time
143   as well.  Make sure you have installed the latest MAKEDEV script (it
144   should be included in the etc set) and perform the following commands:
145
146     cd /dev
147     sh MAKEDEV all
148
149
1507) A number of binaries have changed their locations from NetBSD 1.2.1 to
151   NetBSD _VER (most of these have moved from /sbin to /usr/sbin).  A few
152   binaries have been removed.  It is probably best if you scan the
153   modification dates of the files in the /sbin directory.  If there are
154   files in the directory which have newer counterparts in the /usr/sbin
155   directory, it is a very good idea to remove the older files (you will
156   probably run into difficulties later if you choose not to do this). 
157   You should also check the /sbin, /bin, /usr/bin/, and /usr/sbin
158   directories for old binaries that are no longer part of the NetBSD
159   distribution and delete them as well.  In general, all the files in a
160   particular distribution should have similar modification dates, so
161   looking at these is a good way of determining a file's age.
162
1638) Run 'fsck -f' to make sure that your filesystem is still consistent.  If
164   fsck reports any errors, fix them by answering 'y' to its suggested
165   solutions (note: if there are a large number of errors, you may wish
166   to stop and run 'fsck -fy' to automatically answer "yes" instead).
167
1689) Exit from single-user mode and it should continue to boot into
169   multi-user mode.
170
171At this point you have successfully upgraded to NetBSD _VER.
172