add directory Minix

This commit is contained in:
gohigh
2024-02-19 00:21:39 -05:00
parent 56596ada90
commit 5a46ddb732
2923 changed files with 1764412 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
DIR(5) Minix Programmer's Manual DIR(5)
NAME
dir - directory layout
SYNOPSIS
#include <sys/types.h>
#include <sys/dir.h>
DESCRIPTION
The directories of the V1 and V2 file systems are arrays of the following
structure defined in <sys/dir.h>:
struct direct {
ino_t d_ino; /* I-node number */
char d_name[14]; /* Name of up to 14 characters */
};
The d_ino field is the inode number of the file named by d_name. D_ino
is zero if the directory slot isn't allocated. This number is the same
as st_ino returned by stat(2) unless the entry is mounted on. D_name is
the name of up to 14 characters, null-terminated only if less then 14 in
length. Any character other than null or '/' is allowed.
See directory(3) for a portable way to access directories, Minix is
probably the last system with these old V7 format directories.
SEE ALSO
directory(3).
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
1

View File

@@ -0,0 +1,59 @@
ETHERS(5) Minix Programmer's Manual ETHERS(5)
NAME
ethers - ethernet address to hostname database
SYNOPSIS
/etc/ethers
DESCRIPTION
The ethers database translates ethernet addresses to hostnames for use by
the RARP daemon (see rarpd(8).) /etc/ethers may look like this:
0:0:c0:a:77:23 darask
0:0:c0:a:68:ce burask
The six octet ethernet numbers must be entered as shown above, the hex
constants must use lowercase letters and may not have leading zeros.
Comments are marked with '#'.
See rarpd(8) on why you shouldn't list Sun hosts in this file.
FILES
/etc/ethers Ethernet addresses database.
SEE ALSO
hosts(5), rarpd(8), boot(8).
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
1

View File

@@ -0,0 +1,118 @@
FSTAB(5) Minix Programmer's Manual FSTAB(5)
NAME
fstab, mtab - list of file systems to mount, mounted file system table.
SYNOPSIS
/etc/fstab
/etc/mtab
DESCRIPTION
/etc/fstab is a table of file system to mount at boot time, /etc/mtab is
a table of currently mounted file systems as maintained by mount and
umount.
/etc/fstab is not read by mount as it should be. It is instead a simple
shell script listing the three devices that Minix needs to operate: The
device names of the root file system, the temporary (scratch) file
system, and the file system for /usr. Of these only the /usr file system
is mounted in /etc/rc, the scratch file system is there for the system
administrator to test new kernels, or as a temporary file system.
/etc/mtab contains lines of four fields. The layout is:
device directory type options
These fields may be explained as follows:
device
A block special device.
directory
Mount point.
type
Either 1, or 2, indicating a V1 or V2 file system.
options
Either ro, or rw, indicating a read-only or read-write mounted file
system.
FILES
/etc/fstab Shell script naming three important file systems.
/etc/mtab List of mounted file systems.
SEE ALSO
printroot(8), mount(1), fsck(1), mkfs(1).
1
FSTAB(5) Minix Programmer's Manual FSTAB(5)
BUGS
/etc/fstab is a joke.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
2

View File

@@ -0,0 +1,59 @@
HOSTS(5) Minix Programmer's Manual HOSTS(5)
NAME
hosts - hostname to IP address database
SYNOPSIS
/etc/hosts
DESCRIPTION
The hosts database lists the IP addresses and the hostnames that
translate to these IP addresses. It is used by nonamed(8) in a network
without name servers. A simple /etc/hosts may look like this:
127.0.0.1 localhost
192.9.200.1 darask
192.9.200.2 burask
The localhost entry lists a special address that refers to the local host
itself (a kind of /dev/tty for hosts.) You should only list it if
nonamed needs it! The other entries are actual machines. The file may
contain comments marked with '#'.
You can have aliases (more hostnames on the same line), but it is not
recommended, because nonamed can't present them to the system as CNAME
records. An often seen form like
192.9.200.1 darask.home.cs.vu.nl darask
is harmless though, and has the small advantage that you can use the
short name in /etc/ethers so rarpd can match it at boot time.
FILES
/etc/hosts Hosts database.
SEE ALSO
ethers(5), nonamed(8), rarpd(8), boot(8).
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
1

View File

@@ -0,0 +1,177 @@
KEYMAP(5) Minix Programmer's Manual KEYMAP(5)
NAME
keymap - keyboard maps
SYNOPSIS
/etc/keymap
DESCRIPTION
/etc/keymap is the compressed mapping from keyboard scan codes to ASCII.
It is made from a keymap source file consisting of MAP_COLS columns
(MINIX assigns the value 6 to MAX_COLS, corresponding to key pressed,
key+SHIFT, key+LEFT_ALT, key+RIGHT_ALT, key+ALT+SHIFT and key+CTRL) and
NR_SCAN_CODES rows (MINIX assigns the value 0x80 to NR_SCAN_CODES,
corresponding to the number of scan codes to be provided by the
keyboard), and each element is 2 bytes in length (see u16_t in type
definitions). The low order byte corresponds to the character represented
by the scan code, and the high order byte corresponds to the special
meaning (when CAPS LOCK has effect, if it is a function key, etc.), which
is converted to binary keymap format using the genmap utility.
Types (general): <sys/types.h>
<sys/types.h> defines the u8_t and u16_t types, corresponding to 8 and 16
bit values.
Macros: <minix/keymap.h>
C(c) - Control
Maps to control code
A(c) - Alt
Sets the eight bit
CA(c) - Control-Alt
Short for A(C(c))
L(c) - Caps Lock
Adds Caps Lock effect
These macros are used in a keymap source file to help define keys. So
instead of writing 032 to put a CTRL-Z in the map you write C('Z'). The
L(c) macro is used in column 0 to tell that the Caps Lock key is active
for this key. (Caps Lock should only have effect on letters.)
Definitions: <minix/keymap.h>
<minix/keymap.h> contains a large number of definitions for special keys,
like function keys, and keys on the numeric keypad. They are:
Escape key and modifiers: EXT, CTRL, SHIFT, ALT.
1
KEYMAP(5) Minix Programmer's Manual KEYMAP(5)
Numeric keypad keys: HOME, END, UP, DOWN, LEFT, RIGHT, PGUP, PGDN, MID
(numeric '5'), PLUS, INSRT.
ALT + numpad key: AHOME, AEND, ..., AINSRT.
CTRL + numpad: CHOME, CEND, ..., CINSRT.
Lock keys: CALOCK (Caps Lock), NLOCK (Num Lock), SLOCK (Scroll Lock).
Function keys: F1, ..., F12.
ALT - function key: AF1, ..., AF12.
CTRL - function key: CF1, ..., CF12.
SHIFT - function key: SF1, ..., SF12.
ALT - SHIFT - function key: ASF1, ..., ASF12.
There is one key definition that isn't a key at all: EXTKEY. This
keycode is sent by the keyboard as an indicator that the next keycode is
special. For instance both ALT keys have the same keycode, but the right
ALT key is sent by the keyboard preceded by the EXTKEY keycode. The same
is true for the '/' key on the numeric pad versus the other '/' key on
the US keyboard. (On other keyboards this key may have a different
symbol.) The keyboard driver knows that a different key is presses if it
is preceded by EXTKEY.
Creating/changing keyboard mapping
You can create your own keyboard mapping by copying one of the existing
keymap source files (Standard Minix: kernel/keymaps/*.src, Minix-vmd:
kernel/ibm/keymaps/*.src) and modifying the desired keys. Once this has
been done, you need to recompile the genmap.c file, either by adding a
new entry to the Makefile, or by running the following commands:
cc -DKEYSRC=\"keymap.src\" genmap.c
After this, the keymap file can be generated by running:
a.out > keymap.map
The keymap can be loaded in the keyboard driver by:
loadkeys keymap.map
It is wise to first run loadkeys on one of the maps in /usr/lib/keymaps
so that you can easily revert back to a known keymap with a few taps on
the up-arrow key and pressing return. You will otherwise have to fix the
keymap with a faulty keymap loaded into the keyboard driver, which is no
fun.
2
KEYMAP(5) Minix Programmer's Manual KEYMAP(5)
When the keymap is to your satisfaction you can copy it to /etc/keymap to
have it loaded automatically at reboot.
FILES
/etc/keymap Default keymap file
SEE ALSO
loadkeys (1).
AUTHOR
Victor A. Rodriguez - El bit Fantasma (Bit-Man@Tasa.Com.AR)
3

View File

@@ -0,0 +1,177 @@
PASSWD(5) Minix Programmer's Manual PASSWD(5)
NAME
passwd, group, shadow - user and group databases, shadow passwords
SYNOPSIS
/etc/passwd
/etc/group
/etc/shadow
DESCRIPTION
/etc/passwd lists all the users of the system, and /etc/group lists all
the groups the users may belong to. Both files also contain encrypted
passwords, numeric ID's etc. Encrypted passwords may be hidden in the
file /etc/shadow if extra protection is warranted.
Each file is an text file containing one line per user or group. The
data fields on a line are separated by colons. Each line in the password
file has the following form:
name:passwd:uid:gid:gecos:dir:shell
The name field is the login name of a user, it is up to 8 letters or
numbers long starting with a letter. The login name must be unique. The
password field is either empty (no password), a 13 character encrypted
password as returned by crypt(3), or a login name preceded by two number
signs (#) to index the shadow password file. Anything else (usually *)
is invalid. The uid and gid fields are two numbers indicating the users
user-id and group-id. These id's do not have to be unique, there may be
more than one name with the same id's. The gecos field can be set by the
user. It is expected to be a comma separated list of personal data where
the first item is the full name of the user. The dir field is the path
name of the users home directory. Lastly the shell field is the path
name of the users login shell, it may be empty to indicate /bin/sh. A
Minix specific extension allows the shell field to contain extra space
separated arguments for the shell.
Lines in the group file consist of four fields:
name:passwd:gid:mem
The name field is the name of the group, same restrictions as a login
name. The passwd field may be used to let users change groups. The gid
field is a number telling the group-id. The group-id is unique for a
group. The mem field is a comma separated list of login names that are
special members of the group. If a system supports supplementary group
id's then a user's set of supplementary group id's is set to all the
groups they are a member of. If a system allows one to change groups
then one can change to a group one is a member of without using the
group's password.
1
PASSWD(5) Minix Programmer's Manual PASSWD(5)
The shadow password file has precisely the same form as the password
file, except that only the name or passwd fields are used as yet. The
other fields are zero or empty. A password in the password file may have
the form ##user to indicate the entry user in the shadow password file.
The password in this entry is then used for authentication of the user.
The shadow file can only be read by the privileged utility pwdauth(8), so
that the encrypted passwords in the shadow file are kept secret, and thus
safe from a dictionary attack.
Special password and group file entries
There are several entries in the password and group files that are
preallocated for current or future use. All id's less than 10 are
reserved. The special password file entries are:
root:##root:0:0:Big Brother:/usr/src:
daemon:*:1:1:The Deuce:/etc:
bin:##root:2:0:Binaries:/usr/src:
uucp:*:5:5:UNIX to UNIX copy:/usr/spool/uucp:/usr/sbin/uucico
news:*:6:6:Usenet news:/usr/spool/news:
ftp:*:7:7:Anonymous FTP:/usr/ftp:
nobody:*:9999:99::/tmp:
ast:*:8:3:Andrew S. Tanenbaum:/usr/ast:
The root id is of course the super user. The daemon id is used by some
daemons. Some devices are protected so that only those daemons can
access them. The bin id owns all sources and most binaries. The uucp,
news and ftp id's are for serial line data transfer, usenet news, or ftp
if so needed. The nobody id is used in those cases that a program may
not have any privileges at all. The ast id is the honorary home
directory for Andrew S. Tanenbaum, the creator of Minix. You can also
find the initial contents for a new home directory there.
The special group file entries are:
operator:*:0:
daemon:*:1:
bin:*:2:
other:*:3:
tty:*:4:
uucp:*:5:
news:*:6:
ftp:*:7:
kmem:*:8:
nogroup:*:99:
Groups with the same name as special user id are used with those id's.
The operator group is for the administrators of the system. Users in
this group are granted special privileges. The other group is for
ordinary users. The tty group is for terminal devices, and associated
set-gid commands. Same thing with the kmem group and memory devices.
2
PASSWD(5) Minix Programmer's Manual PASSWD(5)
FILES
/etc/passwd The user database.
/etc/group The group database.
/etc/shadow The shadow password file.
SEE ALSO
login(1), passwd(1), su(1), crypt(3), getpwent(3), getgrent(3),
pwdauth(8).
NOTES
The nobody and nogroup id's are likely to be renumbered to the highest
possible id's once it is figured out what they are.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
3

View File

@@ -0,0 +1,118 @@
RESOLVER(5) Minix Programmer's Manual RESOLVER(5)
NAME
resolver - resolver configuration file
SYNOPSIS
/etc/resolv.conf
DESCRIPTION
The resolver is a set of routines in the C library (resolv(3)) that
provide access to the Internet Domain Name System. The resolver
configuration file contains information that is read by the resolver
routines the first time they are invoked by a process. The file is
designed to be human readable and contains a list of keywords with values
that provide various types of resolver information.
On a normally configured system this file should not be necessary. The
only name server to be queried will be on the local machine, the domain
name is determined from the host name, and the domain search path is
constructed from the domain name.
The different configuration options are:
nameserver
Internet address (in dot notation) of a name server that the
resolver should query. Up to MAXNS (currently 3) name servers may
be listed, one per keyword. If there are multiple servers, the
resolver library queries them in the order listed. If no nameserver
entries are present, the default is to use the name server on the
local machine. (The algorithm used is to try a name server, and if
the query times out, try the next, until out of name servers, then
repeat trying all the name servers until a maximum number of retries
are made).
domain
Local domain name. Most queries for names within this domain can
use short names relative to the local domain. If no domain entry is
present, the domain is determined from the local host name returned
by gethostname(2); the domain part is taken to be everything after
the first `.'. Finally, if the host name does not contain a domain
part, the root domain is assumed.
search
Search list for host-name lookup. The search list is normally
determined from the local domain name; by default, it begins with
the local domain name, then successive parent domains that have at
least two components in their names. This may be changed by listing
the desired domain search path following the search keyword with
spaces or tabs separating the names. Most resolver queries will be
attempted using each component of the search path in turn until a
match is found. Note that this process may be slow and will
4BSD December 14, 1989 1
RESOLVER(5) Minix Programmer's Manual RESOLVER(5)
generate a lot of network traffic if the servers for the listed
domains are not local, and that queries will time out if no server
is available for one of the domains.
The search list is currently limited to six domains with a total of
256 characters.
The domain and search keywords are mutually exclusive. If more than one
instance of these keywords is present, the last instance will override.
The keyword and value must appear on a single line, and the keyword (e.g.
nameserver) must start the line. The value follows the keyword,
separated by white space.
FILES
/etc/resolv.conf
SEE ALSO
gethostbyname(3N), resolver(3), hostname(7), named(8)
Name Server Operations Guide for BIND
4BSD December 14, 1989 2

View File

@@ -0,0 +1,59 @@
RESOLV.CONF(5) Minix Programmer's Manual RESOLV.CONF(5)
NAME
resolv.conf - Domain Name System resolver configuration
SYNOPSIS
/etc/resolv.conf
DESCRIPTION
The /etc/resolv.conf is used to configure how the host will use the
Domain Name System to resolve hostnames to IP addresses. It may contain
these two lines:
nameserver IP-address
domain domain-name
The nameserver entry tells the IP address of the host to use for DNS
queries. If it is set to 127.0.0.1 (which is the default) then the local
name daemon is used that may use the /etc/hosts database to translate
host names. You normally only need a nameserver entry if the name server
is at the other side of a router. The default nonamed name server can't
look beyond the local network.
The domain entry tells the default domain to use for unqualified
hostnames. This entry is usually not given in which case the domain of
the local host is used.
The long version of this story can be found in resolver(5).
FILES
/etc/resolv.conf DNS resolver configuration file.
SEE ALSO
resolver(5), hosts(5), nonamed(8), boot(8).
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
1

View File

@@ -0,0 +1,59 @@
RHOSTS(5) Minix Programmer's Manual RHOSTS(5)
NAME
rhosts, hosts.equiv - trusted remote users or hosts
SYNOPSIS
~user/.rhosts
/etc/hosts.equiv
DESCRIPTION
The per user .rhosts and the per system hosts.equiv files can be used to
allow users to use rlogin or rsh without a password. The remote login
services first check the system wide /etc/hosts.equiv file and then the
~user/.rhosts of the intended user. Both files contain lines of one of
two forms:
host
host ruser
The first form tells that any user from host is allowed to login to this
system under the same name. The second form allows ruser from host to
login.
The .rhosts file is checked to be owned by user or root, and only its
owner may be able to write it.
SEE ALSO
rlogin(1), rsh(1).
NOTES
Minix has no restrictions on becoming super-user remotely. Other systems
usually do.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
1

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,118 @@
TTYTAB() Minix Programmer's Manual TTYTAB()
NAME
ttytab - table of login terminals
SYNOPSIS
/etc/ttytab
DESCRIPTION
The ttytab file lists all the terminal devices that one can login on. It
is a simple text file that contains lines of the form:
name type "getty" "init"
The name and type fields are simple words, name is the name of the
terminal device with /dev stripped off, and type tells the type of
terminal to initialize the TERM environment variable.
The getty and init fields may name commands that are run to allow one to
login on the line, or to initialize the line. Both these fields may be
more than one word if the whole field is enclosed in double quotes.
Getty is usually simply the word getty, the command that prints a system
identification banner and allows on to type a name to log in. Init is
usually an stty command to set the baud rate and parity of a serial line.
The init field may be omitted to indicate that no initialization is
necessary, and the getty field may be left out to not start a login
process. Terminals should not be left out, because their place in the
ttytab file determines their slot number as returned by ttyslot(3).
Comments (introduced by #) and empty lines are ignored.
EXAMPLE
A ttytab for the console, two serial lines, and a pseudo tty entry:
console minix getty
tty00 vt100 getty "stty 9600"
tty01 dialup getty "stty 38400"
ttyp0 network
ENVIRONMENT
TERM Terminal type
NOTES
It is customary to set the type to dialup for a dialin line. One can
check for that name in one's .profile.
1
TTYTAB() Minix Programmer's Manual TTYTAB()
SEE ALSO
gettyent(3), ttyslot(3), init(8).
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
2

View File

@@ -0,0 +1,118 @@
TZ(5) Minix Programmer's Manual TZ(5)
NAME
TZ - Time zone environment variable
SYNOPSIS
TZ=zone[-]offset[dst[offset][,start[/time],end[/time]]]
DESCRIPTION
The TZ environment variable tells functions such as the ctime(3) family
and programs like date what the time zone and daylight saving rule is.
The value of TZ has the POSIX standardized form shown in the synopsis.
This form specifies the zone names, offsets from GMT, and daylight
savings changeover times for at least the current year.
zone A three or more letter name for the time zone in normal (winter)
time.
[-]offset
A signed time telling the offset of the time zone westwards from
Greenwich. The time has the form hh[:mm[:ss]] with a one of two
digit hour, and optional two digit minutes and seconds.
dst The name of the time zone when daylight savings is in effect. It
may be followed by an offset telling how big the clock correction is
other than the default of 1 hour.
start/time,end/time
Specifies the start and end of the daylight savings period. The
start and end fields indicate on what day the changeover occurs.
They must be in one of the following formats:
Jn The Julian day n (1 <= n <= 365) ignoring leap days, i.e. there
is no February 29.
n The zero-based Julian day (0 <= n <= 365). Leap days are not
ignored.
Mm.n.d
This indicates month m, the n-th occurrence of day d (1 <= m <=
12, 1 <= n <= 5, 0 <= d <= 6, 0=Sunday). The 5-th occurrence
means the last occurrence of that day in a month. So M4.1.0 is
the first Sunday in April, M9.5.0 is the last Sunday in
September.
The time field indicates the time the changeover occurs on the given
day.
1
TZ(5) Minix Programmer's Manual TZ(5)
EXAMPLES
Greenwich Mean Time:
TZ=GMT0
Middle European Time, 1 hour east from Greenwich, daylight savings starts
on the last Sunday in March at 2 AM and ends on the last Sunday in
October at 3 AM:
TZ='MET-1MET DST,M3.5.0/2,M10.5.0/3'
British time, daylight savings starts and ends at the same moment as MET,
but in an earlier time zone:
TZ=GMT0BST,M3.5.0/1,M10.5.0/2
The eastern european time zones also have the changeovers at the same
absolute time as British time and MET.
U.S. Eastern Standard Time, 5 hours west from Greenwich, daylight savings
starts on the first Sunday in April at 2 AM and ends on the last Sunday
in October at 2 AM:
TZ=EST5EDT,M4.1.0/2,M10.5.0/2
It shouldn't surprise you that daylight savings in New Zealand is
observed in the months opposite from the previous examples. It starts on
the first Sunday in October at 2 AM and ends on the third Sunday in March
at 3 AM:
TZ=NZST-12NZDT,M10.1.0/2,M3.3.0/3
SEE ALSO
readclock(8), date(1).
BUGS
You may have noticed that many fields are optional. Do no omit them,
because the defaults are bogus. If you need daylight savings then fully
specify the changeovers.
West is negative, east is positive, ask any sailor.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
2

View File

@@ -0,0 +1,59 @@
UTMP(5) Minix Programmer's Manual UTMP(5)
NAME
utmp, wtmp - logged in users, login and logout history
SYNOPSIS
#include <sys/types.h>
#include <utmp.h>
DESCRIPTION
The files /etc/utmp and /usr/adm/wtmp respectively contain the currently
logged in users, and the history of logins and logouts.
Each file is an array of the following structure defined in <utmp.h>:
struct utmp {
char ut_user[8]; /* user name */
char ut_line[12]; /* terminal name */
char ut_host[16]; /* host name, when remote */
time_t ut_time; /* login/logout time */
};
#define ut_name ut_user /* for compatibility with other systems */
The structure contains more fields than those listed, but they are only
of interest to init and login. Note that the ut_name field is a
compatibility alias for ut_user, it is actually better to use it.
A login entry is completely specified. A logout entry has a null string
for ut_name. A shutdown or reboot entry has an ut_line field containing
a "~" (tilde). The ut_name field is usually the name of the program that
did the shutdown, or "reboot" at reboot. This is a bit confusing, but
note that there should always be two such entries. If you see just one
entry then the system has crashed, if you see two entries then the system
was properly shut down and later rebooted.
FILES
/etc/utmp Currently logged in users.
/usr/adm/wtmp History of logins and logouts.
SEE ALSO
who(1), ttyslot(3).
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
1

View File

@@ -0,0 +1,59 @@
WHATIS(5) Minix Programmer's Manual WHATIS(5)
NAME
whatis - database of online manual pages
SYNOPSIS
/usr/man/*/whatis
/usr/man/whatis
DESCRIPTION
The whatis file in each manual page directory is a database of titles for
manual pages. This database is used by man(1) to map titles to manual
pages names. The database is created by makewhatis(1) from the NAME
sections of the manual pages.
The NAME secions must be simple lines with no troff fluff but one
backslash like these two:
whatis \- database of online manual pages
cawf, nroff \- C version of the nroff-like, Amazingly Workable
(text) Formatter
These lines are transformed by makewhatis to these two lines for the
database:
cawf, nroff (1) - C version of the nroff-like, Amazingly Workable
(text) Formatter
whatis (5) - database of online manual pages
As you can see they are in section number order, so that man searches
them in section order.
Each entry is just a single line, restricting the NAME section to a
single line too with just one dash, and commas and spaces before the dash
as you see above.
SEE ALSO
man(1), whatis(1), makewhatis(1), man(7).
BUGS
It seems to be impossible for many manual page writers to keep the NAME
section simple. They also like to use every font available in their
documents. My simple scripts can't read their NAME sections, my simple
me can't read their texts.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
1