home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 October
/
usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso
/
misc
/
volume29
/
mbox
/
part07
/
TUTORIAL
< prev
Wrap
Text File
|
1992-04-06
|
11KB
|
352 lines
ix/MBox BETA-Test Version
Mailbox-Programm fuer UNIX(-Derivate)
Volker Schuermann
Wuppertal, FRG, 08.12.1991
INHALT (Tutorial Beta-Entwurf (internal use only !))
=============================================================================
1. ALLGEMEINES
1.1. Public Domain ?!
1.2. Struktur der Programme
2. UMGEBUNG (Voraussetzungen)
2.1. Fuer alle
2.2. Speziell fuer Minix
3. INSTALLATION
3.1. Anpassungen "mbox.h"
3.2. Anpassungen "mb-daemon.c"
3.3. Anpassungen "/usr/lib/crontab"
3.4. Anpassungen "/etc/passwd"
3.5. Die Verteilung der Rechte
3.6. Kommunikation mit RMAIL & INEWS
4. VERWALTUNG
4.1. der Teilnehmer (Bitte VOR dem ersten Aufruf der MBox lesen !)
4.2. der Dateien
5. WEITERE INFOS
5.1. Mail genuegt
5.2. Updates
1. ALLGEMEIN
=============================================================================
1.1. Public Domain ?!
======================
Das gesammte Programmpaket darf beliebig oft weitergegeben und eingesetzt
werden.
Es duerfen keine veraenderten Versionen verbreitet werden. Jede Veraenderung
muss dem Autor als ASCII-Textfile uebermittelt werden. Er entscheidet, ob
die Veraenderung in die naechste Version aufgenommen wird.
Die Routine "getch.c" stammt nicht vom Autor, sondern von "attron!chris" !
1.2. Struktur der Programme
===========================
Mir ist voellig klar,
... dass jeder die Routinen der "ix/MBox" effizienter,
strukturierter und "besser" schreiben koennte.
... dass GOTOs und globale Varibalen nicht unbedingt zum
Handwerkszeug eine C-Programmierers gehoehren sollten.
... dass viele Routinen aussehen, als waeren sie schnell
"ins Unreine" geschrieben worden - bei etlichen trifft das zu.
... dass keine der Routinen einem LINT standhalten koennte.
... dass jeder, der diese Punkte bemaengelt, selbst zu faul
war, eine MBox auf die Beine zu stellen ...
2. UMGEBUNG
=============================================================================
2.1. Fuer alle
==============
Folgende Programme MUESSEN bereits auf dem Host-Rechner installiert und
einsatzfaehig sein:
- UUCP (UUCICO, UUX, UUXQT, ...)
- NEWS (RNEWS, PNEWS, EXPIRE, NNPOST, ...)
- MAIL (LMAIL)
- UMAIL (SENDMAIL, SMAIL etc.)
Die MBox setzt auf dieser Programm-Konstellation auf. Sie ist nicht ein-
satzfaehig, wenn eines der Programm nicht verfuegbar ist.
2.2. Speziell fuer Minix
========================
Die MBox wurde entwickelt unter MINIX 1.5.10 ... folgenden Patches muessen
bei dieser Version angewendet werden:
- Bruce Evans MX386-Patches
Vorteilhaft aber nicht zwingend erforderlich:
- Gordon Irlams VC (virtuelle Consolen)
- Shoelace (zum Booten von Harddisk)
Die "ix/MBox" laeuft NICHT im 64+64 Modus, sondern nur unter 386er MINIX !
Wie's bei 68000er MINIX aussieht, ist bisher nicht geprueft worden.
3. INSTALLATION
=============================================================================
3.1. Anpassungen ("mbox.h")
===========================
Die Datei "mbox.h" enthaelt die wichtigsten system-spezifischen Parameter.
Diese Parameter MUESSEN (zum Teil) unbedingt angepasst werden.
Die einzelnen Eintraege sind in der Datei dokumentiert - Fehler bei der
Anpassung ziehen WEITE Kreise ... VORSICHT ist die Mutter der Porzellankiste.
Pfade, deren Definition mit "./" beginnen, beziehen sich auf die MBox und
deren HOME-Verzeichnis. Diese Pfade muessen/sollten NICHT geandert werden.
Das gilt praktisch fuer alle Definitionen, die nicht durch ein vorangestelltes
">" kenntlich gemacht wurden.
Zusaetzlich enthalten die verschiedenen Programme jeweils eigene Parameter-
Definitionen. Deren Bedeutung wird im Folgenden erklaert.
3.2. Anpassungen "mb-daemon.c"
==============================
Der MB-Daemon kann u.A. auch als Reflektor fuer eine NewsGroup (NG) fungieren.
Da er sich nicht an die Konventionen fuer Reflektoren haelt, sollte sein
Einsatz auf lokal NGs beschraenkt bleiben.
REFLECT_NG Diese NG wird vom Reflektor untersucht und beantwortet
REFLECT_LOG Hier protokolliert der Reflector seine Aktionen
DIRLIST Mit dieser Datei wird ein DIRLIST-Request beantwortet
REFLECTUID UID des Users "reflector" ... siehe "/etc/passwd"
Soll der Reflektor inaktiv bleiben, genuegt es die REFLECT_NG auf eine NG
zu setzen, die nicht existiert (NICHT "", sondern z.B. "dummy.dummy".
3.3. Anpassungen "/usr/lib/crontab"
===================================
Die CRONTAB muss um 2 Eintraege erweitert werden. Entscheidend ist dabei
die chronologische Reihenfolge:
0 4 * * * /usr/lib/news/sendbatch -c NEWSFEED
30 5 * * * /usr/lib/uucp/uucico -r1 -x2 -sNEWSFEED
0 6 * * * /usr/lib/news/rnews -U
20 6 * * * /usr/bin/mb-daemon
40 6 * * * /usr/bin/xmd
MB-Daemon und XMD duerfen erst aktiv werden, nachdem die NEWS einsortiert
sind. Wird als Mailer SMAIL verwendet, entfaellt der Aufruf des XMD.
3.4. Anpassung der "/etc/passwd"
================================
Die PASSWD-Datei sollte um den Eintrag "gast" erweitert werden. Meldet
sich dieser User an, wird direkt die "ix/MBox" gestartet.
Ein Verlassen den MBox ist damit gleichbedeutend mit einem Verlassen des
Systems !
gast::12:1:Mailbox-User:/usr/gast:/usr/bin/mbox
volkers:X:14:3:Volker Schuermann:/usr/volkers/bin/shh
reflector:*:22:3:UnNet Reflector::
news:*:30:6:W-NEWS System:/usr/lib/news:
usenet:*:31:6:W-NEWS Administrator:/usr/lib/news:
uucp::40:40:UUCP-Account on Un.Net:/usr/spool/uucp:
postmaster:*:41:40:UUCP-Erroruser:/usr/spool/uucp:/bin/sh
nuucp::42:40:Anonymous-UUCP:/usr/spool/uucppublic:/usr/lib/uucp/uucico
Die Gruppe des Users "gast" und die Gruppe der uebrigen User (z.B. "volkers")
muss unterschiedlich sein (GID !)
3.5. Die Verteilung der Rechte
==============================
Hier nun eine Uebersicht der versch. Pfade und Programme (wobei das HOME-
Verzeichnis der "ix/MBox" jetzt "/usr/mbox" genannt wird):
drwxrwxrwx root.root /usr/mbox
-r-xr-xr-x root.root /usr/mbox/mbrsh
drwxrwx--- root.root /usr/mbox/etc
-rw-rw---- root.root /usr/mbox/etc/*
-rwxrwx--- root.root /usr/mbox/etc/tset
drwxrwx--- root.root /usr/mbox/lib
-rw-rw-rw- root.root /usr/mbox/lib/*
drwx------ root.root /usr/mbox/src
-rw-r--r-- root.root /usr/mbox/src/*
drwxrwx--- root.root /usr/mbox/usr
drwxrwx--- root.root /usr/mbox/usr/*
-rw-rw---- root.root /usr/mbox/usr/*/*
-rwsrwsr-x root.root /usr/bin/mbox
-rwxrwxr-x bin.sys /usr/bin/bled
-rwxrwxr-x root.root /usr/bin/xmd
-rwsrwsr-x root.root /usr/bin/mb-daemon
3.6. Kommunikation mit RMAIL & INEWS
====================================
Mit der Version 1.6 PL4 wird eine voellig neue Struktur der Kommunikation
zwischen ix/MBox und UNIX/MINIX eingefuehrt. Sowohl Mails als auch Artikel
fuer NEWS werden von der MBox mit einem Header ausgestattet und an die
Programme RMAIL bzw. INEWS uebergeben, die den Header komplettieren und
die MSG verschicken.
Durchgefuehrt werden diese Aktion mit Hilfe von 2 (3) Shell-Scripts. Sie
befinden sich in "/usr/mbox/etc/rmail.sh", "/usr/mbox/etc/inews.sh" und
"/usr/mbox/etc/alias.sh". Das letzte Script wird immer dann aufgerufen,
wenn ein neues Postfach angelegt wird. Es sollte dann eine Zeile an die Datei
"/usr/lib/smail/aliases" (Alias-Datei von SMAIL) angehaengt werden, die
SMAIL anweist den Usernamen "Vorname.Name" als Alias zu verstehen und das
entsprechende Kommando ("xmd Vorname.Name") auszufuehren ...
4. VERWALTUNG
=============================================================================
4.1. Teilnehmer
===============
Die "ix/MBox" benutzt den Befehl "admin" zur Pflege der Teilnehmerdaten-
bank. Der Sysop/Postmaster/Administrator kann hier auf alle Eintraege
zugreifen.
Um die Sysop-Berechtigung zu bekommen, muss der Postmaster sich als "root"
ins System einloggen, und dann per "mbox" die MBox aufrufen. Er erhaelt
dann Userlevel 10 und ist damit berechtigt, das Kommando "admin" auszu-
fuehren. Sollte das mal nicht funktionieren, kann man einfach das Level
fuer "admin" in der Datei "/usr/mbox/etc/help.befehle" auf 0 setzen ...
ACHTUNG: damit hat JEDER Zugriff auf alle Teilnehmerdaten - also nach
Erhoehung des eigenen Levels (auf 10) unbedingt das "admin"-Level wieder
auf 9 zuruecksetzen !!!
Nochmal ACHTUNG: Zwei User muessen unbedingt ins System eingetragen werden:
Username: GAST (identisch mit der GUEST-Definition in "mbox.h")
SH-Account: gast (siehe "/etc/passwd");
User-Level: 0
Username: Jacke wie Hose (naja...)
SH-Account: root (siehe POSTMASTER-Definition in "mbox.h");
User-Level: 10
Solange diese beiden User nicht ordnungsgemaess eingetragen sind, laeuft
das System nicht !!!
Wird die MBox gestartet, und die Datei UDBASE (siehe "mbox.h") existiert
noch nicht, erzeugt die MBox eine Userdatenbank aus den Definitionen in
"mbox.h" - diese Datenbank kann mit dem Befehl "admin" ueberarbeitet werden.
Scheint das zu aufwendig, muessen die Definitionen in "mbox.h" geaendert und
die Datei UDBASE geloescht werden. Beim naechsten Start der MBox wird
erneute eine Datenbank angelegt.
WICHTIG: Fuer Gaeste und User muss es verschiedene GIDs (GroupIDs) auf
Shell-Ebene geben !!! MBox-User OHNE Shell-Account werden daran erkannt,
dass ihre GID die der SH-Gaeste (z.b. "other") ist ... MBox-User MIT Shell-
Account haben die GID der SH-User (z.B. "sys").
4.2. Dateien
============
Da es sich bei allen Protokoll- und Steuerdateien um ASCII-Textfiles handelt,
koennen Aenderungen problemlos mit einem "normalen" Editor vorgenommen werden.
Die einzige Ausnahme bildet die Teilnehmer-Datenbank - also HAENDE WEG !!!
Soll sich die MBox mit einem "LOGO"-Text/Bild melden, muss die Datei
"./etc/logo" (s. LOGO-Definition in "mbox.h") exisitieren. Diese Datei
enthaelt einen ASCII-Text. ANSI-Bilder sollten vermieden werden, denn sie
umgehen die TERMCAP-Steuerung der MBox.
5. WEITERE INFOS
=============================================================================
5.1. Mail genuegt
=================
Diese BETA-Version des TUTORIALS beantwortet natuerlich nicht alle Fragen,
die bei der Installation der "ix/MBox" auftreten werden, aber bei zusaetz-
lichem Studium der einzelnen Routinen (siehe auch CROSSREF), sollte sich
zu fast jedem Problem auch eine Loesung finden lassen.
Wenn alles fehlschlaegt, genuegt eine MAIL an "volkers@unnet.w.open.de",
um Infos und evtl. neue Routinen zu bekommen. Ausserdem wird immer dann,
wenn's neue Erkenntnisse gibt, ein INFO-Rundschreiben verschickt, um
alle MBox-Betrieber mit dem aktuellen Stand der Entwicklung vertraut
zu machen.
5.2. Updates
============
Updates werden als CDIFFs fuer die Version 1.6.0 der ix/MBox verschickt,
oder auf Wunsch als komplette Source-Files. Ausserdem werden von Zeit zu
Zeit INFO-Runschreiben verschickt, die auf Aenderungen aufmerksam machen.
Der Rest ist Glueckssache ... mfG Volker Schuermann