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.

Reply via email to