Recovering expunged but not purged e-mails from mdbox with zlib compression
Aki Tuomi
aki.tuomi at open-xchange.com
Tue Nov 10 20:16:02 EET 2020
> On 10/11/2020 20:07 Daniel Schütze <dms at cwa.uk.com> wrote:
>
>
> Dear Aki
> Thank you. Unfortunately I'm struggling to get the right syntax for this as it looks like someone else was here too
> https://dovecot.org/pipermail/dovecot/2018-July/112441.html
> The location in my dovecot.conf is
>
> mdbox:%%h/mdbox:INDEX=/indexdisk/indexes/%%n:INDEXPVT=~/mdbox/shared/%%n
This syntax is for accessing shared folders.
You probably should try
doveadm -Dv -o mail_location=mdbox_deleted:/path/to/mdbox fetch -u victim text ALL
> I'm trying to fetch a message (for testing purposes now) based on it's guid as that is available from doveadm dump.
> So my syntax is (based on the previous person who didn't get it to work).
>
> doveadm -o "mail_location=mdbox_deleted:%%h/mdbox:INDEX=/indexdisk/indexes/%%n:INDEXPVT=~/mdbox/shared/%%n" fetch "body" guid (msg.guid from doveadm dump)
>
Doveadm does not support var expand, so this will not work. See above for syntax.
> But that's getting no response. I've tried putting in the hard path in case there is any trouble with the %%h etc but that doesn't help either.
> I've also tried the fetch with the subject of a known deleted message and also adding mailbox Drafts (as I know that's where it is or rather was) but to no avail.
> Given doveadm dump gives msg.uid and no subject I'd prefer to use that in any case.
> There are no error messages, I do with doveadm was a little more verbose to help over these bumps!
>
> Any chance of a helping hand?
>
>
>
>
Aki
>
>
>
> Daniel Schütze
> Director
>
> ------------------
>
> CWA International Ltd
> 5th Floor, 42 Trinity Square
> London
> EC3N 4DJ
>
> (t) + 44 (0)20 7242 8444
> (e) dms at cwa.uk.com
> (w) http://www.cwa.international/
> On 10/11/20 10:53, Aki Tuomi wrote:
>
> > You can use mdbox_deleted driver to access mails with refcount 0. See
> > https://wiki2.dovecot.org/MailboxFormat/dbox
> >
> > Aki
> >
> > On 10.11.2020 12.42, Daniel Schütze wrote:
> >
> > > Yesterday I had to recover an e-mail which a user had deleted. If I
> > > understand this correctly the message was expunged but not purged
> > > (doveadm purge had not been run).
> > >
> > > This e-mail was clearly still in the mdbox stored with zlib
> > > compression as I could tell using the doveadm dump command (doveadm
> > > dump -t dbox filename).
> > >
> > > I could however not reveal the e-mail with the normal doveadm fetch -u
> > > username "body" guid (guid from dump output)
> > >
> > > In the end I was able to recover the e-mail by cutting it out from the
> > > mdbox and running gunzip over it, but this method was very fiddly and
> > > would not have worked for a bulk job. I appreciate I could have just
> > > deleted the index files and gotten all the deleted messages back by
> > > having the index rebuilt but that would have been the proverbial
> > > "hammer to crack a nut".
> > >
> > > Fortunately this e-mail had no attachment for me to worry about, as
> > > those are also detached for sis by dovecot.
> > >
> > > Can anyone tell me of a quick and easy way to recover one or multiple
> > > e-mails marked as expunged but not purged which are stored in a mdbox
> > > with zlib compression? I'm sure I'll have to do this again the future
> > > and my method wouldn't work with a folder!
> > >
> > > Clearly if I was not using zlib compression I could just have read the
> > > contents of the mdbox without any complication.
> > >
> > >
> > > --
> > > Daniel Schütze
> > > Director
> > >
> > > ------------------
> > >
> > > CWA International Ltd
> > > 5th Floor, 42 Trinity Square
> > > London
> > > EC3N 4DJ
> > >
> > > (t) + 44 (0)20 7242 8444
> > > (e) dms at cwa.uk.com
> > > (w) http://www.cwa.international/
> > >
More information about the dovecot
mailing list