[Dovecot] Permission problem with LDA and dovecot 2.2.1

Christian Wiese christian.wiese at securepoint.de
Wed May 8 12:24:41 EEST 2013


Hi Tobi,

> my problem is not why /usr/local is used
> I choose this prefix intentionally so that I have the new dovecot 
> separeted from the "old" one from debian backports.    

As I tried to say in my mailing list post '/usr/local' is the right
choice to avoid conflicts with binary packages provided by your
favorite distribution.

> My problem is more: why does the lda search in /var/run when all the 
> rest of dovecot correctly uses /usr/local/var/run
> The problem is only the lda part. All other stuff from dovecot looks
> in the correct location (login, plugins etc)    
> I wait until debian has 2.2 dovecot in repo and then this symlink is
> not needed anymore ;-)    

It seems you didn't read my mail carefully ;)
You do not have to wait for debian providing a dovecot 2.2 binary
package.

To solve your "symlink issue" right now, you do not even have to
uninstall your current 2.2 installation, because you simply need to
reconfigure your source tree using exactly the same configure options
like before, only adding '--localstatedir=/var'.

So if you used something like './configure --prefix=/usr/local' you
simply need to run:
------%<-----------------------------------------------------------
./configure --prefix=/usr/local --localstatedir=/var'
------%<-----------------------------------------------------------

Of course you also need to run 'make' and before running 'make install'
you should remove your current '/var/run/dovecot' symlink.

After restarting your dovecot service everything should be fine without
the need to create that symlink.

That's all what needs to be done.

Cheers,
Chris

Am Tue, 7 May 2013 18:24:07 +0200
schrieb Christian Wiese <christian.wiese at securepoint.de>:

> Hi Tobi,
> 
> take a look at the output from 'configure --help'.
> The problem is the imo stupid default of '--localstatedir'.
> ----%<----------------------------------------------------------
> --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
> ----%<----------------------------------------------------------
> 
> Because you are obviously not specifying a prefix the default prefix
> '/usr/local' is used, thus your localstatedir is '/usr/local/var'.
> 
> When examining the output of 'configure --help' we will also find:
> ----%<----------------------------------------------------------
> --with-rundir=DIR       Runtime data directory
> (LOCALSTATEDIR/run/dovecot)
> ----%<----------------------------------------------------------
> 
> I guess now you see what your problem is.
> 
> AS you are compiling dovecot on your own (not using any prebuilt
> package) it is of course perfectly fine to use the default prefix
> (/usr/local), but you might want to simply specify
> '--localstatedir=/var' when running configure.
> Then there should be no need for you symlink ;)
> 
> Hope that helps.
> 
> Cheers,
> Chris
> 


More information about the dovecot mailing list