Empty folders

Niels Dettenbach (Syndicat.com) nd at syndicat.com
Tue Dec 30 07:33:10 EST 2014


> Am 30.12.2014 um 11:24 schrieb Andrea Venturoli <ml at netfence.it>:
> 
> _ dm "user.A.B.D" (this won't delete anything);
This is only for „deleting“ possibly existing but corrupt(ed) database entries.
> _ stop imapd;
> _ reconstruct -r -f user.A (this will discover the folders I just only formally deleted);
> _ start imapd;
> _ restore permissions for user.A*.
hmm, OK,
restarting should not be required afaik (but might be i’m wrong here) - but if it help’s you, OK.


> Could you share a pointer?
> I'm not proficient with perl, but I'd gladly look into them anyway.

For Perl Modules, CPAN should be your first friend:
http://www.cpan.org

but many distributions bring the cyrus perl modules still somewhere within the cyrus (or cyrus dev) packages.

Relevant Modules are i.e.:

Cyrus::IMAP::Admin
http://search.cpan.org/~eestabroo/IMAP-Admin-1.6.7/Admin.pm
http://www.manpagez.com/man/3/Cyrus::IMAP::Admin/

manpages and perldoc are typical doc and example resources too for any (installed) perl modules. There are many (very helpful) examples around which should be relatively easy to adopt for your needs, even if you are a perl „newcomer“.

cyradm is the „alter ego of“ Cyrus::IMAP::Shell which is „just“ a „wrapper“ around that module:
https://cyrusimap.org/docs/cyrus-imapd/2.2.13p1/man/cyradm.1.php

so it offers/does anything in the same way cyradm does, but object oriented and/or perled.

some further examples:
http://lists.andrew.cmu.edu/pipermail/info-cyrus/2011-April/034798.html
http://doc.gabosh.net/howto_IMAP_POP3_Server.html

> However I'm suprised: looking into cyrus imap as a black box, it's almost like it has two databases for the same things.
> 
Yes and no,
i understand that for many „newer“ cyrus users cyrus behaves like a „black box“, but it widely isn’t in practice. The "major parts" are the mailbox list db (which is typically „outside“ the IMAP spool / filesystem) and the indices withIN the mailboxes and both could be handled by proper tools even „around“ cyradm shell. Different possible database formats (and BDB versions too) could „confuse“ users seriously…

But in my experience users could live on the „blackbox level“ and rely on it even in disaster scenarios (like in yours, where the cyradm shell plus standard filesystem ops are „enough"), except in cases of i.e. BDB version upgrades or arch migrations which should be handled with care / the official procedures.

good luck,
cheerioh,


Niels.
Syndicat IT & Internet
http://www.syndicat.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
Url : http://lists.andrew.cmu.edu/pipermail/info-cyrus/attachments/20141230/be8512fe/attachment-0001.bin 


More information about the Info-cyrus mailing list