Shared namespace is empty after migration to new Dovecot installation

Peter Reinhold peter_dovecot at reinhold.dk
Sun Dec 8 13:13:58 EET 2019


Hi all,

I've used most of this weekend finalizing my migration from an old 
server running Dovecot 2.2.22 to a brand new installation running 2.3.8.

In general, the migration was painless, everything just clicked, but 
checking up on the finer details post migration i've found out that user 
shared folders does not seem to work anymore, and I simply can't get it 
to work.

The setups are more or less identical, biggest change is probably the 
addition of a Solr search index, and i've done very little changes in 
the configuration files.

The acl_shared_dict file is being created and updated when I share a 
folder

In the user thats sharing the folder, the dovecot-acl and 
dovecot-acl-list files are created and look the same.

But, the user that should be reading the shared folder can not see it, 
the Shared namespace is simply empty, which it is not on the old 
installation, and namespace setup is identical across the two servers. 
(Except for the CaSiNg of the location of the index and indexpvt)

Logging in and doing an IMAP command : A1 LIST "Shared/" "*" yields this 
on the old server. (I've replaced the sharing users e-mail to 
user at sharer.dk and the reading users to user at reader.dk)

   A1 LIST "Shared/" "*"
   * LIST (\HasNoChildren) "/" Shared/user at sharer.dk
   A1 OK List completed (0.000 + 0.000 secs).

and this on the new

   A1 LIST "Shared/" "*"
   A1 OK List completed (0.006 + 0.000 + 0.005 secs).


Log output from the new server below (i've only included the events 
happening during the LIST account)


-- New, non-working log start --

Namespace : type=shared, prefix=Shared/%u/, sep=/, inbox=no, hidden=no, 
list=children, subscriptions=no 
location=maildir:/data/mail/%d/%n/maildir:INDEX=~/maildir/shared/%u:INDEXPVT:~/maildir/shared/%u
shared: root=/var/run/dovecot, index=, indexpvt=, control=, inbox=, alt=
fts: Indexes disabled for namespace 'Shared/%u/'
acl: initializing backend with data: vfile
acl: acl username = user at reader.dk
acl: owner = 0
acl vfile: Global ACLs disabled

acl vfile: file /data/mail/reader.dk/user/maildir/dovecot-acl not found
acl vfile: file /data/mail/reader.dk/user/maildir/.Junk/dovecot-acl not 
found
acl vfile: file /data/mail/reader.dk/user/maildir/.Trash/dovecot-acl not 
found
acl vfile: file /data/mail/reader.dk/user/maildir/.Sent/dovecot-acl not 
found
auth-master: userdb lookup(user at sharer.dk): Started userdb lookup
auth-master: conn unix:/var/run/dovecot/auth-userdb: Connecting
auth-master: conn unix:/var/run/dovecot/auth-userdb (pid=1636,uid=0): 
Client connected (fd=16)
auth-master: userdb lookup(user at sharer.dk): auth USER input: 
user at sharer.dk uid=120 gid=129 home=/data/mail/sharer.dk/user
auth-master: userdb lookup(user at sharer.dk): Finished userdb lookup 
(username=user at sharer.dk uid=120 gid=129 home=/data/mail/sharer.dk/user)
Namespace Shared/: Using permissions from : mode=0700 gid=default

-- New, non-working log end --


and here from the old, working installation


-- Old, working log start --

Namespace : type=shared, prefix=Shared/%u/, sep=/, inbox=no, hidden=no, 
list=children, subscriptions=no 
location=maildir:/data/mail/%d/%n/maildir:INDEX=~/Maildir/shared/%u:INDEXPVT=~/Maildir/shared/%u
shared: root=/var/run/dovecot, index=, indexpvt=, control=, inbox=, alt=
acl: initializing backend with data: vfile
acl: acl username = user at reader.dk
acl: owner = 0
acl vfile: Global ACLs disabled

auth input: user at sharer.dk uid=118 gid=126 
home=/data/mail/sharer.dk/user namespace/default/inbox=yes
maildir++: root=/data/mail/sharer.dk/user/maildir, 
index=/data/mail/sharer.dk/user/Maildir/shared/user at sharer.dk, 
indexpvt=/data/mail/sharer.dk/user/Maildir/shared/user at sharer.dk, 
control=, inbox=/data/mail/sharer.dk/user/maildir, alt=
acl: initializing backend with data: vfile
acl: acl username = user at sharer.dk
acl: owner = 1
acl vfile: Global ACLs disabled
maildir++: root=/data/mail/sharer.dk/user/maildir, 
index=/data/mail/reader.dk/user/Maildir/shared/user at sharer.dk, 
indexpvt=/data/mail/reader.dk/user/Maildir/shared/user at sharer.dk, 
control=, inbox=/data/mail/sharer.dk/user/maildir, alt=
acl: initializing backend with data: vfile
acl: acl username = user at reader.dk
acl: owner = 0
acl vfile: Global ACLs disabled
acl vfile: reading file /data/mail/sharer.dk/user/maildir/dovecot-acl
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Junk
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Trash
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Sent
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Drafts
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Junk
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Trash
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Sent
acl: Mailbox not in dovecot-acl-list: Shared/user at sharer.dk/Drafts

-- Old, working log end --


The two logs are quite different, the new one seems to do user lookups 
via the auth socket, which the old one does not, and then just stops 
there.

I'm not going to try and speculate more, I hope that someone here can 
see something from the logs, as I simply do not know how to fix this 
problem.


--
Peter Reinhold


More information about the dovecot mailing list