Files
oldlinux-files/Minix/CD-ROM-2.0/MINIX/INSTALL.TXT
2024-02-19 00:21:39 -05:00

857 lines
39 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
USAGE(8) Maintenance Procedures USAGE(8)
NAME
usage - installing and using MINIX
DESCRIPTION
This manual page describes the installation and use of MINIX
from a System Administrators point of view. It contains an
installation guide, instructions on how to do the initial
configuration and some other info. Please read this docu-
ment entirely before attempting to install MINIX. The ins-
tallation steps are in the proper order, but not all the
information you may need is presented at the right moment.
Other detailed information that may be useful can be found
in boot(8) and hier(7).
1. REQUIREMENTS
The minimum system MINIX can be installed on comfortably is
an IBM PC/AT or PS/2 with a 286 processor, 640 KB memory, a
720 kb diskette drive, and 25-30 MB free space on an AT,
ESDI, or SCSI hard disk (the latter controlled by an Adaptec
1540.) MINIX for the 386 (MINIX-386 for short) can be
installed on a machine with at least a 386sx processor, 3 MB
memory and at least 25-30 MB of disk space.
2. MINIX INSTALLATION BACKGROUND
The objective of the installation is to create a partition
on your disk and to put MINIX into it. MINIX really
requires two partitions however, so the single "primary"
partition is split into two subpartitions. The a subparti-
tion will contain the root file system, and the c subparti-
tion will contain the /usr file system. What MS-DOS calls
"drives", i.e C:, D:, E:, MINIX calls "file systems". MINIX
does not use drive letters, but requires that one file sys-
tem is made a part of another file system by "mounting" one
on the other. The "root" file system is always present and
starts with the directory "/", the root of the directory
tree. The root file system contains a few programs in /bin,
device files in /dev, and configuration files in /etc. This
is just enough to get the system started. MINIX will soon
extend its directory tree by mounting a file system on the
/usr directory. What is henceforth known as the /usr file
system contains all MINIX programs in /usr/bin, file system
sources in /usr/src, etc, etc. The ROOT image contains the
complete MINIX root file system, but USR contains just a
small subset of the /usr file system, with just enough util-
ities to install MINIX. The complete /usr file system is
split up into the USR.TAZ, SYS.TAZ and CMD.TAZ archives that
are installed later to fill /usr.
Let's suppose your first hard disk, which has device name
/dev/hd0, has MS-DOS already present in the first primary
partition (/dev/hd1), and some free space left after that.
After MINIX is installed in that free space the disk will
1
USAGE(8) Maintenance Procedures USAGE(8)
look like this:
/dev/hd0 Whole hard disk #0
/dev/hd1 MS-DOS C: drive
/dev/hd2 MINIX primary partition
/dev/hd2a MINIX root partition
/dev/hd2c MINIX /usr partition
/dev/hd0 is the sum of a partition table, /dev/hd1 and
/dev/hd2. Likewise is /dev/hd2 the sum of a subpartition
table, /dev/hd2a and /dev/hd2c. Read the "DEVICES" sections
for more information on MINIX devices.
3. INSTALLATION
If you have not already copied MINIX to floppy disks, please
read the README.TXT file in the MINIX directory now. It
tells how to do this. You should also print out EXAMPLE.TXT
and read it in parallel with this document. This one tells
you what to do; that one shows you what the screen is sup-
posed to look like at each step, so you can see if every-
thing is OK.
You can install MINIX automatically or manually as described
the sections below. The end result is the same, but manual
installation allows one to deviate from the preconfigured
choices. You may wish to read the manual pages of the pro-
grams used below before you start. You may especially want
to read boot(8) if your machine is different from what the
majority buys, because you may need to set a few boot param-
eters to configure drivers. To do this type ESC to get to
the Boot Monitor prompt, set the appropriate variables, use
save to store the settings and menu to continue where you
left off.
To install the system you need two diskettes: a bootable
root diskette and a diskette full of binaries to use as
/usr. These diskettes are named ROOT and USR. These two
diskettes may also be combined on a single high density
diskette. In that case the USR part is on the c partition.
Insert the ROOT diskette, boot the machine and type '=' to
the menu. The MINIX kernel is loaded and takes control when
you see the copyright banner. After loading the root
diskette into the RAM disk you will be asked to finish the
name of the device to mount on /usr. Type fd0c for a
diskette that contains both ROOT and USR, otherwise replace
ROOT by USR and type fd0. Login as root.
4. AUTOMATIC INSTALLATION
Before starting the installation, you must either have a
free partition available or have at least 25-30 MB not in
any partition so you can create a MINIX partition.
2
USAGE(8) Maintenance Procedures USAGE(8)
Splitting an MS-DOS partition can be done using fips, and is
discussed in the main README.TXT file.
Type setup to start the installation script. First it
offers to install a national keyboard map. The names should
be clear, except for us-swap, which swaps the CTRL and CAPS
LOCK keys of a standard US style keyboard for people who
believe that the natural place of CTRL is next to A. The
default suggested between [ and ] is the US standard key-
board.
The next thing to do is to make a partition, for this you
are placed in a partition table editor named part. This
partition table editor is very easy to use (in the author's
opinion), but you will probably hate it. You can move all
over the place with the arrow keys, change values, and make
a mess of your partition table real quick. So if you get
into trouble, type 'q' to quit, 'n' to not write the table,
and RETURN to start over. Use the '?' key to get help.
With the '+' and '-' keys you can select the disk device to
install on, probably /dev/hd0, the first hard disk. Type
'r' to load the partition table of the selected disk.
Either create one new partition by modifying a partition
marked "None", or reuse an existing partition by changing
its type to "MINIX" (hex code 81). The FIPS program can be
used under MS-DOS to shrink an MS-DOS partition. FIPS
splits the MS-DOS partition in two, so one of the two can be
used for MINIX. You have to be absolutely sure which one.
When in doubt, first use the FDISK program under MS-DOS to
delete the extra partition, and let MINIX part create a new
one. DO NOT use part to shrink an existing partition!
MINIX needs a partition of at least 25-30 MB, but not larger
than 128 MB (MINIX-86) or 1 GB (MINIX-386). The system
needs 30 MB in compiled state.
The script then wants to know the name of the partition
you've created, this name is probably still visible on the
screen (hd2, hd6, something like that.) The new partition
table is reloaded into the disk driver, and the new MINIX
partition is carved up into two subpartitions, a 1440 kb
root and the rest for /usr.
After making /usr, it is immediately put to use to replace
the installation /usr file system so that you can remove the
USR diskette and insert the ROOT diskette (unless they are
one and the same). The root file system is filled with the
contents of the ROOT diskette and slightly patched up to
work on the hard disk (/etc/fstab.)
To compute the size of the so-called "second level block
cache" you are asked to specify the RAM size of your
3
USAGE(8) Maintenance Procedures USAGE(8)
machine. If you have plenty, i.e 4 MB or more then simply
hit RETURN, otherwise enter the size of your system RAM in
kilobytes.
You can now skip the next section and move to "TESTING", but
it may be instructive to read it anyway.
5. MANUAL INSTALLATION
The instructions that follow are at a very low level and
require you to be very careful. The big advantage is that
you know precisely what tools have been used and how every-
thing works. The disadvantage is that you may easily make a
mistake that either forces you to start over if you are
lucky, or wipes out the contents of your hard disk if you
are not. Only if you really want to do something different
should you use a manual installation. Slavishly following
the steps shown below will only make you end up with the
same result as an automatic installation.
Run part to make partitions to load the system into. The
best thing to do is to make one large primary partition of
type "MINIX" and to carve this partition up into three sub-
partitions for root and /usr. The assumption is that you
will use the second partition on the first hard disk,
/dev/hd2, and that hd2a is the root subpartition and hd2c is
/usr. If you want to use the first partition on the second
hard disk for instance, then substitute hd6 and hd6[ac] for
the above. On a SCSI disk it will be /dev/sd2 for the
second partition on the disk at target 0. See the section
on devices below, and the manual pages of part(8), hd(4),
and sd(4). Start part and select the whole hard disk device
(the "multiple of 5" device) that you want to install MINIX
onto. In our example it will be /dev/hd0.
Use part to make a single partition in the primary partition
table of type "MINIX", then hit '>' on this new partition to
make a subpartition table.
For the root subpartition you are advised to use 1440 kb
exactly. You can make it larger if you want to, but it is
advisable never to let the contents outgrow a floppy. (The
ROOT diskette is a copy of a root file system, and will be
used to fill your root subpartition.)
The second subpartition is either empty or a "scratch" par-
tition. MINIX no longer uses the b subpartition for any-
thing useful anymore, but it has become customary to have
root on a and /usr on c. (You are free to ignore this con-
vention, of course.)
Use the rest of the partition for the /usr c subpartition.
4
USAGE(8) Maintenance Procedures USAGE(8)
When you are done check that /dev/hd2a is active (the *
after the partition number) so you can boot from it later.
If your disk has bad blocks then don't put the root or
scratch subpartition on top of them. Make sure the inode
tables in the other partitions don't have bad blocks either.
You can put the subpartitions out of order on the disk if
that helps. Subpartition tables, other than the main parti-
tion table, are not sorted by the driver.
After making the partitions you do not have to reboot. The
disk driver reloads the partition tables on the next access
if the disk is not in use. (Open or mounted.)
To be able to boot from /dev/hd2a you must place a master
bootstrap in /dev/hd2. It has been placed there by part if
it told you that it was creating a new partition table, but
installboot -m /dev/hd2 /usr/mdec/masterboot
will put it there for sure.
You will start by making a file system for /usr and filling
it partially. This may seem to be out of order, but you
can't insert the ROOT floppy right now.
mkfs /dev/hd2c
readall -b /dev/hd2c | sh
mount /dev/hd2c /mnt
cpdir -v /usr /mnt
This will create a file system on /dev/hd2c, mount it on
/mnt, and copy the contents of the USR floppy onto it. The
call to readall marks bad blocks on the file system as unus-
able, you can omit this on a drive known to be spotless (IDE
or SCSI.)
You can now use the new /usr in place of the USR floppy:
umount /dev/hd2c
umount /dev/fd0 # fd0c if combined
mount /dev/hd2c /usr
This little dance has freed up your floppy drive, so please
remove the USR diskette and replace it by the ROOT diskette.
Make a file system for the root with at least 512 inodes
(files), and fill it from the floppy:
mkfs -i 512 /dev/hd2a
mount /dev/fd0 /fd0
mount /dev/hd2a /mnt
cpdir -v /fd0 /mnt
5
USAGE(8) Maintenance Procedures USAGE(8)
umount /dev/fd0
Remove /mnt/etc/issue to get rid of the "use setup" message
that greets you when you boot, and edit the file
/mnt/etc/fstab to name the devices MINIX has been installed
on. In our example it should look like this:
root=/dev/hd2a
usr=/dev/hd2c
Unmount the new root:
umount /dev/hd2a
Make it bootable:
installboot -d /dev/hd2a /usr/mdec/bootblock boot
The automatic script would now set the rootdev and ram-
imagedev boot variables. You can do this now using the
edparams command, but it is easier to postpone it until the
testing phase. The settings should be:
rootdev=hd2a
ramimagedev=hd2a
6. TESTING
By now a new MINIX system is present on your hard disk.
Time to see if it works. Leave the ROOT diskette in the
drive and type halt. You are now going to use the power of
the Boot Monitor on the diskette to boot the MINIX partition
on the hard disk. Use the monitor command boot hd2 to boot
the primary partition MINIX has been installed in. (It is
"hd2" in our example.) For a SCSI disk you will have to use
a 'hd' name too. The monitor uses the BIOS, so you will
have to treat it as a "normal" disk at this point.
The hard disk bootstrap is now showing the menu again. You
can type '=' to start MINIX, but you probably want to change
the boot parameters. Hit ESC once more to get to the com-
mand prompt. The command set shows what the current parame-
ters are. Here is an example that shows how to make a menu
to either start MINIX or boot MS-DOS:
minix(=,MINIX) {boot}
dos(d,MS-DOS) {boot hd1}
save
MS-DOS is assumed to be in the first partition in the exam-
ple above (hd1). When finished type menu to see if the menu
looks right. If so hit '=' to start MINIX. Log in as root.
6
USAGE(8) Maintenance Procedures USAGE(8)
7. ADDING PROGRAMS AND SOURCES TO /usr
The setup command can also be used to add files from floppy
sets to the system. The USR.TAZ (programs and stuff),
SYS.TAZ (system sources), and CMD.TAZ (commands sources) are
all installed relative to the /usr directory, so the command
to use three times is
setup /usr
Setup will ask for the size of data on the floppies, which
is by default simply the entire floppy. You will see some
"Cannot make directory" errors while extracting, as some
directories already exist. Ignore these messages. You need
the USR.TAZ set if you want a working MINIX system, SYS.TAZ
if you want recompile the system or study it, and CMD.TAZ if
you also want the sources of the commands. On a disk space
starved machine you could opt to do without the commands
sources, as they are not absolutely necessary to understand
MINIX.
If your machine does not have enough memory to run
setup /usr then type these commands manually:
cd /usr
vol /dev/fd0 | uncompress | tar xvfp -
8. NAMES
A standalone machine will have to be given a name. As root
type
echo name >/etc/hostname.file
to change the host name of your machine to name.
9. ACTIVE ON BOOT
You may want to make the MINIX partition active so that it
is automatically booted. With MS-DOS fdisk or MINIX part,
mark the primary partition that contains MINIX active.
Using the menu you made earlier you can boot either MINIX or
MS-DOS at a keypress. You can even set timeouts. To boot
MINIX automatically after 5 seconds:
main() {trap 5000 minix; menu}
See monitor(8) for all the details on the monitor.
If you don't trust this then you can rig up a diskette that
boots the MINIX partition when left in the drive:
installboot -m 2 /dev/fd0 /usr/mdec/masterboot
7
USAGE(8) Maintenance Procedures USAGE(8)
The number 2 indicates the hard disk partition that must be
booted, you can use the numbers 1 to 9 for hd1 to hd9.
10. DEVICES
A crash course on the MINIX devices in /dev: The two hard
disks are named hd0 and hd5. These "multiple of five" dev-
ices address the entire hard disk, from the first to the
last byte. Each disk has four partitions, for disk 0 they
are hd1, hd2, hd3, and hd4. And for disk 1 they are named
hd6, hd7, hd8, and hd9. These partitions may contain file
systems, hd1 often contains the MS-DOS "C:" file system.
MINIX can use these partitions for file systems too, but you
can also partition one of these "primary partitions" into
four so-called "subpartitions". The subpartitions of hd1
are named hd1a, hd1b, hd1c, and hd1d. The other partitions
may have four subpartitions that are named in the same way
by adding a letter from a to d. So one disk may have four
partitions, and 16 subpartititions total. SCSI disks are
named in the same way, from sd0 to sd39d for all possible
devices for all eight SCSI targets. The two floppy disks
are fd0 and fd1. Each may have four partitions named fd0a,
fd0b, ... fd1d. The command MAKEDEV knows how to make dev-
ices, and DESCRIBE can tell you what an unknown device may
be, or even what all devices in /dev may be if called
without arguments. Devices are described fully in dev(4),
and in the device specific manual pages like fd(4) and
hd(4).
11. EDITORS
The editors available are elvis (a vi clone), elle (a simple
emacs clone), and the old MINIX mined editor. Of these edi-
tors only elvis can recover your file after a system crash.
Only mined is available at installation time. (All you need
to know about mined right now is that CTRL-X gets you out of
it.)
12. INSTALLING ON A SCSI DISK
Using a disk other than an (IDE) hd disk complicates things
a bit. The Boot Monitor uses the BIOS, so it names all
disks with hd names. So it is boot hd1 to boot partition 1,
and ramimagedev=sd2a to tell MINIX its root partition. If
you have both a normal and a SCSI disk then the disks may be
hd0 and hd5 to the Monitor, and hd0 and sd0 to MINIX.
13. NATIONAL KEYBOARDS
The directory /usr/lib/keymaps contains keymap tables for
several national keyboards. If you have a German keyboard
for instance, then
loadkeys /usr/lib/keymaps/german.map
8
USAGE(8) Maintenance Procedures USAGE(8)
will load the German key translation table into the keyboard
driver. Copy the map to /etc/keymap once MINIX is installed
on the hard disk, because having to type a key sequence like
one of these:
loadkezs -usr-lib-kezmaps-german.map
loqdkeys =usr=lib=key,qps=french.,qp
on a reboot gets a bit annoying after a while. Send correc-
tions and new keymaps to the person named below. (Do not
send a Dutch keymap, buy yourself a real keyboard instead.)
SUGGESTIONS
Below are a few useful suggestions. Some of the information
can be of use in other situations than described here.
14. VIRTUAL CONSOLES
Hold down the ALT key and press the left or right arrow key,
F1, or F2. This switches the console between two login ses-
sions. (Unless you have an old mono adapter, because vir-
tual consoles sit in video memory, and a mono adapter only
has memory for one.)
Note that kernel messages, including function key output,
only appear on the first console. This may be confusing,
but it keeps the other consoles clean.
15. LOW ON MEMORY
The normal installation requires that you have enough memory
for a large RAM disk. You can still install MINIX normally
if you either have a high density diskette drive for a com-
bined root+usr floppy, or you have two floppy drives of at
least 720 kb. Before booting you have to set the variable
rootdev to the same value as ramimagedev. This is slower
then a RAM disk, but saves a lot of memory.
The automatic installation script knows how to handle this
new situation. If you install manually then you have to use
cpdir -vx / /mnt
to copy the root device to disk. When it is time to fill
/usr and you only have one floppy drive then hit DEL to get
out of the installation script and reboot as described in
"TESTING". You can then finish the installation manually.
See the XT640K.TXT file for more advice on small machines.
16. LOW ON MEMORY AND ONLY ONE 720 KB FLOPPY DRIVE
If you only have one 720 kb floppy drive and your system is
low on memory then you can use the TINYROOT boot image.
This image contains a small kernel with only the BIOS disk
driver, and a small root file system. You can use this disk
9
USAGE(8) Maintenance Procedures USAGE(8)
to boot your machine. Use the normal ROOT to install the
root file system. Keep booting your machine with TINYROOT
until you have compiled a small kernel for your system. Use
the rootdev boot variable to select the hard disk root file
system. Do not use TINYROOT for anything other than boot-
ing, always use ROOT when mentioned.
17. FLOPPY DRIVE 1 IS A HIGH DENSITY DRIVE
If you would like to install from floppy drive 1 then you
need to copy at least one sector from the USR image onto a
diskette for drive 0. The USR bootstrap has been rigged to
boot the other drive.
18. INSTALLING ON A SECOND HARD DISK
MINIX doesn't care if it is installed on the second disk of
a system with two disks. The only problem is to get it
booted. You can either rig up a diskette to boot MINIX as
shown earlier, or you can use the same trick on the first
disk. The command
installboot -m 5 /dev/hd0 /usr/mdec/masterboot
will lock the first disk into booting the second disk. Note
that this command modifies the disk outside a MINIX parti-
tion, overwriting a bit of code that has likely been put
there by MS-DOS fdisk. First verify that the Boot Monitor
can boot an MS-DOS partition, because then the MINIX master
bootstrap can do it too.
19. LOTS OF MEMORY ON A 286
You will have a hard time making MINIX use up 3 MB memory.
Memory you can spare can be used for a "second level block
cache" on the RAM disk. The File System uses the second
level cache to store copies of disk blocks that are pushed
out of the normal (primary) block cache. The size of the
primary cache is compiled into the FS server, but the size
of the second level cache can be set with the ramsize boot
variable. Set it to a number between 0 and 512. 512 kilo-
bytes is enough to keep most of the compiler cached. You
must have extended memory; expanded memory is not supported.
20. LOTS OF MEMORY ON A 386+
Processes can be as big as you would like on a 386, but in
practice 4 MB is plenty for all your processes. The instal-
lation script sets up a second level cache for MINIX-386 of
up to 1024 kilobytes. This is because the default file sys-
tem cache is only 80 kb. Your first point of call is to get
rid of the poorly performing second level cache by setting
ENABLE_CACHE2 to 0 and to assign the memory used by it to
the normal block cache by enlarging the appropriate NR_BUFS
and NR_BUF_HASH constants in <minix/config.h> with as much
as you can spare. (1024 for NR_BUFS is the minimum to keep
10
USAGE(8) Maintenance Procedures USAGE(8)
cc -c cached. 2048 is then a nice value for NR_BUF_HASH.)
Disable the second level cache, compile a new kernel, reboot
and set ramsize to 0.
21. LOTS OF DISK SPACE
The maximum file system size is 1 GB for MINIX-386 and 128
MB for MINIX-86. (MINIX-86 can handle larger file systems,
but fsck can't check them.) Note that a MINIX file system
can only contain 65535 inodes (files), so the average file
should be 16 kb to completely fill it. It may be better to
make two smaller file systems. Besides, fsck takes forever
on a large file system.
SYSTEM ADMINISTRATION
The system has been set up with the idea that working as
root is a bad thing to do. As root you are in no way pro-
tected from doing stupid things. So don't do development as
root, but work as bin! Only in exceptional cases do you
want to become root. Being root is fun for wannabe hackers;
administrators know better.
To make life easier for bin, some programs like su(1),
install(1) and shutdown(8) treat bin and other members of
the operator group as special and allow them the privileges
of root. (One is an operator if one's group id is zero.)
Operators should share the shadow password of root by having
##root in their password field. This way they all have one
face (password) to the outside world, forming no greater
security risk than root alone.
The home directory of bin contains one important Makefile.
You can use it to recompile all the commands and libraries
of the system. Type make to see the usage message. If you
want to compile just one command then you can simply type
make to do so. To put it in its proper place you have to
type make install. Read the Makefiles in the commands and
lib subdirectories to understand how everything is put
together. If you are tight on memory then make may fail to
traverse down the source tree and also compile things. You
will have to type make in each subdirectory. You can run
make in /usr/src at the end to see if you've missed some-
thing or not.
The login shell of bin is ash, the BSD shell. It has been
modified to offer simple line editing using the editline(3)
library. Ash is rather big, so you may have to change bin's
shell back to /bin/sh with chsh(1) if you are low on memory.
Do not change root's shell to ash, and do not replace
/bin/sh by ash. It may run out of memory at the wrong
moment.
11
USAGE(8) Maintenance Procedures USAGE(8)
The kernel is not compiled from the master Makefile. To
make a new kernel you have to step into the tools directory.
There you can run four different make commands:
make This makes all the different kernel parts and combines
them in the file named image.
make fdboot
As above and then makes a boot floppy that you can use
to restart your system with. You are prompted for the
floppy device name.
make hdboot
First makes the image file and then copies it into the
directory /minix. If there are already two images in
that directory then the newest image will be removed to
make space for this newer image. It is assumed that
the oldest image is the most stable system image, one
that always works, and that the newest image is experi-
mental. Check beforehand what /minix contains before
you run make hdboot. Remove the oldest image if you
want another image to become the stable image. The
Boot Monitor chooses the newest image in /minix to
boot. You can use the monitor command ls minix to view
the images present, and set the image variable to the
full name of the image you want to use instead if the
newest doesn't work. The images in /minix are named
using the MINIX release and version numbers with an
extra revision number added to distinguish the images.
The first new kernel you would like to make is one config-
ured for your system. The kernel you are running now con-
tains several hard disk drivers you don't need, and it does
not have a TCP/IP server that you may want to have. In
<minix/config.h> you can find a number of ENABLE_XXX vari-
ables that can be set to 0 to exclude, or 1 to include a
particular driver. Another driver related variable is
DMA_SECTORS. This variable sets the size of a buffer used
by DMA based disk drivers (all but the floppy, AT/IDE, and
Adaptec drivers). Raise its value to greatly improve
throughput, especially writing. A value of 16 shows good
results. (The BIOS driver benefits most, because it is a
long way to the BIOS from protected mode, especially from
286 protected mode.) You can increase NR_CONS if you want
to have more virtual consoles. Having more consoles costs
little memory, because all the consoles are kept in video
memory. Scrolling speed of the console will go down if more
virtual consoles share the available memory. CGA cards have
space for 4 consoles, EGA and VGA can have 8 consoles. The
NR_PTYS variable sets the number of pseudo-ttys. You need
pseudo-ttys to be able to login remotely over a network with
the rlogin command. Each remote login session needs one
12
USAGE(8) Maintenance Procedures USAGE(8)
pseudo-tty. If you fear that the system will now run out of
processes then increase NR_PROCS. Configuring a new kernel
is sometimes not enough to enable new devices, you sometimes
need to use the MAKEDEV command to make new device files in
/dev. For pseudo-ttys you also have to check if /etc/ttytab
mentiones the new devices.
New additions to the system can be made in the /usr/local
tree. An empty directory tree has been set up for you and
binaries and manual pages are already in the search paths.
You can make a new user entry with the adduser command.
The TZ variable in /etc/profile tells the time zone offset
from the wall clock time to GMT. You have to change it for
your time zone. (See TZ(5).)
The function keys produce debug dumps, showing various
interesting data about the system. F1 lists processes and
F5 shows ethernet stats, which may be of use now. Read con-
sole(4) to know all the details of the screen and keyboard.
22. SYSTEM SHUTDOWN
You can't just turn a MINIX system off. MINIX must be told
to flush the modified data in the file system cache first.
The following commands/keystrokes can be used to exit MINIX
properly:
shutdown
First alert all users and then all processes of the
impending shutdown then halt or reboot the system in
one of various ways. See shutdown(8).
reboot / halt
Alert all processes of the system shutdown then reboot
or halt.
CTRL-ALT-DEL
Halt the system by running shutdown -h now.
MINIX halts by returning to the Boot Monitor, MINIX reboots
by instructing the monitor to reboot MINIX. (MINIX is just
a subprocess to the monitor.) Either halt MINIX and use
monitor commands to escape MINIX, or use shutdown -R to
reset the system.
FILES
/usr/ast Honorary home directory of Andew S. Tanenbaum.
Doubles as the place where the default setup for
a new user is found.
SEE ALSO
monitor(8), boot(8), part(8), mkfs(1), mount(8), M(8),
13
USAGE(8) Maintenance Procedures USAGE(8)
fstab(5), hier(7), console(4), dev(4), adduser(8), TZ(5),
mkdist(8), shutdown(8).
"Operating Systems - Design and Implementation 2/e" by
Andrew S. Tanenbaum and Albert S. Woodhull.
NOTES
The notation <file.h> refers to a C language include file in
/usr/include.
Root and bin do not have the current directory in their pro-
gram search path to avoid executing programs left around by
malicious people. This means that to run foo from the
current directory, ./foo must be typed.
Some of the commands have changed since earlier MINIX ver-
sions. For instance mkfs doesn't need a size argument
anymore, and vol automagically determines if it needs to
read or write. Keep this in mind if you use an older MINIX
version to examine the newer system.
BUGS
There are many PS/2 models, all different. Some will run
MINIX, some won't, some crippled if you lie to MINIX by set-
ting processor to 86. Almost no PS/2 has a standard disk,
so setting hd to esdi or bios will be necessary.
While testing a full library rebuild of this distribution it
sometimes happened that some things were not put back into
the library. This seems to be fixed, but we do not under-
stand why the fix fixed the problem. So if you see strange
"undefined" errors when compiling a program after a library
rebuild then run make install again in /usr/src/lib/ to try
and add the missing pieces.
Except for the floppy driver, none of the DMA based drivers
know about DMA being limited to a 24 bits address, i.e. the
first 16 MB. So under MINIX-386 you run a slight risk that
a tar or dd command may use a buffer above 16 MB for reading
or writing to a character device. This only happens if the
low 16 MB is taken by some huge processes, and you have more
than 16 MB, of course.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
14