[Dovecot] trash folder (again)
Hi,
I read very intently all the issues related to imap trash folders, but either I didn't unerstand them or my problem is slightly different.
I plan to migrate from cyrus to dovecot. I've executed the perl script cyrus2dovecot successfully with the substitution flag "-E 's/^\./.INBOX./'" cause I want to have all folders as subfolders of the INBOX. The vmail dir looks like this afterwards:
drwxr-xr-x 11 vmail vmail 4096 Jul 8 14:19 . drwxr-xr-x 3 vmail vmail 4096 Jul 8 14:19 .. drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Drafts drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Sent drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Templates drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Trash drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blah drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blub drwxr-xr-x 2 vmail vmail 4096 Jul 8 14:19 cur -rw-r--r-- 1 vmail vmail 119 Jul 8 14:19 dovecot-uidlist drwxr-xr-x 2 vmail vmail 4096 Jul 8 14:19 new -rw-r--r-- 1 vmail vmail 80 Jul 8 14:19 subscriptions drwxr-xr-x 2 vmail vmail 4096 Jul 8 14:19 tmp
After the first access with Thunderbird, regardless of the version (TB2x or TB3x) and regardless of using TB with an empty profile or a well filled up, the directory looks different:
drwxr-xr-x 12 vmail vmail 4096 Jul 8 14:21 . drwxr-xr-x 3 vmail vmail 4096 Jul 8 14:19 .. drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Drafts drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Sent drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Templates drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Trash drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blah drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blub drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:21 .Trash drwxr-xr-x 2 vmail vmail 4096 Jul 8 14:19 cur -rw-r--r-- 1 vmail vmail 119 Jul 8 14:21 dovecot-uidlist -rw-r--r-- 1 vmail vmail 17408 Jul 8 14:21 dovecot.index.cache -rw-r--r-- 1 vmail vmail 448 Jul 8 14:21 dovecot.index.log drwxr-xr-x 2 vmail vmail 4096 Jul 8 14:19 new -rw-r--r-- 1 vmail vmail 86 Jul 8 14:21 subscriptions drwxr-xr-x 2 vmail vmail 4096 Jul 8 14:19 tmp
A Trash folder was added by TB, I guess. The related lines of the local TB imap logfile (beginning chars are cutted):
mydovedomain.lan:A:CreateNewLineFromSocket: * LIST (\HasChildren) "." "INBOX" ReadNextLine [stream=4ecf8a10 nb=22 needmore=0] mydovedomain.lan:A:CreateNewLineFromSocket: 5 OK List completed. mydovedomain.lan:A:SendData: 6 list "" "Trash" ReadNextLine [stream=4ecf8a10 nb=22 needmore=0] mydovedomain.lan:A:CreateNewLineFromSocket: 6 OK List completed. mydovedomain.lan:A:SendData: 7 create "Trash" ReadNextLine [stream=4ecf8a10 nb=24 needmore=0] mydovedomain.lan:A:CreateNewLineFromSocket: 7 OK Create completed. mydovedomain.lan:A:SendData: 8 subscribe "Trash" ReadNextLine [stream=4ecf8a10 nb=27 needmore=0] mydovedomain.lan:A:CreateNewLineFromSocket: 8 OK Subscribe completed. mydovedomain.lan:A:SendData: 9 list "" "Trash" ReadNextLine [stream=4ecf8a10 nb=37 needmore=0] mydovedomain.lan:A:CreateNewLineFromSocket: * LIST (\HasNoChildren) "." "Trash"
Maybe it's a namespace related problem, cause the advanced TB preference panel looks like that:
private namespace "" and the other both input fields are empty.
In opposite to cyrus. The preexisting Trash folder (I created all the standard folders with cyradm by hand) below the INBOX seems sufficient to TB, no further Trash can was created and here all input fields are filled up as followed:
private namespace "INBOX." shared "" other users "user." (only translated by me, it's a localized german version of TB)
I tried hard to understand the namespace wiki page of dovecot, but without success.
Finally my dovecot.conf, dovecot version is 1.2.11:
protocols = imap managesieve protocol imap { listen = mydovedomain.lan:10143 } protocol managesieve { listen = mydovedomain.lan:12000 } disable_plaintext_auth = no log_path = /var/log/imap/dovecot.log ssl = no ssl_cert_file = /etc/ssl/dovecot/server.pem ssl_key_file = /etc/ssl/dovecot/server.key mail_location = maildir:~/Maildir mail_privileged_group = mail mail_debug = yes protocol imap { } protocol pop3 { } protocol managesieve { } protocol lda { postmaster_address = postmaster at mydovedomain.lan mail_plugins = cmusieve acl } auth_verbose = yes auth default { mechanisms = plain cram-md5 passdb passwd-file { args = /etc/dovecot/passwd } passdb pam { } userdb static { args = uid=vmail gid=vmail home=/var/spool/dovecot/vmail/%u } user = root } dict { } plugin { mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename flag_change append }
Please don't punish me, if my problem is already solved. And sorry for my poor English
Holgerr
On Thu, 2010-07-08 at 15:54 +0200, Holger Hegmanns wrote:
drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Drafts drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Sent drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Templates drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Trash drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blah drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blub
They shouldn't begin with ".INBOX". If you can't get rid of them with cyrus2dovecot, rename them manually.
(Although I'm not sure why cyrus2dovecot would have added that prefix.. Wonder if you actually had them with Cyrus as well, and clients just had configured "INBOX." prefix. That wasn't correct either.)
drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:21 .Trash
Yeah, that's what it should have been after conversion.
Maybe it's a namespace related problem, cause the advanced TB preference panel looks like that:
Regardless of how you set up namespaces, the filesystem shouldn't contain the INBOX prefix.
Am Donnerstag, 8. Juli 2010 16:04:49 schrieb Timo Sirainen:
On Thu, 2010-07-08 at 15:54 +0200, Holger Hegmanns wrote:
drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Drafts drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Sent drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Templates drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.Trash drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blah drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:19 .INBOX.blub
They shouldn't begin with ".INBOX". If you can't get rid of them with cyrus2dovecot, rename them manually.
(Although I'm not sure why cyrus2dovecot would have added that prefix.. Wonder if you actually had them with Cyrus as well, and clients just had configured "INBOX." prefix. That wasn't correct either.)
drwxr-xr-x 5 vmail vmail 4096 Jul 8 14:21 .Trash
Yeah, that's what it should have been after conversion.
Maybe it's a namespace related problem, cause the advanced TB preference panel looks like that:
Regardless of how you set up namespaces, the filesystem shouldn't contain the INBOX prefix.
Hi Timo,
followed your suggestion. After execution of cyrus2dovecot without any substitution flags I got this:
drwxr-xr-x 11 vmail vmail 4096 Jul 8 16:27 . drwxr-xr-x 3 vmail vmail 4096 Jul 8 16:22 .. drwxr-xr-x 5 vmail vmail 4096 Jul 8 16:22 .Drafts drwxr-xr-x 5 vmail vmail 4096 Jul 8 16:22 .Sent drwxr-xr-x 5 vmail vmail 4096 Jul 8 16:22 .Templates drwxr-xr-x 5 vmail vmail 4096 Jul 8 16:22 .Trash drwxr-xr-x 5 vmail vmail 4096 Jul 8 16:22 .blah drwxr-xr-x 5 vmail vmail 4096 Jul 8 16:22 .blub drwxr-xr-x 2 vmail vmail 4096 Jul 8 16:22 cur -rw-r--r-- 1 vmail vmail 119 Jul 8 16:27 dovecot-uidlist drwxr-xr-x 2 vmail vmail 4096 Jul 8 16:22 new -rw-r--r-- 1 vmail vmail 44 Jul 8 16:22 subscriptions drwxr-xr-x 2 vmail vmail 4096 Jul 8 16:22 tmp
I did that already before my troubles came up. But the behaviour is not what I want. I'd like to have all folders, standard and user made, *below* the INBOX not at the *same level*. Cyrus doesn't have the "INBOX." prefix as well. The appropriate directory of cyrus looks like that:
-rw------- 1 cyrus mail 8469 Jul 7 00:21 1. -rw------- 2 cyrus mail 2114 Jul 7 00:22 2. drwx------ 2 cyrus mail 176 Jul 8 14:42 Drafts drwx------ 2 cyrus mail 176 Jul 7 00:20 Sent drwx------ 2 cyrus mail 176 Jul 7 00:20 Templates drwx------ 2 cyrus mail 200 Jul 8 14:42 Trash drwx------ 2 cyrus mail 240 Jul 7 00:22 blah drwx------ 2 cyrus mail 192 Jul 7 00:23 blub -rw------- 1 cyrus mail 1912 Jul 8 14:42 cyrus.cache -rw------- 1 cyrus mail 175 Mar 3 2008 cyrus.header -rw------- 1 cyrus mail 272 Jul 8 14:42 cyrus.index
And the view of cyradm:
user.martha (\HasChildren) user.martha.Trash (\HasNoChildren) user.martha.Drafts (\HasNoChildren) user.martha.blah (\HasNoChildren) user.martha.Sent (\HasNoChildren) user.martha.blub (\HasNoChildren) user.martha.Templates (\HasNoChildren)
It seems to be the default behaviour of cyrus to put all folders as subfolders below the INBOX.
I don't wanna waste your time, but wouldn't it be nice to make a real transparent migration from the users point of view?
Best Holgera
On Thu, 2010-07-08 at 16:56 +0200, Holger Hegmanns wrote:
I did that already before my troubles came up. But the behaviour is not what I want. I'd like to have all folders, standard and user made, *below* the INBOX not at the *same level*.
Then create a namespace for that:
namespace private { prefix = INBOX. }
Am Donnerstag, 8. Juli 2010 16:58:28 schrieb Timo Sirainen:
On Thu, 2010-07-08 at 16:56 +0200, Holger Hegmanns wrote:
I did that already before my troubles came up. But the behaviour is not what I want. I'd like to have all folders, standard and user made, *below* the INBOX not at the *same level*.
Then create a namespace for that:
namespace private { prefix = INBOX. }
Solved!
I'm ashamed! Seven settings within namespace{} were definitely too many combinations for me. For the complete idiots like me it has to be:
namespace private { prefix = INBOX. inbox = yes }
Now I got the meaning of
Jul 07 01:48:58 IMAP(martha): Error: namespace configuration error: inbox=yes namespace missing
days before.
Thank you so much! Holgery
participants (2)
-
Holger Hegmanns
-
Timo Sirainen