Differences between version 5 and revision by previous author of MailDir.
Other diffs: Previous Major Revision, Previous Revision, or view the Annotated Edit History
Newer page: | version 5 | Last edited on Sunday, October 17, 2004 6:09:12 am | by AristotlePagaltzis | Revert |
Older page: | version 3 | Last edited on Monday, February 24, 2003 4:56:31 pm | by JohnMcPherson | Revert |
@@ -1,22 +1,13 @@
-A Mailbox
format for unix where the mailbox is a directory and every file in the directory is one email message. Gets
around a lot of the serious limitations on the old mbox mailbox
format.
+A robust MailBox
format for [Unix] that gets
around a lot of the serious limitations on the old and creaking [MBox]
format.
-The main advantage is less reliance on
file locking that can cause
problems (eg
some apps
use flock(2) while some
use fcntl(2), and
[NFS] may or
may not support locking)
. Another advantage is
that corruption in a single file doesn't take out hundreds or thousands of messages
.
+Like [MH], it stores each [Email] in a
file of its own, but does not require any
locking, ever. This avoids many
problems with concurrent updates, such as that
some programs
use flock(2) while others
use fcntl(2), or that
[NFS] FileSystem~s
may not even
support locking, or make too few guarantees about it
. To
that end, MailDir imposes more complex naming and structural requirements than [MH]
.
-Its largest drawback is that everyone has their own "index"
files that they generate for maildir and there is no agreed upon standard (even within version changes of
a single program)
.
-Another drawback
is it can place
a greater burden on
the filesystem if you
are the type of person who keeps 20
,000 messages in a folder. Some filesystems
are more efficient than other
.
+Rather than storing the
files in
a single directory, a MailDir MailBox uses three subdirectories: <tt>tmp</tt>, <tt>new</tt> and <tt>cur</tt>
. <tt>tmp</tt>
is a spool directory for new mail, used to ensure reliable delivery. Delivered, unread mail goes into
the <tt>new</tt> subdirectory. As messages
are read
, they
are moved into <tt>cur</tt>
.
-In general far superior
to mbox mailboxes
.
+MailDir message naming conventions are defined so that message names are unique across shared filesystems, which means you don't get the normal set of file locking issues using most other formats. Some message flags and, depending on software, other MetaData, is encoded into the filename as well,
to avoid the need to open every file all the time
.
-MailDir variants are used by Cyrus and courier imap
daemons. Other mail transfer agents (
[MTA]s)
have maildir
support, such as exim(1)
and procmail(1) (which is not really an MTA). Also, you'll need a mail client that understands the format
, such as [Evolution] or
[Mutt].
-
-The details of the MailDir MailBoxFormat are slightly more complex than other similar schemes (such as
[MH
])
. MailDir imposes certain naming and structural requirements on it's mailboxes, as follows:
-
-Each MailDir mailbox has three subdirectories: ''tmp'', ''new'' and ''cur''. The ''new'' subdirectory contains freshly delivered, unread messages. As messages are read, they are renamed into ''cur''. ''tmp'' is used to ensure reliable delivery.
-
-MailDir message naming conventions are defined so that message names are unique across shared filesystems, which means you don't get the normal set of file locking issues using most other formats.
-
-Some MetaData, in particular the message flags, is encoded into the filename for messages stored in ''cur''
+MailDir variants are used by Cyrus and courier [IMAP]
daemons. Other [MTA]s have MailDir
support, such as [Exim]
and [Postfix]. The
procmail(1) [MDA] also supports it
, as do many MailClient~s
such as [Mutt] and
[Evolution
].
References (with detailed info):
-#
[http://www.qmail.org/man/man5/maildir.html]
-#
[http://cr.yp.to/proto/maildir.html]
+*
[http://www.qmail.org/man/man5/maildir.html]
+*
[http://cr.yp.to/proto/maildir.html]