source: trunk/minix/man/man8/boot.8@ 11

Last change on this file since 11 was 9, checked in by Mattia Monga, 14 years ago

Minix 3.1.2a

File size: 15.8 KB
RevLine 
[9]1.TH BOOT 8
2.SH NAME
3boot \- from power on to the login prompt
4.SH DESCRIPTION
5.de SP
6.if t .sp 0.4
7.if n .sp
8..
9At power on the machine reads the first sector of the boot device into memory
10and executes it. This bootstrap code loads
11.BR /boot/boot ,
12the MINIX 3 Boot Monitor. The monitor loads the kernel binaries from
13.BR /boot/image ,
14or the newest file in
15.B /boot/image
16if it is a directory.
17.PP
18The MINIX 3 system is now running, the different tasks initialize themselves
19and control is transferred to the last one,
20.BR init .
21.PP
22.B Init
23is the grandparent of all MINIX 3 processes, it is responsible for starting
24login processes on each terminal, but first it runs
25.BR /etc/rc .
26.PP
27.B /etc/rc
28checks the state of the system and starts daemons. First it sets the
29keyboard translation to the mapping in
30.B /etc/keymap
31if present, followed by a call to
32.BR readclock (8)
33to set MINIX 3 time from the hardware clock. Next the file systems are checked
34if necessary and the
35.B /usr
36file system is mounted.
37.PP
38The system is now ready for multiuser startup,
39.B /etc/rc
40calls
41.B /usr/etc/rc
42that cleans out /tmp, /usr/tmp, and resets or cycles log files by running
43.BR /usr/etc/daily ,
44starts the
45.BR update (8)
46and
47.BR cron (8)
48daemons, and initializes the network services.
49.B /etc/rc
50finally runs
51.BR /usr/local/etc
52to initialize the system in a site or host dependent way.
53.PP
54.B Init
55reads
56.B /etc/ttytab
57and starts a
58.BR getty (8)
59for each enabled terminal line to allow a user to log in.
60.SH OPTIONS
61.TP
62.B bootopts=\-s
63The value of the boot variable
64.B bootopts
65is passed to
66.BR /etc/rc .
67If it contains
68.B \-s
69then the system will run a single user shell before continuing with multiuser
70startup. (Note that one normally uses
71.B boot \-s
72instead of setting
73.BR bootopts .)
74.TP
75.B bootopts=\-a
76This flag tells that
77.B /etc/fstab
78must be ignored. The system asks for a device to use as /usr instead. This
79will also be done if the root device is not as mentioned in
80.BR /etc/fstab .
81.TP
82.B bootopts=\-f
83Force a file system check, even if the system was shut down properly. (Do
84this once in a while to be sure about the state of the file systems.)
85.TP
86.BI servers= program\fR[,\fIprogram\fR...]
87Names the special servers that must be started in /usr/etc/rc. The setting
88.BR "servers=inet"
89will start the TCP/IP server.
90.SH "BOOT ENVIRONMENT"
91Many features of the drivers inside the kernel are controlled by settings in
92the boot environmenti, like
93.B bootopts
94above does for
95.BR /etc/rc .
96The values of these variables are usually colon or comma separated
97numbers configuring the driver.
98.B "DPETH0 = 300:10"
99tells the DP ethernet driver to use I/O address 0x300, interrupt request
10010, and the default memory address (0xD0000, values may be omitted) for the
101first ethernet board. (Note that IRQ 2 is redirected to IRQ 9 on AT's and
102PS/2's, so use 9 if a device is jumpered for 2.)
103.PP
104Variables that are special to both the monitor and the kernel are described
105in
106.BR monitor (8).
107This section lists extra variables or variable settings:
108.TP
109\fBc\fIn\fR = \fBat\fR | \fBbios\fR | \fBesdi\fR | \fBxt\fR | \fBaha1540\fR | \fBdosfile\fR | \fBfatfile\fR
110Choose the driver that is to be used as controller
111.IR n ,
112in order: IBM/AT (classic AT or newer IDE), BIOS (any disk), ESDI
113(some PS/2s), IBM/XT, Adaptec 154x, MINIX 3 under DOS "file as disk",
114FAT file system "file as disk".
115By default
116.B at
117is used on AT bus systems,
118.B bios
119on PS/2s and XTs, and
120.B dosfile
121when running under DOS.
122Most drivers are present in the kernel as distributed, but may be taken out
123by modifying
124.BR /usr/include/minix/config.h .
125See
126.BR controller (4).
127(An XT should always use the BIOS driver, not the XT driver, because BIOS
128calls are cheap on an XT. The XT driver can be used on AT machines with an
129old XT controller.)
130.TP
131\fBDPETH\fIn\fR = \fBon\fR | \fBoff\fR
132Turn an ethernet board on or off. The driver is by default in "sink" mode
133for all boards. The sink mode allows one to use the driver without an
134ethernet board installed. The driver will play /dev/null for that device,
135i.e. nothing comes in, and anything send out is dropped on the floor. If
136the board is turned on then the driver will use it to send out packets, if
137it is turned off then the driver will fail for that board.
138.PP
139.if n .ta \w'DPETHn = I/O-addr:irq:mem_addr:mem_size'u+2m
140.if t .ta \w'\fBDPETH\fIn\fR = \fII/O-addr\fR:\fIirq\fR:\fImem_addr\fR:\fImem_size\fR'u+2m
141\fBDPETH\fIn\fR = \fII/O-addr\fR:\fIirq\fR:\fImem_addr\fR:\fImem_size\fR (WD80x3)
142.br
143\fBDPETH\fIn\fR = \fII/O-addr\fR:\fIirq\fR:\fB0\fR (NE2000)
144.br
145\fBDPETH\fIn\fR = \fII/O-addr\fR:\fIirq\fR:\fIflags\fR (3c503)
146.RS
147Set the I/O address (hex), IRQ (decimal), memory address (hex), memory
148size (hex), or flags (hex) of the
149.IR n -th
150ethernet board and turn it on. By default they are configured as
151280:3:D0000 and 300:5:C8000 with the memory size set to 2000, 4000, or 8000
152depending on the type of board found.
153For the Western Digital cards the IRQ must be what the board expects,
154but the memory address is programmed into the board by the driver.
155The SMC EtherEZ board, a WD8013 successor, has only 8K
156memory. This confuses the driver, so you need to explicitly specify the
157board size as being 2000.
158The memory address and size have no meaning for the Novell ethernet boards,
159but the address may be explicitly set to zero to indicate that the board
160.B is
161a Novell ethernet board.
162For the 3Com 3c503 the third parameter are flags, with the low bit indicates
163that the on-board tranceiver must be used if 0 (thin ethernet), or that an
164external tranceiver is used on the AUI port if set to 1.
165The IRQ is software settable, and must be specified as 2 (XT), 3, 4, 5,
166or 9 (AT). The memory address is set on the board by jumpers. The driver
167does not support I/O mode for the 3c503.
168(Note the little differences between board types. For the 8003/8013 and
169NE1000/NE2000 the IRQ is fixed and the memory address variable, for the
1703c503 the IRQ is variable and the memory address is fixed, but need not be
171specified. Messy.)
172.RE
173.TP
174\fBDPETH\fIn\fB_EA\fR = \fIe0\fR:\fIe1\fR:\fIe2\fR:\fIe3\fR:\fIe4\fR:\fIe5\fR
175Set the ethernet address of the
176.IR n -th
177ethernet board. The address is normally obtained from the ethernet board,
178so only in exceptional circumstances is this setting ever needed. (Use the
179address of the main server if you want a career change.)
180.TP
181\fBAHA0\fR = \fII/O-addr\fR:\fIbus-on\fR:\fIbus-off\fR:\fItr-speed\fR
182Configure the Adaptec 154xA SCSI host adapter to use the given I/O address
183(hex), Bus-on time (decimal), Bus-off time (decimal) and transfer speed
184(hex). The default is 330:15:1:00. The default transfer speed is always
1855.0 Mb/s (code 00) ignoring the jumper settings.
186.TP
187\fBaha1540-d\fIn\fR = \fIsleep-time\fR:\fItarget\fR,\fIlun\fR
188Program SCSI disk
189.I n
190to have the given target and logical unit number. The target and lun
191of a tape or other SCSI device may be changed by setting the
192.BI aha1540-d n
193variable that would be used had it been a disk. So tape device c0t7 can be
194set to target 4, lun 1 with aha1540-d7=:4,1.
195(The
196.I sleep-time
197parameter is present but ignored to be compatible with Minix-vmd.)
198.TP
199\fBdosfile-d\fIn\fR = \fIfile\fR
200Tells the DOS virtual disk driver for disk
201.I n
202to use a given file as a disk. The file is a DOS file name that the
203boot monitor must be able to open.
204.TP
205\fBfatfile-d\fIn\fR = \fIdriver:minor:file\fR
206Tells the FAT virtual disk driver for disk
207.I n
208to use a given file as a disk. The
209.I driver
210parameter is the name of driver that handles the disk, and
211.I minor
212is the device number of the partition where the file is found. See
213.BR controller (4)
214for names and numbers.
215The
216.I file
217argument is the path to the file from the root directory down. The driver
218named must also be tied to a controller with a
219.BI c n
220variable, so that the FAT file driver can find it.
221A handy way to find the proper minor number is to run
222.B "ls\ \-l"
223on the device where the file is found. As a example, we assume the most
224common situation of a disk file on the first partition of the first drive
225on an ATA (IDE) controller:
226.SP
227.in +5
228.ft B
229.nf
230c0 = fatfile
231c1 = at
232fatfile-d0 = at:1:/minix/minix.mnx
233.fi
234.ft P
235.in -5
236.TP
237.BR TZ " = " GMT0
238This sets the time zone the hardware clock is running in.
239.B Readclock
240uses this to correctly obtain the time of the clock. The timezone of the
241system is set in
242.BR /etc/profile .
243This boot variable is normally not set, only a few UNIX die-hards who
244don't care about the time Windows sees and don't want to change the clock
245twice a year for daylight savings use this option. (Set Windows time to the
246time zone of Casablanca to match.)
247.SH "TCP/IP CONFIGURATION"
248To use TCP/IP you need to run the
249.B inet
250server, and unless you are running standalone you have to enable the
251ethernet driver. See the
252.B servers
253and
254.BI DPETH n
255boot variables above. The driver supports these ethernet cards: Western
256Digital 8003, Western Digital 8013, SMC Elite Ultra 16,
257Novell NE1000 and NE2000, 3Com Etherlink II (3c503). Many newer
258variants of the WD8013, now under the SMC brand, may also work.
259A common PCI reimplementation of the NE2000 using the Realtek 80 chipset is
260also supported. Make sure it's just a 10 mbit device and that it has a
261chip marked "RTL 8029".
262.PP
263You are likely to use TCP/IP in one of three situations:
264.PP
265.RS
266Standalone with no connection to a network.
267.SP
268In a small network with no support from a "big" host.
269.SP
270Connected to a large network with address and name servers.
271.RE
272.PP
273In each situation you need a different set of configuration files.
274.SS Standalone
275All you need is a name and an IP address. Suppose the name is "flotsam"
276and the IP address is 192.168.0.1 from the private IP space, then this is
277put in
278.BR /etc/hosts :
279.PP
280.RS
281.ta +\w'192.168.0.1'u+3n
282192.168.0.1 flotsam
283.RE
284.PP
285And this in
286.BR /etc/dhcp.conf :
287.PP
288.RS
289.nf
290host 192.168.0.0/24 {};
291interface ip0 flotsam;
292.fi
293.RE
294.SS "Small Network"
295A network requires an ethernet driver. You need to enable one in
296<minix/config.h> and you need to tell
297.B inet
298that it should use that driver by making
299.B /etc/inet.conf
300look like this:
301.PP
302.RS
303.nf
304eth0 DP8390 0 { default; };
305.fi
306.RE
307.PP
308The second word (DP8390) must the name of the ethernet driver you've enabled.
309It can also be seen among the drivers in the output of
310.BR "ps ax" .
311See also
312.BR inet (8).
313.PP
314In a small network there may not be a DHCP server for MINIX 3 to obtain its IP
315address and name from, so you need specify the ethernet address of your machine
316and host names of all machines in the hosts and DHCP configuration files.
317Suppose your machine is to be named "flotsam", and another machine in the
318network is named "jetsam", and let's use network 192.168.0.0/24 again. The
319file
320.B /etc/hosts
321now looks like this:
322.PP
323.RS
324.ta +\w'192.168.0.1'u+3n
325.nf
326192.168.0.1 flotsam
327192.168.0.2 jetsam
328.fi
329.RE
330.PP
331And
332.B /etc/dhcp.conf
333like this:
334.PP
335.RS
336.nf
337host 192.168.0.0/24 {};
338client 0:1:1b:a:68:ce flotsam;
339.fi
340.RE
341.PP
342Use
343.B hostaddr \-e
344to find out what the ethernet address of your network card is. (The address
345above is an example.)
346.PP
347A host needs to have all hostnames used on your little network in its
348host file. In the DHCP configuration you only need the client entry of the
349system itself, but it may be useful to add all client entries to make them all
350the same.
351.PP
352If one of the machines is always on when any of the others is, then you can let
353it be a DHCP server. The other machines don't need a hosts or DHCP file
354anymore. If flotsam is the server then its
355.BR /etc/dhcp.conf
356looks like this:
357.PP
358.RS
359.nf
360.ta +4m
361host 192.168.0.0/24 {
362 DNSserver flotsam;
363};
364client 0:1:1b:a:68:ce flotsam { option server; };
365client 0:0:c0:3a:12:10 jetsam;
366.fi
367.RE
368.SS "Large Network"
369In a network with a central network administration your machine's IP address
370and name are given by the DHCP server. You don't need any configuration
371files. If you want your machine to do more, like being a router or
372something, then see
373.BR inet (8)
374on setting up more than one network interface.
375.PP
376.SS "Simpler configuration tools"
377The
378.BR dhcpd
379and
380.BR nonamed
381daemons are complex little programs that try to obtain information about
382their surroundings automatically to tell the machine what its place in the
383network is. It should come as no surprise that there are simpler utilities
384to configure a machine. On a memory starved machine it may even be wise to
385configure a machine statically to get rid of the daemons. The first daemon,
386.BR dhcpd ,
387can be replaced by:
388.PP
389.RS
390.B ifconfig \-h
391.I host-IP-address
392.B \-n
393.I netmask
394.br
395.B add_route \-g
396.I gateway-IP-address
397.RE
398.PP
399to set the IP address and netmask of the machine. Note that you can only
400do this if the machine has a static IP address, or chaos will follow. Remove
401.BR /usr/adm/dhcp.cache
402if the DHCP daemon has run before.
403.PP
404The name daemon,
405.BR nonamed ,
406can be replaced by an entry in
407.B /etc/resolv.conf
408that specifies an external name daemon:
409.PP
410.RS
411.B nameserver
412.I nameserver-IP-address
413.RE
414.PP
415The
416.B ifconfig
417and
418.B add_route
419calls can be placed in the file
420.BR /etc/rc.net .
421Check
422.B /usr/etc/rc
423to see how
424.BR /etc/rc.net
425can be used to override running the normal series of network deamons.
426Note that
427.BR /etc/rc.net
428is sourced, so you can use the same variables and functions that
429.BR /usr/etc/rc
430uses.
431These changes undo all the efforts to make MINIX 3 TCP/IP
432autoconfigurable. Make very sure that all the IP addresses are correct, and
433that the IP address of your machine is unique. (Mistakenly using the
434address of a main server will make all other machines look at your machine,
435and will make all the users of all other machines look at you.)
436.SH FILES
437.TP 20n
438/boot
439MINIX 3 Boot Monitor.
440.TP
441/minix
442Kernel image, or directory containing them.
443.TP
444/etc/rc
445Basic system initialization.
446.TP
447/usr/etc/rc
448Complete system initialization.
449.TP
450/etc/rc.net
451Specialized network initialization.
452.TP
453/usr/local/etc/rc
454Per site initialization.
455.TP
456/etc/hosts
457Name to IP address mapping.
458.TP
459/etc/dhcp.conf
460Network initialization.
461.TP
462/etc/resolv.conf
463Name resolver configuration.
464.SH "SEE ALSO"
465.BR monitor (8),
466.BR init (8),
467.BR inet (8),
468.BR loadkeys (8),
469.BR readclock (8),
470.BR fsck (1),
471.BR fstab (5),
472.BR update (8),
473.BR cron (8),
474.BR ttytab (5),
475.BR getty (8),
476.BR hostaddr (1),
477.BR ifconfig (8),
478.BR dhcpd (8),
479.BR nonamed (8),
480.BR tcpd (8),
481.BR hosts (5),
482.BR ethers (5),
483.BR resolv.conf (5),
484.BR inet (8).
485.SH DIAGNOSTICS
486.TP 5n
487Checking File Systems.
488If the system has crashed then
489.B fsck
490is called for the root and /usr file systems. It is wise to reboot if the
491root file system must be fixed.
492.TP
493Finish the name of device to mount as /usr: /dev/
494The prompt for the
495.B \-a
496option, or if the name of the /usr file system has not been set in /etc/fstab.
497You can type a device name, say
498.BR fd0 .
499.TP
500Unable to obtain an IP address after 10 seconds.
501TCP/IP misconfiguration. The DHCP daemon may have failed because the ethernet
502address of the machine is not known to the DHCP server, the DHCP
503configuration is not filled in properly, or the DHCP server can not be reached.
504Either talk to your Network Administrator, or make a dhcp.conf
505and a hosts file.
506.TP
5071.2.3.4 login:
508If you see an IP address instead of a host name then the system failed to
509translate the IP address. Either talk to your Network Administrator to
510have the reverse address translation tables fixed, or make a hosts file.
511.SH NOTES
512The 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16 networks can be used for
513private networks. (This so-called CIDR notation names an IP address and
514the number of bits in the network number. So 172.16.0.0/12 includes all
515addresses from 172.16.0.0 to 172.31.255.255.)
516RFC-1597 will tell you why private networks are good, and RFC-1627 why
517they are bad.
518.SH BUGS
519Indefinite hangs are possible if I/O addresses or IRQ's are wrong. A driver
520may babble about addresses and IRQ's, but that does not mean that what it
521says is true, it may just be configured that way. It is very difficult to
522find peripherals on a PC automatically, and MINIX 3 doesn't even try.
523.SH AUTHOR
524Kees J. Bot <kjb@cs.vu.nl>
Note: See TracBrowser for help on using the repository browser.