.\" -*- coding: UTF-8 -*-
.\" Project   : tin
.\" Module    : mmdf.5
.\" Author    : U. Janssen
.\" Created   : 2002-02-18
.\" Updated   :
.\" Notes     : needs a lot of work
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH mmdf 5 "18. Februar 2002" Unix Benutzerhandbücher
.\"
.SH BEZEICHNUNG
.\"
MMDF \- Das Mailboxformat »Multi\-channel Memorandum Distribution Facility«
.SH BESCHREIBUNG
Dieses Dokument beschreibt das Mailboxformat \fBMMDF\fP, das von einigen MTAs
und MUAs (z.B. \fBscomail\fP(1)) verwendet wird, um E\-Mails lokal zu speichern.
.PP
Eine \fBMMDF\fP\-Mailbox ist eine Textdatei, die eine beliebige Anzahl
E\-Mail\-Nachrichten enthält. Jede Nachricht besteht aus einem Stempel,
gefolgt von einer E\-Mail\-Nachricht entsprechend \fBRFC822\fP/\fBRFC2822\fP,
wiederum gefolgt von einem Stempel. Das Dateiformat ist
zeilenorientiert. Die Zeilen werden durch Zeilenvorschübe getrennt (ASCII
10). Eine Stempelzeile besteht aus den vier Zeichen »^A^A^A^A« (Strg\-A;
ASCII 1).
.TP 
Beispiel für eine \fBMMDF\fP\-Mailbox, die zwei Nachrichten enthält:
.RS
.nf
.sp
^A^A^A^A
.br
From: example@example.com
.br
To: example@example.org
.br
Subject: test
.br
.sp
.br
>Was ich über das MMDF\-Format gelernt habe:
.br
.br
^A^A^A^A
.br
^A^A^A^A
.br
From: example@example.com
.br
To: example@example.org
.br
Subject: test 2
.br
.sp
.br
bar
.br
^A^A^A^A
.fi
.RE
.PP
Im Gegensatz zu den meisten anderen auf einer Einzeldatei basierenden
Mailboxformaten wie MBOXO und MBOXRD (siehe \fBmbox\fP(5)) ist es in
\fBMMDF\fP\-Mailboxen nicht nötig, die »From«\-Zeilen in Anführungszeichen zu
setzen, da solche Zeilen in diesem Format keine besondere Bedeutung haben.
.PP
.\"
Wenn die (üblicherweise durch \fBstat\fP(2) ermittelte) Änderungszeit einer
nicht leeren Mailbox größer beziehungsweise neuer als die Zugriffszeit der
Datei ist, dann enthält die Datei neue E\-Mails. Viele MUAs setzen eine
»Status:«\-Kopfzeile in jede Nachricht, um zu bezeichnen, welche Nachrichten
bereits gelesen wurden.
.SH SPERREN
Da auf \fBMMDF\fP\-Dateien häufig von mehreren Programmen parallel zugegriffen
wird, sollte der Zugriff auf diese Dateien generell nicht ohne Sperrung
erfolgen.
.PP
Allgemein werden drei Sperrmechanismen (und Kombinationen davon) verwendet:
.IP \(bu
Das Sperren mit \fBfcntl\fP(2) wird zumeist auf aktuellen, POSIX\-konformen
Systemen verwendet. Die Nutzung dieser Sperrmethode ist insbesondere bei
\fBMMDF\fP\-Dateien ratsam, auf die über das Network File System (NFS)
zugegriffen wird, da es die einzige Möglichkeit zu sein scheint, die
Zwischenspeicher von NFS\-Clients zuverlässig für ungültig zu erklären.
.IP \(bu
Das Sperren mit \fBflock\fP(2) wird meist auf BSD\-basierten Systemen verwendet.
.IP \(bu
»Dotlocking« wird auf allen Systemtypen verwendet. Um beispielsweise eine
\fBMMDF\fP\-Datei namens \fIMail\-Ordner\fP zu sperren, legt eine Anwendung zunächst
eine temporäre Datei mit einem eindeutigen Namen in dem Verzeichnis an,
indem sich die Datei \fBMail\-Ordner\fP befindet. Die Anwendung versucht dann,
mit dem Systemaufruf \fBlink\fP(2) einen harten Link namens \fIMail\-Ordner.lock\fP
zu erstellen, der auf die temporäre Datei zeigt. Der Erfolg des
Systemaufrufs \fBlink\fP(2) sollte zusätzlich mit \fBstat\fP(2)\-Systemaufrufen
verifiziert werden. Falls der Link erfolgreich erstellt wurde, wird der
Mail\-Ordner als »dotlocked« betrachtet. Der Link zur temporären Datei kann
daraufhin sicher entfernt werden.
.IP ""
Um die Sperre aufzuheben, entfernt eine Anwendung einfach die Datei
\fIMail\-Ordner.lock\fP.
.PP
Wenn mehrere Methoden kombiniert werden, sollte bei der Implementierung
sichergestellt werden, dass die nicht blockierenden Varianten der
Systemaufrufe \fBfcntl\fP(2) und \fBflock\fP(2) verwendet werden, um tote
Verklemmungen zu vermeiden.
.PP
Wenn mehrere Methoden kombiniert werden, darf eine \fBMMDF\fP\-Datei nicht als
erfolgreich gesperrt betrachtet werden, bevor nicht alle einzelnen Sperren
wirksam sind. Wenn eine der einzelnen Sperrmethoden scheitert, sollte eine
Anwendung alle Sperren aufheben, die sie erfolgreich angewendet hat und mit
dem gesamten Sperrvorgang nach einer angemessenen Wartezeit von vorn
beginnen.
.PP
.\"
.\" .SH FILES
.\" /usr/spool/mmdf/lock/home
.\" $HOME/Mail/
.\"
.\" .SH SECURITY
.\"
Der Sperrmechanismus auf einem bestimmten System ist eine Sache der lokalen
Regeln und sollte konsistent von allen auf dem System installierten
Anwendungen genutzt werden, die auf \fBMMDF\fP zugreifen. Erfolgt dies nicht,
kann es zum Verlust von E\-Mail\-Daten und beschädigten \fBMMDF\fP\-Dateien
kommen.
.SH "KONFORM ZU"
.\"
\fBMMDF\fP ist kein Teil irgendeines gegenwärtig unterstützten Standards.
.SH GESCHICHTE
.\"
\fBMMDF\fP wurde von Dave Crocker an der University of Delaware entwickelt.
.SH "SIEHE AUCH"
\fBscomail\fP(1), \fBfcntl\fP(2), \fBflock\fP(2), \fBlink\fP(2), \fBstat\fP(2), \fBmbox\fP(5),
\fBRFC822\fP, \fBRFC2822\fP

.SH AUTOR
.MT urs@tin.org
Urs Janssen
.ME
.PP
.SH ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von
Mario Blättermann <mario.blaettermann@gmail.com>
erstellt.
.PP
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License Version 3
.UE
oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
.PP
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an die
.MT debian-l10n-german@lists.debian.org
Mailingliste der Übersetzer
.ME .