courier-authdaemon init script create /var/run/courier directory at start. courier-mta not. Solution is add this to courier-mta init script too, or start courier-mta after courier-authdaemon on boot.
--- courier-mta 2013-11-05 18:47:49.570983400 +0100 +++ courier-mta_new 2013-11-05 18:48:20.942638100 +0100 @@ -15,2 +15,3 @@ sbindir="${exec_prefix}/sbin" libexecdir="${prefix}/lib/courier" +rundir_courier="/var/run/courier" DAEMON=${sbindir}/esmtpd @@ -41,6 +42,11 @@ start) cd / + + if [ ! -d "$rundir_courier" ]; then + mkdir -m 0775 $rundir_courier + chown daemon:daemon $rundir_courier + fi # ensure proper permissions on /var/run/courier - chgrp daemon /var/run/courier - chmod g+rwx /var/run/courier + chgrp daemon $rundir_courier + chmod g+rwx $rundir_courier