PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : CyrusIMAP:Trotz reconstruct nicht alle alten Ordner sichtbar



AndreasMeier
23.08.07, 20:13
Hallo zusammen,

hab ein kleines Problem:

Ich hab einen neuen Cyrus IMAP Server aufsetzen müssen und hab nun alle User Mailboxen vom alten auf den neuen Cyrus übertragen.

Das Rekonstruieren hat per Kommando


reconstruct -rf user.benutzername

auch gut geklappt.

Nur bei einer Mailbox tauchen die Unterordner nicht auf.

Ich hab sie:
- an die richtige Stelle hinkopiert
- die richtigen Rechte vergeben
- recontruct -rf user.benutzername drüber laufen lassen

Trotzdem werden sie nicht angezeigt.
Auch ein Löschen der cyrus.cache, cyrus.header und cyrus.index-Datei hat nichts gebraucht.

Ich kann mit KMail auf die Mailbox zugreifen, sehe die Ordner aber nicht. Auch ein "Abonnieren", weder über KMail noch über Squirrel Webmail, zeigt mir die rekonstruierten Ordner an.

Ein komplett neu angelegter Ordner wird mir angezeigt.

Kann mir einer vielleicht sagen, wo ich evtl. nen Fehler gemacht hab ?

Danke und Gruß
Andreas

marcdevil
23.08.07, 20:55
die mailboxen müssen erst angelegt werden, denn reconstruct funktioniert nur mit bekannten mailboxen.

AndreasMeier
23.08.07, 21:19
Mailbox hatte ich vorher angelegt, dann die alten Unterordner und Mails wieder reinkopiert, dann reconstruct drüber laufen lassen.

Ich hoffe, ich muss nicht jeden Unterordner einzeln anlegen !

Gruß
Andreas

pucki
23.08.07, 22:38
hi,

wie hast du denn die unterordner übertragen?

was sind bei dir die richtigen rechte?
hast du dir mal die verzeichnisstruktur auf dem server angesehen?
cyrus legt so weit ich mich erinnere noch daten über die mailboxstruktur in einem weiteren verzeichnis ab. schau mal ob du das findest und vergleiche eine funktionierende mit der störrischen mailbox

vielleicht könntest du einfach mal deine vorgehensweise etwas näher erläutern. erstens hilft dir das dabei kleine fehler selbst zu finden, zweitens hilft es uns besser zu verstehen, was du an deiner kiste verbrichst ;-)

wir sitzen halt leider nicht hinter dir ;-)

grüße

reinhard

marcdevil
23.08.07, 22:41
Mailbox hatte ich vorher angelegt, dann die alten Unterordner und Mails wieder reinkopiert, dann reconstruct drüber laufen lassen.

Ich hoffe, ich muss nicht jeden Unterordner einzeln anlegen !

Gruß
Andreas
oh doch

jeder ordner ist ne mailbox
in der managerkonsole via cm user/bert/subfolder anzulegen
cm = create mailbox

tschloss
24.08.07, 00:29
Aus dem Hinterkopf:
Es gibt doch noch eine reconstruct Option, die versucht, alles aus der Dateistruktur zu rekonstruieren, die aber möglicherweise nicht/nicht vollständig implementiert ist. Zumindest war sie das für lange Zeit nicht. Oder verwechsle ich da was?

bluesky666
24.08.07, 03:19
hast Du die Datenbank vom alten Server noch dann müßtest Du die einfach neu einspielen auf dem neuen Server

# backup der Datenbank machen vom alten Server
su - cyrus -c "ctl_mboxlist -d" > /backup/mailboxlist.txt

# recover der Datenbank auf neuem Server
su - cyrus -c "ctl_mboxlist -u" /backup/mailboxlist.txt

die Datenbank liegt bei mir unter /var/lib/cyrus

AndreasMeier
24.08.07, 08:30
1.) wie hast du denn die unterordner übertragen?
2.) was sind bei dir die richtigen rechte?
3.) hast du dir mal die verzeichnisstruktur auf dem server angesehen?
cyrus legt so weit ich mich erinnere noch daten über die mailboxstruktur in einem weiteren verzeichnis ab. schau mal ob du das findest und vergleiche eine funktionierende mit der störrischen mailbox

4.) ....zweitens hilft es uns besser zu verstehen, was du an deiner kiste verbrichst ;-)


zu :
1.) einfach mit MC aus einem Sicherungsverzeichnis in das neue IMAP-Verzeichnis kopiert
2.) Rechte sind 0700, Owner = cyrus, Group = mail, heißt Owner Cyrus darf lesen, schreiben, ausführen, der Rest darf nix. Ist bei den anderen Mailboxen so und funzt, war auch auf dem alten Cyrus so.
3.) Ja, hab ich, dort hat es mit Punkt 1 und 2 jeweils geklappt, darum hat es mich auch so verwundert
4.) bin ganz unschuldig :-)



Aus dem Hinterkopf:
Es gibt doch noch eine reconstruct Option, die versucht, alles aus der Dateistruktur zu rekonstruieren, die aber möglicherweise nicht/nicht vollständig implementiert ist. Zumindest war sie das für lange Zeit nicht. Oder verwechsle ich da was?

Das meinte hab ich ja mit der Option "-rf" gemacht.
-r heißt ja hier Rekursiv, also alle Unterordner.
Hat bei einer anderen Mailbox ja auch ohne Probleme geklappt.



hast Du die Datenbank vom alten Server noch dann müßtest Du die einfach neu einspielen auf dem neuen Server

# backup der Datenbank machen vom alten Server
su - cyrus -c "ctl_mboxlist -d" > /backup/mailboxlist.txt

# recover der Datenbank auf neuem Server
su - cyrus -c "ctl_mboxlist -u" /backup/mailboxlist.txt

die Datenbank liegt bei mir unter /var/lib/cyrus

Wäre das Kommando für den gesamten Cyrus ?
Dann lass ich lieber die Finger davon.
System läuft sehr gut (bis auf die eine Mailbox).
Aber wie auch immer. Die alten Daten hätte ich natürlich noch.
Sogar der alte Cyrus würde noch laufen :-)

Aber es kann doch nicht sein, dass bei identischen Arbeitsschritten bei mehreren Mailboxen, eine aus der Reihe tanzt.

Habt ihr nicht noch andere Tips und Kniffe ?

Danke schonmal im voraus,
Gruß
Andreas

bluesky666
24.08.07, 08:44
Du kannst ja einfach mal beim neuen Cyrus deine jetzige DB sichern und es dann mal probieren, ich hab das schon mal gemacht als ich meinen Server neu aufgesetzt hatte, hab zwar nur 1 User im Grunde aber recht viele Emails und Ordern drin. klappte ohne Probleme bei mir, musste aber auch erstmal suchen wie das genau gemacht wird

komaii
24.08.07, 09:53
in der managerkonsole via cm user/bert/subfolder anzulegen
cm = create mailbox

Intressant, ich dachte beim Cyrus muss das cm user.blabla/weiterso sein. Also nach dem user ein dot.

marcdevil
27.08.07, 10:33
Intressant, ich dachte beim Cyrus muss das cm user.blabla/weiterso sein. Also nach dem user ein dot.
UNIX Hierarchy Convention
mein cyrus ist so konfiguriert, das man auch punkte im usernamen haben kann und / der Verzeichnistrenner ist.

stefaan
27.08.07, 21:41
Servus!

Soweit ich mich erinnern kann (hab diese Spielerei auch schon einmal gebraucht), ist es reconstruct -r -f user.mailbox (-rf ging nicht richtig).

Weitere Lösungsvorschläge, die ich auch schon hinter mir habe:
-) Das Mailkonto in Outlook Express einrichten und die Mails als Dateien einfach hineinziehen. Ist zwar eine :ugly: Lösung, geht aber auch... Es lebe drag&drop :D
-) imapsync: Damit hab ich letztens ca. 1000 User auf einen neuen Server übersiedelt (Passwörter in MySQL, schnell einmal auf 123 gesetzt und mit einem Script alle Mailboxen rekursiv übertragen). Script kann ich gerne veröffentlichen.

So ist Cyrus ja ganz nett, aber wenn er einmal net will... :D

Grüße, Stefan

drunkenPenguin
27.08.07, 21:43
-> /var/lib/cyrus/user/ mitgesichert?