Setting up replication?

Timo Sirainen tss at iki.fi
Thu Apr 21 19:01:19 UTC 2016


On 21 Apr 2016, at 19:51, Knute Johnson <dovecot at knutejohnson.com> wrote:
> 
> On 4/21/2016 04:33, Aropalo Tommi wrote:
>>> I'm trying to set up replication between two servers and I've hit a
>>> snag.  I have two users and am using mbox files.  If anybody has a
>>> sample config file for a simple system like mine I would really be
>>> grateful to see it.
>>> Thanks,
>>> The error I'm getting is:
>>> Mar 23 14:07:31 knute2 dovecot: doveadm(192.168.3.100,nobody): Error:
>>> user nobody: Initialization failed: Namespace '':
>>> mkdir(/nonexistent/mail) failed: Permission denied (euid=65534(nobody)
>>> egid=65534(nogroup))
>>> Mar 23 14:07:31 knute2 dovecot: doveadm(192.168.3.100,nobody): Error:
>>> dsync-server: User init failed
>>> Mar 23 14:07:31 knute2 dovecot: doveadm(nobody): Error: sync: Failed >to
>>> start dsync-server command: 75
>>> knute at knute2:/etc/dovecot/conf.d $ sudo doveadm user '*'
>>> nobody
>>> knute
>>> penny
>> You can add to conf.d/10-mail.conf
>> 
>> first_valid_uid = 1000
>> last_valid_uid = 2000
>> 
>> You have nobody uid 65534 so make last_valid_uid less than you have in
>> your /etc/passwd. Same thing with the first_valid_uid just pick first
>> uid after users start in your /etc/passwd
>> 
>>> I don't know why the user 'nobody' shows up here?  nobody is in the
>>> /etc/passwd file but he has no group.
> 
> I really appreciate the response to my post as it is the only one I have gotten but that doesn't really solve the problem, in fact it generates even more errors:
> 
> Apr 21 09:44:19 knute5 dovecot: doveadm(nobody): Error: sync: Failed to start dsync-server command: 75
> Apr 21 09:44:34 knute5 dovecot: doveadm(216.240.58.140,nobody): Error: user nobody: Mail access for users with UID 65534 not permitted (see first_valid_uid in config file, uid from userdb lookup).
> Apr 21 09:44:34 knute5 dovecot: doveadm(216.240.58.140,nobody): Error: dsync-server: User init failed
> 
> Do you know if there is a guide somewhere on how to set up replication?  I would really like to get this to work.

Replication attempts to replicate all the users returned by userdb iteration. So you need to make sure that:

doveadm user '*'

doesn't return any extra users you don't want replicated, such has "nobody". Setting the first_valid_uid and last_valid_uid to exclude the unwanted users should have solved this problem (verify that the above command doesn't return "nobody"). I think the problem you have now is simply that replicator already remembered the "nobody" user and doesn't get rid of it automatically. So remove it with:

doveadm replicator remove nobody



More information about the dovecot mailing list