summaryrefslogtreecommitdiff
path: root/distrib/notes/i386/install
blob: 8ab15db8fc5b96973c7f305425fa1ec1e49798a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
Installing OpenBSD is a relatively complex process, but if you have
this document in hand and are careful to read and remember the
information which is presented to you by the install program, it
shouldn't be too much trouble.

Before you begin, you should know the geometry of your hard disk, i.e.
the sector size (note that sector sizes other than 512 bytes are not
currently supported), the number of sectors per track, the number of
tracks per cylinder (also known as the number of heads), and the
number of cylinders on the disk.  The OpenBSD kernel will try to
discover these parameters on its own, and if it can it will print them
at boot time.  If possible, you should use the parameters it prints.
(You might not be able to because you're sharing your disk with
another operating system, or because your disk is old enough that the
kernel can't figure out its geometry.)

If OpenBSD will be sharing the disk with DOS or another operating
system, you should have already completed the section of these notes
that instructed you on how to prepare your hard disk.  You should know
the size of the OpenBSD area of the disk and its offset from the
beginning of the disk.  You will need this information when setting up
your OpenBSD partitions.

You should now be ready to install OpenBSD.  It might be handy for you
to have a pencil, some paper, and a calculator handy.

The following is a walk-through of the steps you will take while
getting OpenBSD installed on your hard disk.  If any question has a
default answer, it will be displayed in brackets ("[]") after the
question.  If you wish to stop the installation, you may hit Control-C
at any time, but if you do, you'll have to begin the installation
process again from scratch.  If, at any point, the kernel panics
with "ffs_valloc" your inst floppy is probably corrupted.  You
should make a new inst floppy or fsck your existing one (if you can).

	Boot your machine using of the appropriate kernel-copy floppy.
	When presented with the boot prompt (the prompt begins with
	"Boot" and ends with ":-"), hit return.  If the boot prompt
	does not appear in a reasonable amount of time, you either
	have a bad boot floppy or a hardware problem.  Try writing the
	kernel-copy floppy image to a different disk, and using that.
	If that doesn't work, try booting after disabling your CPU's
	internal and external caches (if any).  If it still doesn't
	work, OpenBSD probably can't be run on your hardware.  This can
	probably be considered a bug, so you might want to report it.
	If you do, please include as many details about your system
	configuration as you can.

	It will take a while to load the kernel from the floppy,
	probably around a minute or so.  After its loaded, you will be
	presented with the message:
		"Insert file system floppy"
	If you do not see that message after a reasonable time has
	elapsed, or the spinning cursor has stopped and nothing
	further has happened, either your boot floppy is bad or you
	are having hardware problems, and should proceed as outlined
	above.

	Once you have reached that prompt, remove the kernel-copy
	floppy from the floppy drive.  Make sure that the installation
	disk (the "inst-20" floppy) is writable, insert it into the
	floppy drive, and hit any key.

	You will then be presented with the OpenBSD kernel boot
	messages.  You will want to read them, to determine your
	disk's name and geometry.  Its name will be something like
	"sd0" or "wd0" and the geometry will be printed on a line that
	begins with its name.  As mentioned above, you will need your
	disk's geometry when creating OpenBSD's partitions.  You will
	also need to know the name, to tell the install tools what
	disk to install on.

	While booting, you will probably see several warnings.  You
	should be warned that no swap space is present, and that
	init(8) cannot find /etc/rc.  Do not be alarmed, these are
	completely normal.  When you reach the prompt asking you for a
	shell name, just hit return.

	You will be presented with a welcome message and a prompt,
	asking if you wish to proceed with the installation process.
	If you wish to proceed, enter "y" and hit return.

	You will be asked what type of disk driver you have.  The
	valid options are listed by the install program, to make sure
	you get it right.  If you're installing on an ST-506 or ESDI
	drive, you'll be asked if your disk supports automatic sector
	forwarding.  If you are SURE that it does, reply
	affirmatively.  Otherwise, the install program will
	automatically reserve space for bad144 tables.

	The install program will then tell you which disks of that
	type it can install on, and ask you which it should use.
	Reply with the name of your disk.  (The first disk of the type
	you selected, either "wd0" for ST-506/ESDI/IDE disks, or "sd0"
	for SCSI disks, is the default.)

	You will then be asked to name your disk's disklabel.  The
	default response is "mywd" or "mysd" depending on the type of
	your disk, and for most purposes it will be OK.  If you choose
	to name it something different, make sure the name is a single
	word and contains no special characters.  You don't need to
	remember this name.

	You will be prompted for your disk's geometry information,
	i.e. the number of bytes per sector, cylinders on the disk,
	tracks per cylinder (heads), and sectors per track.  Enter
	them when they are requested.  If you make a mistake, hit
	Control-C and when you get to the shell prompt, restart the
	install process by running the "install" command.  Once you
	have entered this data, the install program will tell you the
	total size of your disk, in both sectors, and cylinders.
	Remember this number; if you're installing on the whole disk,
	you'll need it again soon.

	When describing your partitions, you will have the option of
	entering data about them in units of disk sectors or
	cylinders.  If you choose to enter the information in units of
	sectors, remember that, for optimal performance, partitions
	should begin and end on cylinder boundaries.  You will be
	asked about which units you wish to use, and you should reply
	with "c" for cylinders, or "s" for sectors.

	You will be asked for the size of the OpenBSD portion of the
	disk.  If you're installing on the whole disk, reply with the
	size of the disk, as printed earlier by the install program.
	If you're using only part of the disk, reply with the size
	that you specified in the partition editor.  (Don't forget to
	enter the size in the units you specified in the last step!)

	If you are not installing on the whole disk, you will be asked
	fro the offset of the OpenBSD partition from the beginning of
	the disk.  Reply with the appropriate offset (again, in
	whichever units you specified), as determined by how you
	set up your disk using the partition editor.

	You will be asked to enter the size of your OpenBSD root
	partition.  It should be at least 13M, but if you are going to
	be doing development, 14-16M is a more desirable size.  This
	size should be expressed in units of sectors or cylinders,
	depending on which you said you wanted to use.

	Next, you will be asked for the size of your swap partition.
	You should probably allocate twice as much swap space as you
	have real memory.  Systems that will be heavily used should
	have more swap space allocated, and systems that will be
	lightly used can get by with less.  If you want the system to
	be able to save crash dumps when it panics, you will need at
	least as much swap space as you have RAM.  Again, this number
	should be expressed in units of sectors or cylinders, as
	appropriate.

	The install program will then ask you for information about
	the rest of the partitions you want on your disk.  For most
	purposes, you will want only one more partition, "/usr".
	(Machines used as servers will probably also want /var as a
	separate partition.  That can be done with these installation
	tools, but is not covered here.)  The install program will
	tell you how much space there is left to be allocated in the
	OpenBSD area of the disk, and, if you only want one more
	partition ("/usr"), you should enter it at the prompt when the
	installer asks you how large the next partition should be.
	It will then ask you for the name of the mount point for that
	partition.  If you're doing a basic installation, that is
	"/usr".

	YOU ARE NOW AT THE POINT OF NO RETURN.  Nothing has been
	written to your disk yet, but if you confirm that you want to
	install OpenBSD, your hard drive will be modified, and its
	contents may be scrambled at the whim of the install program.
	This is especially likely if you have given the install
	program incorrect information.  If you are sure you want to
	proceed, enter "yes" at the prompt.

	The install program will now label your disk and make the file
	systems you specified.  The filesystems will be initialized to
	contain OpenBSD bootstrapping binaries and configuration files.
	It will also create an /etc/fstab for your system, and mount
	all of the file systems under /mnt. (In other words, your root
	partition will be mounted on /mnt, your /usr partition on
	/mnt/usr, and so on.)  There should be no errors in this
	section of the installation.  If there are, restart from the
	beginning of the installation process.

	You will be placed at a shell prompt ("#").  The remaining
	tasks are to copy the kernel from the kernel copy floppy to
	the hard drive's root filesystem and install the distribution
	sets.  The flow of installation differs depending on your
	hardware resources, and on what media the distribution sets
	reside.

	To install from floppy:
		If you only have only one floppy drive, the order of
		installation is different.  Follow the directions in
		the "Kernel installation" section which will help you
		install a kernel on the hard drive and then boot off
		the hard drive, then continue with the rest of the
		process described here to install the distribution
		sets from floppy:

		The first thing you should do is pick a temporary
		directory where the distribution files can be stored.
		To do this, enter the command "Set_tmp_dir", and enter
		the name of the temporary directory.  (Don't forget
		that if your disk is still mounted under /mnt; you
		should probably pick a directory under /mnt/usr.)

		After you have picked a temporary directory, enter the
		"Load_fd" command, to load the distribution sets from
		your floppies.

		You will be asked which floppy drive to use.  Enter
		"0" (zero) if you're using the first floppy drive
		(i.e. what DOS would call "A:"), or enter "1" if
		you're using the second.  (Remember that you CANNOT
		use the floppy drive that you booted from.  If you
		booted from "A:", you must load from "B:".)

		You will be prompted to insert a floppy into the drive,
		to have its contents copied to your hard disk.  Do so,
		and hit return to begin copying.  When that is done,
		read the remainder of the floppies that contain the
		distribution sets that you want to install, one by
		one.  When the last is read, and you are being
		prompted for another, hit Control-C.

		Run the "Extract" command once for each distribution
		set you wish to install.  For instance, if you wish to
		install the "base20" distribution set, followed by the
		"man20" distribution set, and finally the "etc20"
		distribution set, use the commands:
			Extract base20
			Extract man20
			Extract etc20

		For each extraction, it will ask you if the extraction
		should be verbose.  If you reply affirmatively, it
		will print out the name of each file that's being
		extracted.

		(Note: if you know that you will be running low on
		disk space when installing OpenBSD, you can load and
		extract one distribution set at a time.  To do this,
		load only the floppies which contain the files for the
		first distribution set, extract them, and then change
		to the temporary directory and remove them with the
		command "rm set_name.??".)

		Once you are finished extracting all of the sets that
		you wish to install, you should proceed to the
		instructions below (after the last install medium
		type-specific instructions), that explain how you
		should configure your system.

	To install from tape:
		The first thing you should do is pick a temporary
		directory where the distribution files can be stored.
		To do this, enter the command "Set_tmp_dir", and enter
		the name of the temporary directory.  (Don't forget
		that your disk is mounted under /mnt; you should
		probably pick a directory under /mnt/usr.)  The
		default is /mnt/usr/distrib.

		After you have picked a temporary directory, enter the
		"Load_tape" command, to load the distribution sets from
		tape.

		You will be asked which tape drive to use.  The
		default is "rst0", which is correct if you're using
		the SCSI tape drive with the lowest SCSI ID number.
		(For the SCSI tape drive with the next lowest SCSI ID
		number, you should use "rst1", and so on.)

		You will be prompted to hit return when you have
		inserted the tape into the tape drive.  When you do,
		the contents of the tape will be extracted into the
		temporary directory, and the names of the files being
		extracted will be printed.

		After the tape has been extracted, to go the directory
		containing the first distribution set you wish to
		install.  (Depending on how you made the tape, it's
		probably a subdirectory of the temporary directory you
		specified above.)  Once there, run the "Set_tmp_dir"
		command again, and accept its default answer by
		hitting return at the prompt.

		Use the "Extract" command to extract the distribution
		set.  For instance, if you're extracting the "base20"
		set, use the command:
			Extract base20
		You will be asked if you wish the extraction to be
		verbose.  If you reply affirmatively, the name of each
		file being extracted will be printed.

		Repeat the previous two steps for each distribution
		set you wish to install.  Change to the set's
		directory, run "Set_tmp_dir", and then run
		"Extract <set_name>" to extract the set.

		Once you are finished extracting all of the sets that
		you wish to install, you should proceed to the
		instructions below (after the last install medium
		type-specific instructions), that explain how you
		should configure your system.

	To install via FTP or NFS:
		The first thing you should do is pick a temporary
		directory where the distribution files can be stored.
		To do this, enter the command "Set_tmp_dir", and enter
		the name of the temporary directory.  (Don't forget
		that your disk is mounted under /mnt; you should
		probably pick a directory under /mnt/usr.)  The
		default is /mnt/usr/distrib.

		Configure the appropriate ethernet interface (e.g.
		ed0, ep0, etc.) up, with a command like:

		ifconfig <ifname> <ipaddr> [netmask <netmask>]

		where "<ifname>" is the interface name, like those
		listed above, and "<ipaddr>" is the numeric IP address
		of the interface.  If the interface has a special
		netmask, supply the word "netmask" at and that netmask
		at the end of the command line.  (The brackets
		indicate that those arguments are optional.)  For
		instance, to configure interface ed0 with IP address
		129.133.10.10, use the command:

		ifconfig ed0 129.133.10.10

		and to configure interface ep0 with IP address
		128.32.240.167 and a special netmask, 0xffffff00, use
		the command:

		ifconfig ep0 128.32.240.167 netmask 0xffffff00

		If your board selects software selection of the
		ethernet interface to use, you might have to add
		special flags to the "ifconfig" command you use.
		Consult the table below for the appropriate flags:

		Interface Type	Connector	Flags
		--------- ----	---------	-----
		ed with WD/SMC*	BNC		[none necessary]
		ed with WD/SMC*	UTP		[none necessary]
		ed with WD/SMC*	AUI		link0
		ed with 3c503	BNC		[none necessary]
		ed with 3c503	AUI		link0
		ep		BNC		[none necessary]
		ep		AUI		link0
		ep		UTP		link0 link1

		* Older WD boards do not support software configuration,
		  and must be configured via jumpers.  These flags
		  will have no effect on them.

		In other words, if, in the last example, the AUI port
		of the board were being used, you would use the
		command:

		ifconfig ep0 128.32.240.167 netmask 0xffffff00 link0

		If the NFS server or FTP server is not on a directly-
		connected network, you need to set up a route to it
		using a command like:

		route add default <gate_ipaddr>

		where <gate_ipaddr> is your gateway's numeric IP
		address.

		If you are NFS-mounting the distribution sets, mount
		them on the temporary directory with a command like:

		mount -t nfs <serv_ipaddr>:<dist_dir> <tmp_dir>

		where <serv_ipaddr> is the server's numeric IP address,
		<dist_dir> is the path to the distribution files on
		the server, and <tmp_dir> is the name of the local
		temporary directory.

		Once this is done, proceed as if you had loaded the
		files from tape, changing to the appropriate
		directories, running "Set_tmp_dir", and running
		"Extract" as appropriate.

		If you are retrieving the distribution sets using ftp,
		change into the temporary directory, and execute the
		command:

		ftp <serv_ipaddr>

		where <serv_ipaddr> is once again the server's numeric
		IP address.  Get the files with FTP, taking care to
		use binary mode when transferring the files.

		Once you have all of the files for the distribution
		sets that you wish to install, you can proceed using
		the instructions above, as if you had installed from a
		floppy.  (Note that as with the floppy install, if
		you're short on disk space, you can transfer only one
		set at a time, extract it, then delete it, to save
		space.)

	Once you have finished extracting all of the distribution sets
	that you wish to install, and are back at the "#" prompt, you
	are ready to configure your system.  The configuration utility
	expects that you have installed the "base20" and "etc20"
	distribution sets.  If you have not, you will not be able to
	run it successfully (nor will you have a functional system, in
	any case).  To configure your newly-installed OpenBSD system,
	run the command "Configure".  It will ask you for the system's
	host name, domain name, and other network configuration
	information.  It will set up your configuration files and make
	the device nodes for the newly-installed system.

Kernel Installation:

	Enter "halt" at the prompt to halt the system.  When the
	system is halted, remove the "inst-20" floppy from the floppy
	drive, and replace it with the OpenBSD 2.1 kernel-copy floppy
	that you previously booted from.  Reboot with that floppy.
	with that floppy.

	Once again, you will be prompted to insert a file system
	floppy.  DO NOT replace the kernel-copy floppy, just hit any
	key.

	Again, While booting, you may see several warnings.  You may
	be warned that no swap space is present, that init(8) cannot
	find /etc/rc, and that one or more databases with names like
	"pwd.db" cannot be found.  Do not be alarmed, as, again, these
	are completely normal.  Hit return at the prompt asking you
	for a shell name.

	You will be presented with a shell prompt, at which you should
	enter the "copy_kernel" command.  It will ask you what
	partition to copy the kernel to, and you should reply with the
	name of your root partition (e.g. sd0a or wd0a).

	You will be asked if you are sure that you want to copy the
	kernel.  Reply affirmatively, and it will check the file
	system on your root partition, mount it, and copy the kernel.
	Once the kernel is copied, you should use "halt" to halt the
	system.

	Once the system is halted, remove the kernel-copy floppy from
	the floppy disk drive, and hit any key to reboot.

Congratulations, you have successfully installed OpenBSD 2.1.  When you
reboot into OpenBSD, you should log in as "root" at the login prompt.
There is no initial password, but if you're using the machine in a
networked environment, you should create yourself an account and
protect it and the "root" account with good passwords.

Some of the files in the OpenBSD 2.1 distribution might need to be
tailored for your site.  In particular, the /etc/sendmail.cf file will
almost definitely need to be adjusted, and other files in /etc will
probably need to be modified, as well.  If you are unfamiliar with
UN*X-like system administration, it's recommended that you buy a book
that discusses it.