I'm running dovecot --version 2.3.11.3 (502c39af9)
I'm setting up folder sharing. Following https://wiki.dovecot.org/SharedMailboxes/Shared I've configured a folder to be shared, but it's not seen/accessible in the target user's Mail folder tree. My config includes, mail_plugins = virtual acl protocol imap { mail_plugins = $mail_plugins imap_acl imap_quota mail_log notify quota imap_sieve ... } imap_capability = +SPECIAL-USE namespace inbox { inbox = yes type = private separator = / prefix = hidden = no list = yes subscriptions = yes ... } namespace shared { type = shared separator = / prefix = shared/%%u/ location = maildir:/srv/vmail/%%d/%%n/Maildir:INDEXPVT=/var/vmail-index/shared/%%u hidden = no list = yes subscriptions = yes } plugin { acl_globals_only = no acl = vfile acl = vfile:/etc/dovecot/dovecot-acl acl_shared_dict = file:/srv/vmail/%d/shared-mailboxes.db } I've two users us...@example.com us...@example.com I've shared a folder, 'SHARED' (containing files & subfolders), from us...@example.com's folder hierarchy to us...@example.com, doveadm acl set -u us...@example.com SHARED user=us...@example.com lookup read write write-seen write-deleted insert create checking cat /srv/vmail/virtual/dovecot-acl-list (empty) cat /srv/vmail/example.com/user2/Maildir/dovecot-acl-list (empty) cat /srv/vmail/example.com/user1/Maildir/SHARED/dovecot-acl user=us...@example.com kilrwts cat /srv/vmail/example.com/user1/Maildir/dovecot-acl-list 1602040901 SHARED Logging into Roundcube as User: us...@example.com I do NOT see the 'shared' folder in the Mail window. If I nav to Settings -> Folders, I *DO* see the 'shared' folder, but it's unchecked -- and there are no subfolders displayed beneath it. on-click of the 'shared' folder, in dovecot logs: 2020-10-06 20:31:27 imap-login: Info: Login: user=<us...@example.com>, method=PLAIN, rip=10.0.1.50, lip=10.0.1.50, mpid=7673, TLS ==> /var/log/dovecot/dovecot-debug.log <== 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Loading modules from directory: /usr/lib64/dovecot 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib01_acl_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib02_imap_acl_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib10_quota_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib11_imap_quota_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib15_notify_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib20_mail_log_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib20_virtual_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Module loaded: /usr/lib64/dovecot/lib95_imap_sieve_plugin.so 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Added userdb setting: plugin/quota=dirsize:storage=10240000 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Effective uid=5000, gid=5000, home=/srv/vmail/example.com/user2/Maildir 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota root: name=storage=10240000 backend=dirsize args= 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota rule: root=storage=10240000 mailbox=* bytes=10737418240 messages=0 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota rule: root=storage=10240000 mailbox=Trash bytes=+1073741824 (10%) messages=0 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota rule: root=storage=10240000 mailbox=Junk ignored 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=10737418240 (100%) messages=0 reverse=no command=quota-warning 100 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=10200547328 (95%) messages=0 reverse=no command=quota-warning 95 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=9663676416 (90%) messages=0 reverse=no command=quota-warning 90 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=9126805504 (85%) messages=0 reverse=no command=quota-warning 85 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota grace: root=storage=10240000 bytes=52428800 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Namespace inbox: type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/srv/vmail/example.com/user2/Maildir:CONTROL=/srv/vmail/example.com/user2/_control:INDEX=/var/vmail-index/example.com/user2:LAYOUT=fs:UTF-8 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: fs: root=/srv/vmail/example.com/user2/Maildir, index=/var/vmail-index/example.com/user2, indexpvt=, control=/srv/vmail/example.com/user2/_control, inbox=/srv/vmail/example.com/user2/Maildir, alt= 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: initializing backend with data: vfile:/home/vmail/conf.d/example.com/acls:cache_secs=300 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: acl username = us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: owner = 1 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: Global ACL legacy directory: /home/vmail/conf.d/example.com/acls 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Namespace shared: type=shared, prefix=shared/%u/, sep=/, inbox=no, hidden=no, list=yes, subscriptions=no location=maildir:/srv/vmail/%d/%n/Maildir:INDEXPVT=/var/vmail-index/shared/%u 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: shared: root=/run/dovecot/, index=, indexpvt=, control=, inbox=, alt= 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: initializing backend with data: vfile:/home/vmail/conf.d/example.com/acls:cache_secs=300 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: acl username = us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: owner = 0 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: Global ACL legacy directory: /home/vmail/conf.d/example.com/acls 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Namespace virtual: type=private, prefix=virtual/, sep=/, inbox=no, hidden=no, list=yes, subscriptions=yes location=virtual:/srv/vmail/virtual:INDEX=MEMORY 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: fs: root=/srv/vmail/virtual, index=, indexpvt=, control=, inbox=, alt= 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: initializing backend with data: vfile:/home/vmail/conf.d/example.com/acls:cache_secs=300 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: acl username = us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: owner = 1 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: Global ACL legacy directory: /home/vmail/conf.d/example.com/acls 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: quota: quota_over_flag check: quota_over_script unset - skipping 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/ not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/Drafts not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /srv/vmail/example.com/user2/Maildir/Drafts/dovecot-acl not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/Sent not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /srv/vmail/example.com/user2/Maildir/Sent/dovecot-acl not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/Junk not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /srv/vmail/example.com/user2/Maildir/Junk/dovecot-acl not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/Trash not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /srv/vmail/example.com/user2/Maildir/Trash/dovecot-acl not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota root: name=storage=10240000 backend=dirsize args= 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota rule: root=storage=10240000 mailbox=* bytes=10737418240 messages=0 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota rule: root=storage=10240000 mailbox=Trash bytes=+1073741824 (10%) messages=0 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota rule: root=storage=10240000 mailbox=Junk ignored 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=10737418240 (100%) messages=0 reverse=no command=quota-warning 100 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=10200547328 (95%) messages=0 reverse=no command=quota-warning 95 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=9663676416 (90%) messages=0 reverse=no command=quota-warning 90 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota warning: bytes=9126805504 (85%) messages=0 reverse=no command=quota-warning 85 us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Quota grace: root=storage=10240000 bytes=52428800 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: maildir++: root=/srv/vmail/example.com/user1/Maildir, index=, indexpvt=/var/vmail-index/shared/us...@example.com, control=, inbox=/srv/vmail/example.com/user1/Maildir, alt= 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: initializing backend with data: vfile:/home/vmail/conf.d/example.com/acls:cache_secs=300 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: acl username = us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: owner = 1 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: Global ACL legacy directory: /home/vmail/conf.d/example.com/acls 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: quota: quota_over_flag check: quota_over_script unset - skipping 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: maildir++: root=/srv/vmail/example.com/user1/Maildir, index=, indexpvt=/var/vmail-index/shared/us...@example.com, control=, inbox=/srv/vmail/example.com/user1/Maildir, alt= 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: initializing backend with data: vfile:/home/vmail/conf.d/example.com/acls:cache_secs=300 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: acl username = us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: owner = 0 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: Global ACL legacy directory: /home/vmail/conf.d/example.com/acls 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/ not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/shared/us...@example.com not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /srv/vmail/example.com/user1/Maildir/dovecot-acl not found 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl: No lookup right to mailbox: shared/us...@example.com 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: Namespace shared/: Using permissions from : mode=0700 gid=default 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Debug: acl vfile: file /home/vmail/conf.d/example.com/acls/ not found ==> /var/log/dovecot/dovecot-info.log <== 2020-10-06 20:31:27 imap(us...@example.com)<6m3LWQyx8LesHgsy>: Info: Logged out in=84 out=732 deleted=0 expunged=0 trashed=0 hdr_count=0 hdr_bytes=0 body_count=0 body_bytes=0 NO "error", simply no view of 'SHARED', or the files/folder in it, seen under 'shared' in @ user2's account. What's missing/incorrect about that^ config, in order to see/access the shared folder, 'SHARED' in @ user2's account ? If you have a working config, please share.