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