Hi, you can use INDEX=/writable/path/%u in your mail_location setting to define location for the required index data when importing. Also possibly you would need to define writable location for CONTROL and VOLATILEDIR.
see https://wiki.dovecot.org/MailLocation <https://wiki.dovecot.org/MailLocation> Sami > On 14 Jan 2019, at 11.23, hby <h...@hby.hu> wrote: > > Dovecot version: 2.2.34 > > doveadm import tries to call open() on the source indexes/logs of mdbox data, > but even if it should work as it is just a read-related call, it fails on > read-only filesystems. > > The main use case for read-only filesystem is restoring from backup: the > massive deduplicated backup data is exposed using FUSE. For deduplication to > work efficiently, we have to backup the whole mail storage and thus the only > way to handle the restore to mount the whole data. > > I would like to ask for some proper solution for this problem. > > Suggestions: first, the doveadm import should never modify the indexes, and > second: the open() calls should respect the read-only filesystem and should > fall back to "r" flag when using open. > The problem goes further when using SIS (which goes beyond multiple > terrabytes). > > The only workaround currently is to export the whole mdbox data to a > writeable storage, and parametrize the import command to use that and the > mounted SIS data separately for import...which is just problematic, ugly and > error prune. > > Thank you for the continous work on dovecot, I hope you get this feedback in > a good way.