folders not visible on copied mail folders

Mark Foley mfoley at ohprs.org
Fri Jul 20 04:33:52 EEST 2018


Shortly after this post, I found a solution here: http://forums.mozillazine.org/viewtopic.php?t=1097725

In order to see the .Dennis\ Email.Dennis\ Inbox sub-folder you have to collapse and re-expand
the folder list in Thunderbird. It's that simple ... AND that annoyingly obscure!

Thanks for your help! --Mark

-----Original Message-----
From: Mark Foley <mfoley at ohprs.org>
Date: Thu, 19 Jul 2018 21:21:34 -0400
Organization: Ohio Highway Patrol Retirement System
To: dovecot at dovecot.org
Subject: Re: folders not visible on copied mail folders

On Thu, 19 Jul 2018 08:11:40 +0200 Steffen Kaiser <skdovecot at inf.h-brs.de> wrote:
>
> On Thu, 19 Jul 2018, Mark Foley wrote:
> > On Wed, 18 Jul 2018 07:23:06 +0200 Steffen Kaiser <skdovecot at inf.h-brs.de> wrote:
> >>
> >> On Tue, 17 Jul 2018, Mark Foley wrote:
> >>> On Tue, 17 Jul 2018 08:06:24 +0200 Steffen Kaiser <skdovecot at inf.h-brs.de> wrote:
> >>>>
> >>>> On Mon, 16 Jul 2018, Mark Foley wrote:
> >>>>
> >>>>> We had a user quit recently.  Three days ago I copied his entire Maildir folder to another user
> >>>>> to that user's Maildir/.JoesEmail.  I changed ownership and made the permission 'chmod -R
> >>>>> og-rwx .', just like all the other files/directories of the new owner.  This didn't work to show
> >>>>> the new folder.  Today, in his Thunderbird client, I subscribed to the 'JoesEmail' folder.  I
> >>>>> restarted dovecot and restarted Thunderbird.
> >>>>>
> >>>>> In Thunderbird, the 'JoesEmail' folder now shows, but it is empty and shows none of the
> >>>>> subordinate mail folders.  I ran 'doveadm index -u newowner JoesEmail' and
> >>>>> 'doveadm force-resync -u newowner JoesEmail'.  This didn't help.
> >>>>>
> >>>>> I did this once before with a previous user who quit and only changed ownership, no
> >>>>> subscribing, no doveadm, and that worked.
> >>>>>
> >>>>> What am I doing wrong?
> >>>>
> >>>> Your description might be interpreted one way or another, esp. "copied his
> >>>> entire Maildir folder ... to that user's Maildir/.JoesEmail".
> >>>>
> >>>> Also, it depends on how you have configured mail_location.
> >>>>
> >>>> If this means that you have:
> >>>> Maildir/.JoesEmail/{new,cur,tmp}
> >>>> Maildir/.JoesEmail/.mailbox/{new,cur,tmp}
> >>>> Maildir/.JoesEmail/.mailbox.submailbox/{new,cur,tmp}
> >>>> now, that will clash with the standard Maildir format:
> >>>> https://wiki2.dovecot.org/MailboxFormat/Maildir
> >>>>
> >>>> You would need to move the subfolders with a leading dot of .JoesEmail
> >>>> into:
> >>>> Maildir/.JoesEmail/{new,cur,tmp}
> >>>> Maildir/.JoesEmail.mailbox/{new,cur,tmp}
> >>>> Maildir/.JoesEmail.mailbox.submailbox/{new,cur,tmp}
> >>>>
> >>>> If you use :LAYOUT=fs to mail_location, .JoesEmail should spell JoesEmail
> >>>>
> >>>> Subscription is needed only, if the mail client "displays subscribed
> >>>> folders only" or does not "display all folders". The meaning of the
> >>>> setting varies from client to client.
> >>>>
> >>>> Another way would to keep the other account and share it via ACLs:
> >>>> https://wiki2.dovecot.org/SharedMailboxes/Shared
> >>>>
> >>>> Steffen Kaiser
> >>>
> >>> Steffen, thanks for your reply. I did have the copied folders as shown in your first example. I
> >>> changed that to what you show as the remedy. The target user's Maildir folder now has:
> >>>
> >>> drwx------  5 mpress domusers   4096 2017-06-28 20:07 .Deleted\ Messages.Junk/
> >>> drwx------  5 mpress domusers   4096 2018-07-16 23:22 .Delta\ Dental/
> >>> drwx------ 21 mpress domusers   4096 2018-07-17 16:48 .Dennis\ Email/
> >>> drwx------  5 mpress domusers   4096 2018-07-16 23:15 .Dennis\ Email.Deleted\ Items/
> >>> drwx------  5 mpress domusers   4096 2018-07-16 23:15 .Dennis\ Email.Deleted\ Items.Sent/
> >>> drwx------  5 mpress domusers   4096 2018-07-17 17:02 .Drafts/
> >>> drwx------  5 mpress domusers   4096 2018-07-17 16:35 .ESI/
> >>>
> >>> Where '.Dennis Email' is the folder for the old user. I copied the old user's 'Maildir/.Deleted Items'
> >>> and 'Maildir/.Deleted Items/Sent' to the target user's 'Maildir/.Dennis Email.Deleted Items'
> >>> and 'Maildir/.Deleted Items/Sent, respective. That how I understood what you advised. There are
> >>> more such subfolders, but I thought I'd try this one first.
> >>
> >>> However, still only the "Dennis Email" folder shows in the mail client, empty, no sub-folders
> >>> even though "Deleted Items.Sent/cur" has plenty of mail files (1522).
> >>>
> >>> I did try running 'doveadm index -u mpress "Dennis Email"', again; and restarting dovecot and
> >>> thunderbird again, but still nothing.
> >>
> >> First check if Dovecot thinks the folders are there:
> >>
> >> doveadm mailbox list -u "mpress" | grep Dennis
> >
> > yes:
> >
> > # doveadm mailbox list -u "mpress" | grep Dennis
> > Dennis Email
> > Dennis Email.Deleted Items
> > Dennis Email.Deleted Items.Sent
>
> That means: Dovecot sees them, but your client is not.
> Are you absolutely sure the client is set to "display all folders"?
> Secondly, make sure Thunderbird rescans the folders. Sometimes you need to 
> collapse *certain* levels and expand them. I mean, collaps the whole tree 
> of the account, then expand it again, see if the triangle in front of 
> Dennis Email appeared, tap there, a.s.o. I have a Thunderbird client, that 
> for whatever reason I don't know, "forgets" about a certain hierarchie 
> (subtree) now and then.
>
> As another test, you could speak IMAP:
>
> telnet localhost 143
> 1 login mpress "pwd"
> 2 list * *
> 3 lsub * *
>
> You could manually add those to the subscription file, if LSUB does not 
> display the folders. LSUB displays only subscribed folders, LIST displays 
> all.
>
> >
> >> Then make sure that each of the three folders contain the cur, new, tmp
> >> subfolders.
> >
> > They do:
> >
> > drwx------ 2 mpress domusers 4096 2018-07-13 14:30 ./.Dennis\ Email/cur/
> > drwx------ 2 mpress domusers 4096 2018-07-13 14:30 ./.Dennis\ Email/new/
> > drwx------ 2 mpress domusers 4096 2018-07-13 14:30 ./.Dennis\ Email/tmp/
> > drwx------ 2 mpress domusers 2678784 2017-06-23 12:14 ./.Dennis\ Email.Deleted\ Items/cur/
> > drwx------ 2 mpress domusers 180224 2016-06-20 16:29 ./.Dennis\ Email.Deleted\ Items/new/
> > drwx------ 2 mpress domusers 16384 2016-06-20 16:29 ./.Dennis\ Email.Deleted\ Items/tmp/
> > drwx------ 2 mpress domusers 507904 2018-07-13 13:02 ./.Dennis\ Email.Deleted\ Items.Sent/cur/
> > drwx------ 2 mpress domusers 4096 2015-02-23 17:51 ./.Dennis\ Email.Deleted\ Items.Sent/new/
> > drwx------ 2 mpress domusers 4096 2018-07-13 13:02 ./.Dennis\ Email.Deleted\ Items.Sent/tmp/
> >
> >> Does the Dovecot log contains something?
> >
> > Nothing at all when searching for "Dennis Email"

Almost there! The 'list' command showed the mail folders, but the lsub command did not show
them all as subscribed.  So, I subscribed to them in Thunderbird and the top level folders
showed up.  I had to go back into Thunderbird and subscribe to the sub-folders.  Apparently the
'subscribe' function in Thunderbird does not recursively auto-subscribe sub-folders.  I'll have
to check with the Thunderbird forum to see how to auto-subscribe, etc. 

One last problem. All of the former user's folders and message are now showing except for

.Dennis Email.INBOX/

and its mail sub-folders.  In the TBIRD 'subscribe' function, INBOX is grayed out and there is
no subscribe checkbox.  I renamed this folder to 'Dennis Inbox' (on the Dovecot server), and
was then able to subscribe to 'Dennis Inbox' in Tbird.  However, none of its subfolders or
messages show, and the subscribe function lists no subfolders, which are:

drwx------  5 mpress domusers   4096 2018-07-19 17:55 .Dennis\ Email.Dennis\ Inbox/
drwx------  5 mpress domusers   4096 2018-07-19 20:58 .Dennis\ Email.Dennis\ Inbox.Actuary/
drwx------  5 mpress domusers   4096 2018-07-19 20:58 .Dennis\ Email.Dennis\ Inbox.Healthcare/
drwx------  5 mpress domusers   4096 2018-07-19 20:58 .Dennis\ Email.Dennis\ Inbox.Litigation/
drwx------  5 mpress domusers   4096 2018-07-19 20:58 .Dennis\ Email.Dennis\ Inbox.Misc/
drwx------  5 mpress domusers   4096 2018-07-19 17:57 .Dennis\ Email.Dennis\ Inbox.Outside\ Counsel/
drwx------  5 mpress domusers   4096 2018-07-19 20:12 .Dennis\ Email.Dennis\ Inbox.Outside\ Counsel.Investments/
drwx------  5 mpress domusers   4096 2018-07-19 20:12 .Dennis\ Email.Dennis\ Inbox.Outside\ Counsel.Timber/
drwx------  5 mpress domusers   4096 2018-07-19 20:58 .Dennis\ Email.Dennis\ Inbox.Public\ Records/
drwx------  5 mpress domusers   4096 2018-07-19 20:58 .Dennis\ Email.Dennis\ Inbox.RFP/

All these folders do contain /tmp, /cur, /new. Also, oddly, Tbird still shows the INBOX folder
(grayed out) under "Dennis Email", even though it physically no longer exists.

I've restarted Dovecot and Thunderbird.

'list' shows all the 'Dennis Email.Dennis Inbox' folders, but no 'Dennis Email.INBOX': 

* LIST (\HasChildren) "." "Dennis Email.Dennis Inbox"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.Misc"
* LIST (\HasChildren) "." "Dennis Email.Dennis Inbox.Outside Counsel"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.Outside Counsel.Investments"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.Outside Counsel.Timber"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.Litigation"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.Actuary"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.Healthcare"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.Public Records"
* LIST (\HasNoChildren) "." "Dennis Email.Dennis Inbox.RFP"

'lsub' shows both the INBOX folder and the 'Dennis Inbox' folder, but no sub-folder to 'Dennis Inbox'.

* LSUB () "." "Dennis Email.INBOX"
* LSUB () "." "Dennis Email.Dennis Inbox"

What's the trick on this last stubborn folder?

Man, I must have gotten really lucky when I did this successfully a year ago.

--Mark


More information about the dovecot mailing list