install revision 1.4
1Installing NetBSD is a relatively complex process, but if you have
2this document in hand and are careful to read and remember the
3information which is presented to you by the install program, it
4shouldn't be too much trouble.
5
6Before you begin, you should know the geometry of your hard disk, i.e.
7the sector size (note that sector sizes other than 512 bytes are not
8currently supported), the number of sectors per track, the number of
9tracks per cylinder (also known as the number of heads), and the
10number of cylinders on the disk.  The NetBSD kernel will try to
11discover these parameters on its own, and if it can it will print them
12at boot time.  If possible, you should use the parameters it prints.
13(You might not be able to because you're sharing your disk with
14another operating system, or because your disk is old enough that the
15kernel can't figure out its geometry.)
16
17If NetBSD will be sharing the disk with DOS or another operating
18system, you should have already completed the section of these notes
19that instructed you on how to prepare your hard disk.  You should know
20the size of the NetBSD area of the disk and its offset from the
21beginning of the disk.  You will need this information when setting up
22your NetBSD partitions.
23
24You should now be ready to install NetBSD.  It might be handy for you
25to have a pencil, some paper, and a calculator handy.
26
27The following is a walk-through of the steps you will take while
28getting NetBSD installed on your hard disk.  If any question has a
29default answer, it will be displayed in brackets ("[]") after the
30question.  If you wish to stop the installation, you may hit Control-C
31at any time, but if you do, you'll have to begin the installation
32process again from scratch.
33
34	Boot your machine using of the appropriate kernel-copy floppy.
35	When presented with the boot prompt (the prompt begins with
36	"Boot" and ends with ":-"), hit return.  If the boot prompt
37	does not appear in a reasonable amount of time, you either
38	have a bad boot floppy or a hardware problem.  Try writing the
39	kernel-copy floppy image to a different disk, and using that.
40	If that doesn't work, try booting after disabling your CPU's
41	internal and external caches (if any).  If it still doesn't
42	work, NetBSD probably can't be run on your hardware.  This can
43	probably be considered a bug, so you might want to report it.
44	If you do, please include as many details about your system
45	configuration as you can.
46
47	It will take a while to load the kernel from the floppy,
48	probably around a minute or so.  After its loaded, you will be
49	presented with the message:
50		"Insert file system floppy"
51	If you do not see that message after a reasonable time has
52	elapsed, or the spinning cursor has stopped and nothing
53	further has happened, either your boot floppy is bad or you
54	are having hardware problems, and should proceed as outlined
55	above.
56
57	Once you have reached that prompt, remove the kernel-copy
58	floppy from the floppy drive.  Make sure that the installation
59	disk (the "inst-10" floppy) is writable, insert it into the
60	floppy drive, and hit any key.
61
62	You will then be presented with the NetBSD kernel boot
63	messages.  You will want to read them, to determine your
64	disk's name and geometry.  Its name will be something like
65	"sd0" or "wd0" and the geometry will be printed on a line that
66	begins with its name.  As mentioned above, you will need your
67	disk's geometry when creating NetBSD's partitions.  You will
68	also need to know the name, to tell the install tools what
69	disk to install on.
70
71	While booting, you will probably see several warnings.  You
72	should be warned that no swap space is present, and that
73	init(8) cannot find /etc/rc.  Do not be alarmed, these are
74	completely normal.  When you reach the prompt asking you for a
75	shell name, just hit return.
76
77	You will be presented with a welcome message and a prompt,
78	asking if you wish to proceed with the installation process.
79	If you wish to proceed, enter "y" and hit return.
80
81	You will be asked what type of disk driver you have.  The
82	valid options are listed by the install program, to make sure
83	you get it right.  If you're installing on an ST-506 or ESDI
84	drive, you'll be asked if your disk supports automatic sector
85	forwarding.  If you are SURE that it does, reply
86	affirmatively.  Otherwise, the install program will
87	automatically reserve space for bad144 tables.
88
89	The install program will then tell you which disks of that
90	type it can install on, and ask you which it should use.
91	Reply with the name of your disk.  (The first disk of the type
92	you selected, either "wd0" for ST-506/ESDI/IDE disks, or "sd0"
93	for SCSI disks, is the default.)
94
95	You will then be asked to name your disk's disklabel.  The
96	default response is "mywd" or "mysd" depending on the type of
97	your disk, and for most purposes it will be OK.  If you choose
98	to name it something different, make sure the name is a single
99	word and contains no special characters.  You don't need to
100	remember this name.
101
102	You will be prompted for your disk's geometry information,
103	i.e. the number of bytes per sector, cylinders on the disk,
104	tracks per cylinder (heads), and sectors per track.  Enter
105	them when they are requested.  If you make a mistake, hit
106	Control-C and when you get to the shell prompt, restart the
107	install process by running the "install" command.  Once you
108	have entered this data, the install program will tell you the
109	total size of your disk, in both sectors, and cylinders.
110	Remember this number; if you're installing on the whole disk,
111	you'll need it again soon.
112
113	When describing your partitions, you will have the option of
114	entering data about them in units of disk sectors or
115	cylinders.  If you choose to enter the information in units of
116	sectors, remember that, for optimal performance, partitions
117	should begin and end on cylinder boundaries.  You will be
118	asked about which units you wish to use, and you should reply
119	with "c" for cylinders, or "s" for sectors.
120
121	You will be asked for the size of the NetBSD portion of the
122	disk.  If you're installing on the whole disk, reply with the
123	size of the disk, as printed earlier by the install program.
124	If you're using only part of the disk, reply with the size
125	that you specified in the partition editor.  (Don't forget to
126	enter the size in the units you specified in the last step!)
127
128	If you are not installing on the whole disk, you will be asked
129	fro the offset of the NetBSD partition from the beginning of
130	the disk.  Reply with the appropriate offset (again, in
131	whichever units you specified), as determined by how you
132	set up your disk using the partition editor.
133
134	You will be asked to enter the size of your NetBSD root
135	partition.  It should be at least 13M, but if you are going to
136	be doing development, 14-16M is a more desirable size.  This
137	size should be expressed in units of sectors or cylinders,
138	depending on which you said you wanted to use.
139
140	Next, you will be asked for the size of your swap partition.
141	You should probably allocate twice as much swap space as you
142	have real memory.  Systems that will be heavily used should
143	have more swap space allocated, and systems that will be
144	lightly used can get by with less.  If you want the system to
145	be able to save crash dumps when it panics, you will need at
146	least as much swap space as you have RAM.  Again, this number
147	should be expressed in units of sectors or cylinders, as
148	appropriate.
149
150	The install program will then ask you for information about
151	the rest of the partitions you want on your disk.  For most
152	purposes, you will want only one more partition, "/usr".
153	(Machines used as servers will probably also want /var as a
154	separate partition.  That can be done with these installation
155	tools, but is not covered here.)  The install program will
156	tell you how much space there is left to be allocated in the
157	NetBSD area of the disk, and, if you only want one more
158	partition ("/usr"), you should enter it at the prompt when the
159	installer asks you how large the next partition should be.
160	It will then ask you for the name of the mount point for that
161	partition.  If you're doing a basic installation, that is
162	"/usr".
163
164	YOU ARE NOW AT THE POINT OF NO RETURN.  Nothing has been
165	written to your disk yet, but if you confirm that you want to
166	install NetBSD, your hard drive will be modified, and its
167	contents may be scrambled at the whim of the install program.
168	This is especially likely if you have given the install
169	program incorrect information.  If you are sure you want to
170	proceed, enter "yes" at the prompt.
171
172	The install program will now label your disk and make the file
173	systems you specified.  The filesystems will be initialized to
174	contain NetBSD bootstrapping binaries and configuration files.
175	It will also create an /etc/fstab for your system, and mount all
176	of the file systems under /mnt.	(In other words, your root
177	partition will be mounted on /mnt, your /usr partition on /mnt/usr,
178	and so on.)  There should be no errors in this section of the
179	installation.  If there are, restart from the beginning of the
180	installation process.
181
182	You will be placed at a shell prompt ("#").  The remaining tasks
183	are to copy the kernel from the kernel copy floppy to the hard
184	drive's root filesystem and install the distribution sets. The
185	flow of installation differs depending on your hardware resources,
186	and on what media the distribution sets reside.
187
188	To install from floppy:
189		If you only have only one floppy drive, the order of
190		installation is different.  Follow the directions in the
191		"Kernel installation" section which will help you install a
192		kernel on the hard drive and then boot off the hard drive.
193		Then continue with the rest of the process described here to
194		install the distribution sets from floppy:
195				
196		The first thing you should do is pick a temporary
197		directory where the distribution files can be stored.
198		To do this, enter the command "Set_tmp_dir", and enter
199		the name of the temporary directory.  (Don't forget
200		that if your disk is still mounted under /mnt; you should
201		probably pick a directory under /mnt/usr.)
202
203		After you have picked a temporary directory, enter the
204		"Load_fd" command, to load the distribution sets from
205		your floppies.
206
207		You will be asked which floppy drive to use.  Enter
208		"0" (zero) if you're using the first floppy drive
209		(i.e. what DOS would call "A:"), or enter "1" if
210		you're using the second.  (Remember that you CANNOT
211		use the floppy drive that you booted from.  If you
212		booted from "A:", you must load from "B:".)
213
214		You will be prompted to insert a floppy into the drive,
215		to have its contents copied to your hard disk.  Do so,
216		and hit return to begin copying.  When that is done,
217		read the remainder of the floppies that contain the
218		distribution sets that you want to install, one by
219		one.  When the last is read, and you are being
220		prompted for another, hit Control-C.
221
222		Run the "Extract" command once for each distribution
223		set you wish to install.  For instance, if you wish to
224		install the "base10" distribution set, followed by the
225		"man10" distribution set, and finally the "etc10"
226		distribution set, use the commands:
227			Extract base10
228			Extract man10
229			Extract etc10
230
231		For each extraction, it will ask you if the extraction
232		should be verbose.  If you reply affirmatively, it
233		will print out the name of each file that's being
234		extracted.
235
236		(Note: if you know that you will be running low on
237		disk space when installing NetBSD, you can load and
238		extract one distribution set at a time.  To do this,
239		load only the floppies which contain the files for the
240		first distribution set, extract them, and then change
241		to the temporary directory and remove them with the
242		command "rm set_name.??".)
243
244		Once you are finished extracting all of the sets that
245		you wish to install, you should proceed to the
246		instructions below (after the last install medium
247		type-specific instructions), that explain how you
248		should configure your system.
249
250	To install from tape:
251		The first thing you should do is pick a temporary
252		directory where the distribution files can be stored.
253		To do this, enter the command "Set_tmp_dir", and enter
254		the name of the temporary directory.  (Don't forget
255		that your disk is mounted under /mnt; you should
256		probably pick a directory under /mnt/usr.)  The
257		default is /mnt/usr/distrib.
258
259		After you have picked a temporary directory, enter the
260		"Load_tape" command, to load the distribution sets from
261		tape.
262
263		You will be asked which tape drive to use.  The
264		default is "rst0", which is correct if you're using
265		the SCSI tape drive with the lowest SCSI ID number.
266		(For the SCSI tape drive with the next lowest SCSI ID
267		number, you should use "rst1", and so on.)
268
269		You will be prompted to hit return when you have
270		inserted the tape into the tape drive.  When you do,
271		the contents of the tape will be extracted into the
272		temporary directory, and the names of the files being
273		extracted will be printed.
274
275		After the tape has been extracted, to go the directory
276		containing the first distribution set you wish to
277		install.  (Depending on how you made the tape, it's
278		probably a subdirectory of the temporary directory you
279		specified above.)  Once there, run the "Set_tmp_dir"
280		command again, and accept its default answer by
281		hitting return at the prompt.
282
283		Use the "Extract" command to extract the distribution
284		set.  For instance, if you're extracting the "base10"
285		set, use the command:
286			Extract base10
287		You will be asked if you wish the extraction to be
288		verbose.  If you reply affirmatively, the name of each
289		file being extracted will be printed.
290
291		Repeat the previous two steps for each distribution
292		set you wish to install.  Change to the set's
293		directory, run "Set_tmp_dir", and then run
294		"Extract <set_name>" to extract the set.
295
296		Once you are finished extracting all of the sets that
297		you wish to install, you should proceed to the
298		instructions below (after the last install medium
299		type-specific instructions), that explain how you
300		should configure your system.
301
302	To install via FTP or NFS:
303		The first thing you should do is pick a temporary
304		directory where the distribution files can be stored.
305		To do this, enter the command "Set_tmp_dir", and enter
306		the name of the temporary directory.  (Don't forget
307		that your disk is mounted under /mnt; you should
308		probably pick a directory under /mnt/usr.)  The
309		default is /mnt/usr/distrib.
310
311		Configure the appropriate ethernet interface (e.g.
312		ed0, ep0, etc.) up, with a command like:
313
314		ifconfig <ifname> <ipaddr> [netmask <netmask>]
315
316		where "<ifname>" is the interface name, like those
317		listed above, and "<ipaddr>" is the numeric IP address
318		of the interface.  If the interface has a special
319		netmask, supply the word "netmask" at and that netmask
320		at the end of the command line.  (The brackets
321		indicate that those arguments are optional.)  For
322		instance, to configure interface ed0 with IP address
323		129.133.10.10, use the command:
324
325		ifconfig ed0 129.133.10.10
326
327		and to configure interface ep0 with IP address
328		128.32.240.167 and a special netmask, 0xffffff00, use
329		the command:
330
331		ifconfig ep0 128.32.240.167 netmask 0xffffff00
332
333		If your board selects software selection of the
334		ethernet interface to use, you might have to add
335		special flags to the "ifconfig" command you use.
336		Consult the table below for the appropriate flags:
337
338		Interface Type	Connector	Flags
339		--------- ----	---------	-----
340		ed with WD/SMC*	BNC		[none necessary]
341		ed with WD/SMC*	UTP		[none necessary]
342		ed with WD/SMC*	AUI		link0
343		ed with 3c503	BNC		[none necessary]
344		ed with 3c503	AUI		link0
345		ep		BNC		[none necessary]
346		ep		AUI		link0
347		ep		UTP		link0 link1
348
349		* Older WD boards do not support software configuration,
350		  and must be configured via jumpers.  These flags
351		  will have no effect on them.
352
353		In other words, if, in the last example, the AUI port
354		of the board were being used, you would use the
355		command:
356
357		ifconfig ep0 128.32.240.167 netmask 0xffffff00 link0
358
359		If the NFS server or FTP server is not on a directly-
360		connected network, you need to set up a route to it
361		using a command like:
362
363		route add default <gate_ipaddr>
364
365		where <gate_ipaddr> is your gateway's numeric IP
366		address.
367
368		If you are NFS-mounting the distribution sets, mount
369		them on the temporary directory with a command like:
370
371		mount -t nfs <serv_ipaddr>:<dist_dir> <tmp_dir>
372
373		where <serv_ipaddr> is the server's numeric IP address,
374		<dist_dir> is the path to the distribution files on
375		the server, and <tmp_dir> is the name of the local
376		temporary directory.
377
378		Once this is done, proceed as if you had loaded the
379		files from tape, changing to the appropriate
380		directories, running "Set_tmp_dir", and running
381		"Extract" as appropriate.
382
383		If you are retrieving the distribution sets using ftp,
384		change into the temporary directory, and execute the
385		command:
386
387		ftp <serv_ipaddr>
388
389		where <serv_ipaddr> is once again the server's numeric
390		IP address.  Get the files with FTP, taking care to
391		use binary mode when transferring the files.
392
393		Once you have all of the files for the distribution
394		sets that you wish to install, you can proceed using
395		the instructions above, as if you had installed from a
396		floppy.  (Note that as with the floppy install, if
397		you're short on disk space, you can transfer only one
398		set at a time, extract it, then delete it, to save
399		space.)
400
401	Once you have finished extracting all of the distribution sets
402	that you wish to install, and are back at the "#" prompt, you
403	are ready to configure your system.  The configuration utility
404	expects that you have installed the "base10" and "etc10"
405	distribution sets.  If you have not, you will not be able to
406	run it successfully (nor will you have a functional system, in
407	any case).  To configure your newly-installed NetBSD system,
408	run the command "Configure".  It will ask you for the system's
409	host name, domain name, and other network configuration
410	information.  It will set up your configuration files and make
411	the device nodes for the newly-installed system.
412
413Kernel Installation:
414
415	Enter "halt" at the prompt to halt the
416	system.  When the system is halted, remove the "inst-10"
417	floppy from the floppy drive, and replace it with the NetBSD
418	1.0 kernel-copy floppy that you previously booted from. Reboot
419	with that floppy.
420
421	Once again, you will be prompted to insert a file system
422	floppy.  DO NOT replace the kernel-copy floppy, just hit any
423	key.
424
425	Again, While booting, you may see several warnings.  You may
426	be warned that no swap space is present, that init(8) cannot
427	find /etc/rc, and that one or more databases with names like
428	"pwd.db" cannot be found.  Do not be alarmed, as, again, these
429	are completely normal.  Hit return at the prompt asking you
430	for a shell name.
431
432	You will be presented with a shell prompt, at which you should
433	enter the "copy_kernel" command.  It will ask you what
434	partition to copy the kernel to, and you should reply with the
435	name of your root partition (e.g. sd0a or wd0a).
436
437	You will be asked if you are sure that you want to copy the
438	kernel.  Reply affirmatively, and it will check the file
439	system on your root partition, mount it, and copy the kernel.
440	Once the kernel is copied, you should use "halt" to halt the
441	system.
442
443	Once the system is halted, remove the kernel-copy floppy from
444	the floppy disk drive, and hit any key to reboot.
445
446Congratulations, you have successfully installed NetBSD 1.0.  When you
447reboot into NetBSD, you should log in as "root" at the login prompt.
448There is no initial password, but if you're using the machine in a
449networked environment, you should create yourself an account and
450protect it and the "root" account with good passwords.
451
452Some of the files in the NetBSD 1.0 distribution might need to be
453tailored for your site.  In particular, the /etc/sendmail.cf file will
454almost definitely need to be adjusted, and other files in /etc will
455probably need to be modified, as well.  If you are unfamiliar with
456UN*X-like system administration, it's recommended that you buy a book
457that discusses it.
458