mbox je obecný název pro formáty souborů používané k ukládání e-mailových zpráv. Všechny zprávy v poštovní schránce formátu mbox jsou v jednom textovém souboru. Začátek e-mailové zprávy je definován řetězcem 5 znaků: slovem „Od“ následovaným mezerou. Na konci každé zprávy je prázdný řádek.
Formát mbox je dnes stále populární kvůli jeho snadnému použití s programy pro zpracování textu.
Na rozdíl od internetových protokolů používaných pro zasílání zpráv nebyl formát pro ukládání elektronických zpráv zaveden prostřednictvím RFC, ale byl vytvořen vývojáři e-mailového softwaru.
V mbox ( RFC 4155 ) jsou zprávy uloženy v souborech přímo přístupných uživatelům v původním formátu Internet Message ( RFC 2822 ). Stejné jako u jiné formy poštovních schránek MH Message Handling System . Jiné systémy, jako je Microsoft Exchange Server a Cyrus IMAP Server, ukládají poštovní schránky do centralizovaných databází spravovaných poštovním systémem a nejsou přímo přístupné uživatelům.
Alternativa k mbox je často označována jako formát e-mailového úložiště maildir .
Existují čtyři nekompatibilní formáty mbox: mboxo , mboxrd , mboxcl a mboxcl2 , které pocházejí z různých verzí Unixu . Schéma pojmenování vyvinuli Daniel J. Bernstein, Rahul Dhesi a další v roce 1996. mboxcl a mboxcl2 pocházejí z formátu souboru používaného mailery Unix System V Release 4. mboxrd byl vyvinut Rahulem Dhesi et al. jako vylepšení mboxo a následně byl upraven pro použití některými unixovými mailery, včetně qmail (orig.: " a následně přijato některými unixovými poštovními nástroji včetně qmail“).
mboxo a mboxrd určují začátek nové zprávy řádkem začínajícím slovem From, které může být obsaženo jak v záhlaví poštovní zprávy, tak v jejím těle (stará chyba v emailovém standardu, možná stále aktuální) (původní : "porušení standardu pošty u prvního, ale pravděpodobně u druhého"). Před uložením do poštovní schránky mbox musí řádkům v těle zprávy, které začínají slovem „Od“ předcházet znak „větší než“:
> Z mého pohledu..., což ve formátu mbox může vést k poškození zprávy: pokud je znak "větší než" již na začátku řádku před "Od", zůstane nezměněn. Později, při čtení e-mailu, program omylem odstraní počáteční znak „>“. Formát mboxrd tento problém řeší nahrazením From za >Od a >Od za >>Od. Taková transformace je vždy vratná. [jeden]
Příklad:
Od MAILER-DAEMON Pá 8. července 12:08:34 2011 Od: Autor <[email protected]> Komu: Příjemce <[email protected]> Předmět: Ukázka zprávy 1 Toto je tělo. >Od (měl by uniknout). Jsou tam 3 řádky. Od MAILER-DAEMON Pá 8. července 12:08:34 2011 Od: Autor <[email protected]> Komu: Příjemce <[email protected]> Předmět: Ukázka zprávy 2 Toto je druhé tělo.Formáty mboxcl a mboxcl2 používají hlavičku " " k určení délky zprávy a nalezení " " skutečných Content-Length:polí From . mboxcl stále používá ">" k úniku z, mboxcl2 ne.
Některé programy používají pro své potřeby modifikace mbox .
Varianty mbox používají různé, nekompatibilní mechanismy zamykání souborů : fcntl(), lockf(), "dot locking". To je nespolehlivé při použití síťových souborových systémů, jako je NFS .
Uzamčení souboru je nutné, protože mnoho zpráv je uloženo v jednom souboru, který může být poškozen, pokud se několik programů pokouší zapisovat současně. K tomu může dojít, pokud program pro doručování e-mailů přidává nové zprávy ve stejnou dobu, kdy čtečka pošty odstraňuje starou zprávu.
Doporučuje se blokovat soubory mbox i pro jednoduché čtení pošty. V opačném případě se může zobrazit poškozená zpráva, pokud jiný proces současně upravuje soubor.