невозможно стартануть exim  или если не отправляются письма с сайтов с помощью функции phpmail().

Thank you for reading this post, don't forget to subscribe!

Если невоз­мож­но стар­та­нуть exim  или если не отправ­ля­ют­ся пись­ма с сай­тов с помо­щью функ­ции phpmail().

Боль­шин­ство php-скрип­тов, исполь­зу­ют стан­дарт­ную функ­цию от php, для отправ­ки поч­то­вых сооб­ще­ний — phpmail(). И быва­ют слу­чаи, когда она не рабо­та­ет, исклю­ча­ем баналь­ные при­чи­ны типа — добав­ле­ние функ­ции в disabled_functions, либо бло­ки­ров­ку поль­зо­ва­те­ля в exim.conf и прочее.

Симп­то­мы — пись­мо вро­де бы ухо­дит, но нигде о нем ника­ких упо­ми­на­ний нет, в том чис­ле в логе exim-а.

При­чи­на — кри­вые пра­ва на бинар­ник само­го exim-а, а имен­но, отсут­ствие suid-бита на нем, пото­му как phpmail запус­ка­ет­ся из под про­цес­са веб-сер­ве­ра, либо конеч­но­го систем­но­го поль­зо­ва­те­ля, и пыта­ет­ся обра­тить­ся к /usr/sbin/exim для отправ­ки, но если suid не сто­ит, ему не хва­та­ет прав соответственно.

Исправ­ле­ние простое:
# chmod 4655 /usr/sbin/exim

____________________________________
ошибка:

/etc/init.d/exim status

exim dead but pid file exists

реше­ние:
rm -rf /var/lock/subsys/exim
rm -rf /var/run/exim.pid

смот­рим ошибки
exim -bd -d+all
в моём слу­чае про­бле­ма была с недо­ступ­но­стью логов, для записи:

chown -R exim:exim /var/log/exim/
chmod 755 /var/log/

find . -type d -exec chmod 755 {} \;

find . -type f -exec chmod 644 {} \;

после рестар­ту­ем
/etc/init.d/exim restart

____________________________________