Page 1 of 1
Cyrus: mailbox löschen forcieren?
Posted: 2003-06-23 22:37
by bernostern
Hallo,
Ich hab hier im Cyrus zwei kaputte mailboxen, die ich gerne los hätte. Mit cyradmin kann ich aber weder die Boxen löschen (Perm. denied) noch kann ich einer mailbox die ACLs ändern oder löschen (System I/O-Error).
Gibt es beim Cyrus eine Möglicjkeit solche mailboxen auf eine andere Art loszuwerden? Die Daten sind egal, haupsache die Boxen sind weg.
Danke und Gruß,
Bern
Re: Cyrus: mailbox löschen forcieren?
Posted: 2003-06-23 23:06
by chris2000
Das geht natürlich mit cyradm, du musst dem Admin erst die Rechte zum Löschen der Mailbox geben:
sam user.<irgendwer> <adminuser> d
Gruß,
Christian
Re: Cyrus: mailbox löschen forcieren?
Posted: 2003-06-23 23:34
by squize
Es gibt auch einen Befehl zum abchecken der Mailboxen:
reconstruct
Gruss
Marc
Re: Cyrus: mailbox löschen forcieren?
Posted: 2003-06-24 08:32
by captaincrunch
Ein "System I/O-Error" klingt ziemlich nach Inkonsistenzen im Filesystem. Vielleicht solltest du das mal (vorab) checken.
Falls das alles fehlschlagen sollte (ein Wort der Warnung vorab : sämtliche Pfade beziehen sich auf den "alten" Debian-Cyrus) :
1. Die Mailboxen der User findest du unter /var/spool/cyrus/mail/user . Sofern du die betreffenden Ordner dort löscht, sind die Daten erstmal weg.
2. Im Verzeichnis /var/lib/cyrus gibt es diverse Dateien und Ordner. Sofern du dort alle betreffenden Informationen zu diesen Mailboxen entfernst (gut aufpassen dabei, sonst bringst du den cyrus ganz schnell in Bedrängnis), hast du das von dir gesteckte Ziel erreicht.
Das sollte aber nur im äußersten Notfall passieren, da man sich dadurch mehr Ã?rger als Nutzen einhandeln kann. Cyrus mag es nicht allzu sehr, wenn man ihm seine internen Strukturen auseinandernimmt ... ;)
Re: Cyrus: mailbox löschen forcieren?
Posted: 2003-06-24 11:09
by bernostern
Hallo,
danke erstmal für die Antworten!
CaptainCrunch wrote:Ein "System I/O-Error" klingt ziemlich nach Inkonsistenzen im Filesystem. Vielleicht solltest du das mal (vorab) checken.
Du meinst im Rescue ein fsck /dev/hdaX -f?
ein fdisk -l bringt :
Code: Select all
/dev/hda1 * 1 3 24066 83 Linux
/dev/hda2 4 35 257040 82 Linux swap
/dev/hda3 36 226 1534207+ 83 Linux
/dev/hda4 227 5005 38387317+ f Win95 Ext'd (LBA)
/dev/hda5 227 864 5124703+ 83 Linux
/dev/hda6 865 2904 16386268+ 83 Linux
/dev/hda7 2905 2966 497983+ 83 Linux
/dev/hda8 2967 5005 16378236 83 Linux
Was sagt mir das bei /dev/hda4? Ich dachte es wäre Linux!?
Nein ohne quatsch...Ist das ein Problem? Das hat wohl was mit dem Rescue zu tun, oder? Ansonsten läuft fsck ohne Fehler durch!
Ich habe jetzt auch alles gelöscht, was von der alten mailbox zu finden war. Wenn ich jetzt mit cm user.web1p1 die Mailbox neu anlegen will, sagt cyradm "Mailbox already exists".
Ich schätze die Mailbox ist noch in mailboxes.db eingetragen,oder sowas. Nur wie krieg ich sie da raus?
@chris2000:
Code: Select all
sam user.<irgendwer> <adminuser> d
Hab ich ja alles versucht, aber da bekomm ich den System I/O Error (s.o.)
BTW: der adminuser ist doch 'root' bzw. 'cyrus', also die, die als admins in der cyrus config eingetragen sind, oder?
Hat noch jemand ne Idee?
Danke und Gruß,
Bern
Re: Cyrus: mailbox löschen forcieren?
Posted: 2003-06-24 11:37
by captaincrunch
Was sagt mir das bei /dev/hda4? Ich dachte es wäre Linux!?
Nein ohne quatsch...Ist das ein Problem? Das hat wohl was mit dem Rescue zu tun, oder? Ansonsten läuft fsck ohne Fehler durch!
Mach dir keine Sorgen : hda4 ist die erweiterte Partition, die die weiteren logischen enthält, da IDE-Platten halt sonst nur 4 primäre Partitionen verwalten können.
Ich glaube, das wird langsam mal ein Fall für die FAQ ... ;)
Re: Cyrus: mailbox löschen forcieren?
Posted: 2003-06-24 12:12
by mark
bernostern wrote:
Hat noch jemand ne Idee?
Danke und Gruß,
Bern
Hi,
Die Mailboxen/Konten werden in der mailboxes.db gespeichert. Am einfachsten du exportierst diese Datei in plaintext, änderst deine Sachen, entfernst die alte mailboxes.db (move, BACKUP!) und machst die neuen Daten importieren.
Dabei den Cyrus-imapd besser deaktivieren, damit kein User in der zwischenzeit Konten / Verzeichnisse anlegt.
Export:
Code: Select all
su cyrus -c "/pfad/zu/ctl_mboxlist -d" >mailboxes.plain
Reimport (der user cyrus muss auf die datei beim import zugreifen können!):
Code: Select all
su cyrus -c "/pfad/zu/ctl_mboxlist -u <mailboxes.plain"
Wenns ein Fehler gibt, dann die alte mailboxes.db vorher "moven".
Gruß
Mark
PS: Ich hoffe, ich hab nun alles richtig aus meiner Erinnerung gekramt. Ansonsten "man ctl_mboxlist".
Re: Cyrus: mailbox löschen forcieren?
Posted: 2003-06-24 13:27
by bernostern
Hallo Mark,
also es hat wunderbar geklappt, vielen Dank!
Du warst mal wieder die Rettung!
Schöne Grüße,
Bern