upgrade revision 1.6 1 1.5 jtc The upgrade to NetBSD 1.2 is a binary upgrade; it would be prohibitive
2 1.5 jtc to make users upgrade by compiling and installing the 1.2 sources, and
3 1.1 cgd it would be very difficult to even compile a set of instructions that
4 1.4 jtc allowed them to do so. Because of the many changes to the system, it
5 1.4 jtc is difficult impractical to upgrade by recompiling from the sources
6 1.4 jtc and installing.
7 1.1 cgd
8 1.6 perry To do the upgrade, you must have the appropriate upgrade floppy image
9 1.6 perry (either upgr12D.fs or upgrs12D.fs). You must also have at least the
10 1.6 perry "base12D" and "kern12D" binary distribution sets available, so that
11 1.6 perry you can upgrade with it, using one of the upgrade methods described
12 1.6 perry above. Finally, you must have sufficient disk space available to
13 1.6 perry install the new binaries. Since the old binaries are being
14 1.6 perry overwritten in place, you only need space for the new binaries, which
15 1.6 perry weren't previously on the system. If you have a few megabytes free on
16 1.6 perry each of your root and /usr partitions, you should have enough space.
17 1.1 cgd
18 1.1 cgd Since upgrading involves replacing the boot blocks on your NetBSD
19 1.1 cgd partition, the kernel, and most of the system binaries, it has the
20 1.1 cgd potential to cause data loss. You are strongly advised to BACK UP ANY
21 1.1 cgd IMPORTANT DATA ON YOUR DISK, whether on the NetBSD partition or on
22 1.1 cgd another operating system's partition, before beginning the upgrade
23 1.1 cgd process.
24 1.1 cgd
25 1.1 cgd To upgrade your system, follow the following instructions:
26 1.1 cgd
27 1.6 perry Boot your machine using of the appropriate upgrade floppy.
28 1.6 perry The boot loader will start, and will print a countdown and
29 1.6 perry begin booting. You will likely see one "file not found"
30 1.6 perry warning from the boot loader -- ignore this as it is normal,
31 1.6 perry and indicates the boot loader failed to find a normal kernel
32 1.6 perry to boot before trying to boot a compressed kernel.
33 1.6 perry
34 1.6 perry If the boot loader messages do not appear in a reasonable
35 1.6 perry amount of time, you either have a bad boot floppy or a
36 1.6 perry hardware problem. Try writing the install floppy image to
37 1.6 perry a different disk, and using that.
38 1.1 cgd
39 1.1 cgd While booting, you will probably see several warnings. You
40 1.1 cgd should be warned that no swap space is present, and that
41 1.1 cgd init(8) cannot find /etc/rc. Do not be alarmed, these are
42 1.1 cgd completely normal. When you reach the prompt asking you for a
43 1.1 cgd shell name, just hit return.
44 1.1 cgd
45 1.1 cgd You will be presented with some information about the upgrade
46 1.1 cgd process and a warning message, and will be asked if you wish
47 1.1 cgd to proceed with the upgrade process. If you answer
48 1.1 cgd negatively, the upgrade process will stop, and your disk will
49 1.1 cgd not be modified. If you answer affirmatively, the upgrade
50 1.1 cgd process will begin, and your disk will be modified. You may
51 1.1 cgd hit Control-C to stop the upgrade process at any time.
52 1.1 cgd However, if you hit it at an inopportune moment, your system
53 1.1 cgd may be left in an inconsistent (and possibly unusable) state.
54 1.1 cgd
55 1.1 cgd You will be asked if you wish to upgrade your file systems to
56 1.1 cgd the new file system format. If you do, reply affirmatively.
57 1.1 cgd If you don't have your file systems upgraded now, you should
58 1.1 cgd probably do it manually after the install process is complete,
59 1.1 cgd by using "fsck -c 2". Read the fsck(8) manual page for more
60 1.6 perry details. NOTE: ONLY UPGRADE YOUR FILE SYSTEMS IF YOU ARE
61 1.6 perry UPGRADING FROM A PRE-NetBSD 1.0 RELEASE
62 1.1 cgd
63 1.6 perry If you choose to upgrade your file systems, the upgrade
64 1.6 perry program will then check your root file system, and, if you
65 1.6 perry approved, will upgrade it to the new file system format. It
66 1.6 perry will then mount your root file system on /mnt.
67 1.1 cgd
68 1.1 cgd If your file systems are being upgraded, the upgrade script
69 1.1 cgd will copy the new fsck(8) program to your hard disk and
70 1.1 cgd upgrade your remaining file systems.
71 1.1 cgd
72 1.1 cgd The upgrade program will then automatically replace the boot
73 1.1 cgd blocks on your disk with newer versions, and mount all of your
74 1.1 cgd file systems under /mnt. (In other words, your root partition
75 1.1 cgd will be mounted on /mnt, your /usr partition on /mnt/usr, etc.)
76 1.1 cgd
77 1.1 cgd If you don't already have the NetBSD distribution sets on your
78 1.1 cgd disk, look in the installation section for information on how
79 1.2 glass to transfer them to your disk.
80 1.2 glass
81 1.2 glass Once the distribution sets are transferred to your disk,
82 1.2 glass continue here. (Obviously, if the NetBSD distribution sets
83 1.3 cgd are already on your disk, because you've transferred them
84 1.3 cgd before starting the upgrade process, you don't need to
85 1.3 cgd transfer them again now!)
86 1.1 cgd
87 1.1 cgd After the software has been transferred to the machine (or
88 1.1 cgd mounted, in the case of upgrading via NFS), change into the
89 1.5 jtc directory containing the "base12" distribution set. Once you
90 1.3 cgd are there, run the "Set_tmp_dir" command, and hit return at
91 1.3 cgd the prompt to select the default answer for the temporary
92 1.1 cgd directory's path name. (It should be the path name of the
93 1.1 cgd directory that you're in.)
94 1.1 cgd
95 1.5 jtc Run the command "Extract base12" to upgrade the base
96 1.1 cgd distribution.
97 1.1 cgd
98 1.1 cgd Repeat the above two steps for all of the sets you wish to
99 1.1 cgd upgrade. (For each, change into the directory containing the
100 1.1 cgd set, run "Set_tmp_dir" and accept the default path name, then
101 1.1 cgd run the "Extract <setname>" command.)
102 1.1 cgd
103 1.6 perry NOTE: YOU MUST INSTALL THE "kern12D" DISTRIBUTION, AS IT
104 1.6 perry CONTAINS THE NEW NetBSD 1.2D KERNEL! This step is different
105 1.6 perry from previous netbsd upgrade procedures, which installed the
106 1.6 perry kernel from a boot floppy using a special procedure.
107 1.6 perry
108 1.1 cgd If you were previously using the security distribution set,
109 1.1 cgd you MUST upgrade to the new version, or you will not be able
110 1.1 cgd to log in when the upgrade process is complete. Similarly, if
111 1.1 cgd you were not previously using the security set, you must NOT
112 1.1 cgd upgrade to the new version.
113 1.1 cgd
114 1.1 cgd When you are done upgrading all of the distribution sets you
115 1.1 cgd wish to upgrade, issue the command "Cleanup". It will clean
116 1.1 cgd up the installation, by remaking some system databases. When
117 1.6 perry it is complete, you should use "halt" to halt the system, or
118 1.6 perry "reboot" to reboot it.
119 1.1 cgd
120 1.5 jtc Your system has now been upgraded to NetBSD 1.2.
121 1.1 cgd
122 1.4 jtc After a new kernel has been copied to your hard disk, your
123 1.5 jtc machine is a complete NetBSD 1.2 system. However, that
124 1.1 cgd doesn't mean that you're finished with the upgrade process.
125 1.1 cgd There are several things that you should do, or might have to
126 1.1 cgd do, to insure that the system works properly.
127 1.1 cgd
128 1.1 cgd First, if you did not upgrade your file systems to the new
129 1.4 jtc file system format during the upgrade process, and you are
130 1.4 jtc upgrading from a pre-1.0 NetBSD, you may want to do so now,
131 1.4 jtc with "fsck -c 2". If you are unsure about the process, it's
132 1.4 jtc suggested that you read the fsck(8) manual page.
133 1.1 cgd
134 1.6 perry Second, you will probably want to get the etc12D distribution,
135 1.1 cgd extract it, and compare its contents with those in your /etc/
136 1.1 cgd directory. You will probably want to replace some of your
137 1.1 cgd system configuration files, or incorporate some of the changes
138 1.1 cgd in the new versions into yours.
139 1.1 cgd
140 1.1 cgd Third, you will probably want to update the set of device
141 1.1 cgd nodes you have in /dev. If you've changed the contents of
142 1.1 cgd /dev by hand, you will need to be careful about this, but if
143 1.1 cgd not, you can just cd into /dev, and run the command "sh
144 1.1 cgd MAKEDEV all".
145 1.1 cgd
146 1.1 cgd Fourth, you must deal with certain changes in the formats of
147 1.1 cgd some of the configuration files. The most notable change is
148 1.1 cgd that the "options" given to many of the file systems in
149 1.1 cgd /etc/fstab or by hand have changed, and some of the file
150 1.4 jtc systems have changed names. *IMPORTANT*: ANY INSTANCES OF "ufs"
151 1.4 jtc IN /etc/fstab MUST BE CHANGED TO "ffs". To find out what the
152 1.4 jtc new options are, it's suggested that you read the manual page
153 1.4 jtc for the file systems' mount commands, for example mount_nfs(8)
154 1.4 jtc for NFS. (Note that the information for mounts of type "ffs",
155 1.1 cgd i.e. Fast File Systems, are contained in the mount(8) man
156 1.1 cgd page.)
157 1.1 cgd
158 1.1 cgd Finally, you will want to delete old binaries that were part
159 1.1 cgd of the version of NetBSD that you upgraded from and have since
160 1.4 jtc been removed from the NetBSD distribution. If you are
161 1.4 jtc upgrading from a pre-1.0 NetBSD, you might also
162 1.1 cgd want to recompile any locally-built binaries, to take
163 1.1 cgd advantage of the shared libraries. (Note that any new
164 1.1 cgd binaries that you build will be dynamically linked, and
165 1.1 cgd therefore take advantage of the shared libraries, by default.
166 1.1 cgd For information on how to make statically linked binaries,
167 1.1 cgd see the cc(1) and ld(1) manual pages.)
168