Polska Strona Freesco

Format poczty w NND

Domyślnym formatem poczty w NND jest tak zwany format BSD czyli mbox. Oznacza to, że wszystkie kolejne maile kierowane są do jednego pliku przeznaczonego dla danego użytkownika. Można to jednak zmienić. Dlaczego należy to zrobić i jak?

Kiedy członkowie PGF rozpoczynali w 2002 roku prace nad przygotowaniem poprawnej konfiguracji poczty elektronicznej w systemie Freesco (programy exim i teapop), wydawało nam się, że najwłaściwszym będzie format mbox. Było to związane z nietypową strukturą katalogów Freesco i zastosowaniem systemu plików umsdos. Polecanym wówczas rozwiązaniem było przeniesienie poczty do katalogów użytkowników do /mnt/home na odrębną partycję z systemem ext2. Unikało się w ten sposób błędów jakie były wywoływane na podstawowej pratycji Freesco i jej ograniczenia jej pojemności. Przyjęte wówczas zasady były spowodowane zarówno ograniczeniami samego Freesco, jak i wersjami programów tam zastosowanych.
W roku 2004, gdy powstało NND, rozwiązania z Freesco zostały przeniesione do nowego systemu. Dziś z perspektywy czasu można stwierdzić, że czas najwyższy to zmienić.
Dlaczego maildir? D.J. Brenstain – autor qmaila na to pytanie odpowiada dwoma słowami „no lock”. W praktyce oznacza to, że jeśli poczta jest przechowywana w katalogu, każdy mail jako osobny plik, to użytkownik może odbierać pocztę w tym czasie kiedy nowa poczta jest przetwarzana. Unikamy denerwującego komunikatu „mailbox is locked” pojawiającego się czasem podczas odbierania poczty. W przypadku jakichś błędów może się zdarzyć, że zablokowany mbox odblokowac może tylko administrator. Co gorsza w przypadku błędów na dysku może się zdarzyć, że cały plik z pocztą ulegnie uszkodzeniu. Format maildir pozbawia nas tego problemu.
Jak to zrobić? Należy dokonać kilku zmian w plikach konfiguracyjnych programów pocztowych.
Najpierw exim.conf, zamiast:
file = /var/spool/mail/$local_part
wstawić należy:
maildir_format = true
directory = /home/$local_part/Mailbox

i w ten sposób umiejscowimy skrzynkę pocztową w katalogu użytkownika. Może to być przydatne, choćby wtedy, gdy na partycji /home zastosujemy quotę.
Następnie zmienić trzeba plik tpop3d.conf, zamiast:
mailbox: bsd:/var/mail/$(user)
wstawiamy:
mailbox: maildir:$(home)/Mailbox
i jest to opcja analogiczna do tej w exim.conf.
Jeśli używamy procmaila, plik .procmailrc w katalogu użytkownika powinien na początku (niezależnie od innych wpisów) mieć następujące linie:
SHELL=/bin/bash
PATH=/bin:/sbin:/usr/bin/:/usr/sbin
MAILDIR=$HOME
DEFAULT=$MAILDIR/Mailbox/
LOGFILE=$HOME/procmail.log

Jeśli już zostały wykonane wszystkie zmiany, należy zrestartować usługi exim i tpop3d.
Oczywiście takie zmiany na już działającym systemie wymagają porozumienia z użytkownikami i czasowego wyłączenia usług, aby nie doszło do utraty poczty.

autor: W. Trąmpczyński (Maciek)


Dodaj komentarz