Da ich es lange aufgeschoben habe, aufgrund der unangenehmen Erfahrung die ich privat machen musste, hier jetzt der Weg um von Cyrus-imapd 2.1.x
auf 2.2 upzugraden.
- 1. /etc/init.d/postfix stop # sonst haut es den Spooler voll 😉
- 2. /etc/init.d/cyrus stop # Bedarf keiner Erklarung
- 3. cp -r /var/imap /var/imap.old
- 4. cp -r /var/spool/imap /var/spool/imap.old
- 5. emerge -u cyrus-imapd
- 6. /usr/lib/cyrus/cvt_cyrusdb /var/imap/mailboxes.db berkeley /var/imap/mailboxes.db.new skiplist
- 7. /usr/lib/cyrus/cvt_cyrusdb /var/imap/deliver.db berkeley /var/imap/deliver.db.new skiplist
- 8. /usr/lib/cyrus/cvt_cyrusdb /var/imap/tls_sessions.db berkeley /var/imap/tls_sessions.db.new skiplist
- 9. Den Inhalt von /var/imap/db losche ich einfach, man kann ihn aber auch konvertieren, siehe oben.
- 10.find /var/imap/user -name *.seen -exec /usr/cyrus/bin/cvt_cyrusdb {} flat {}.new skiplist ; -exec mv {}.new {} ;
11. Da ich alle Config Dateien ersetzt habe (naturlich habe ich sie vorher gesichert), mussen ein paar Zeilen wieder
zurecht geruckt werden: /etc/imapd.conf
hashimapspool: yes
allowanonymouslogin: no
allowplaintext: yes # ich nutze Mysql und gehe uber pam, daher nur plain
unixhierarchysep: yes # nur wenn das verwendet wird, wie in meinem Fall!!
…
sasl_pwcheck_method: saslauthd
sasl_mech_list: PLAIN
Die ganzen SQL Sachen habe ich auskommentiert, die da noch so rumschwirren. Eventuell kann ich damit Pam ersetzen, mal schaun.
/etc/cyrus.conf
Ich habe fast das komplette Services Statement ersetzt, mit den alten Daten:
SERVICES {
# add or remove based on preferences
imap cmd=“imapd“ listen=“imap“ prefork=0
imaps cmd=“imapd -s“ listen=“imaps“ prefork=0
pop3 cmd=“pop3d“ listen=“pop3″ prefork=0
pop3s cmd=“pop3d -s“ listen=“pop3s“ prefork=0
sieve cmd=“timsieved“ listen=“sieve“ prefork=0
…
- 12. Zweimal nicht daran gedacht 🙁 /etc/postfix/master.cf anpassen
aus:
cyrus unix – n n – – pipe
user=cyrus argv=/usr/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
wird:
cyrus unix – n n – – pipe
user=cyrus argv=/usr/lib/cyrus/deliver -e -r ${sender} -m ${extension} ${user}
- 13. Auf einer Konsole: tail -f /var/log/mail.log anwerfen
- 14. Das Cyrus System wieder anwerfen:
/etc/init.d/cyrus start
und mit telnet auf pop3 testen (am schnellsten), ob du dich einloggen kannst, incl. der Mails auflisten etc. Mit imtest, oder dem Mail MUA IMAP
testen.
Wenn das klappt, dann fehlt nur noch Postfix
- 15. /etc/init.d/postfix start
Immer schon einen Blick auf die Log Konsole werfen 🙂
ENDE
Nachtrag
WordPress hat meine Backslashs aufgefressen, weshalb der Punkt 10 nicht geklappt hatte. Nun stimmt es.
- 12. Zweimal nicht daran gedacht 🙁 /etc/postfix/master.cf anpassen
aus: