how can I check (and change) the owner of a mailbox ?

Chentao Credungtao chentaocredungtao at
Tue May 15 10:58:57 EDT 2018

Hi again,

Almost there...
I found out that replacing in each cyrus.header file the ACL line "john.doe" by "john.doe at" did the trick ! Now "john.doe at" is the mailbox owner, and not "john.doe" anymore.

Everything works fine, except that now my log file is cluttered with :
Header CRC mismatch for mailbox!user.john.doe

My questions :
- is there a way (other than messing with cyrus.header) to modify a mailbox owner ?
- if not, is there a way to rebuild cyrus.index, so it can take into account the new cyrus.header's CRC ?


Message: 3
Date: Mon, 14 May 2018 22:00:53 +0100
From: Chentao Credungtao<chentaocredungtao at>
To:info-cyrus at
Subject: how can I check (and change) the owner of a mailbox ?
Message-ID:<235ebac8-d275-292e-8a6a-9f247fe51561 at>
Content-Type: text/plain; charset=utf-8; format=flowed


How can I check who the mailbox owner is ? How can I change it ? I'd
like to change owner john.doe tojohn.doe at

Here's why :

I'm currently testing the migration of a single-domain Cyrus IMAP server
to a multi-domain one. I'm doing the migration on the filesystem level,
copying files from the old to the new server.

It works fine, except for the mailbox owner, it seems to be the old one,
without the e-mail domain.

Here is what I did :

- 1/? First I created user/john.doe on domain on the new
server,? using autocreate (so it created

- 2/ The I checked this mailbox's ACLs :
$ cyradm --usercyrus at  localhost
localhost> lam user/john.doe
  ?john.doe at  lrswipkxtecdan

- 3/ Then I stopped cyrus

- 4/ Then I copied/var/spool/cyrus/mail/j/john.doe/*? from the old
(single domain) server to
/var/spool/cyrus/mail/domain/e/ on the new
(multi-domain) server

- 5/ Then a little reconstruct : su -c "/usr/lib/cyrus/bin/reconstruct
-r -fuser/john.doe at" cyrus -s /bin/bash

- 6/ Starting cyrus

- 7/ Checking ACLs :
$ cyradm --usercyrus at  localhost
localhost> lam user/john.doe
  ? john.doe lrswipkxtecda

- 8/ OK, so now john.doe (and notjohn.doe at  like before)
seems to be the owner of user/john.doe

- 9/ When I try to log in (with my webmail for example), it doesn't
work. From the logfiles :
May 14 21:40:04 sogod [1596]: [ERROR]
<0x0x5648006b5480[NGImap4Connection]> could not select URL:
imaps:// {RawResponse =
"{ResponseResult = {description = \"Mailbox does not exist\"; result =
no; tagId = 6; }; }"; reason = "Mailbox does not exist"; result = 0; }

- 10/ Back to cyradm, and granting full rights tojohn.doe at  :
$ cyradm --usercyrus at  localhost
localhost> sam user/john.doe*john.doe at  lrswipkxtecdan

- 11/ OK, after that webmail works fine.

- 12/ Back to cyradm, where my ACLs now look like :
$ cyradm --usercyrus at  localhost
localhost> lam user/john.doe
  ? john.doe lrswipkxtecda
  ?john.doe at  lrswipkxtecdan

So, I though I don't need the john.doe ACL anymore, and tried to remove it :

localhost> dam user/john.doe john.doe

But I still have "lkxca" ACLs, which are the owner's implicit ACLs :

localhost> lam user/john.doe
john.doe at  lrswipkxtecdan
john.doe lkxca

So I guess after the migration the owner of the mailbox is john.doe, and
notjohn.doe at  like before the migration. How can I change
this ? How can I get rid of john.doe's ACLs ?



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Info-cyrus mailing list