I suspect you need an entry in /etc/tmpfiles.d so that directory gets
created at boot time.

Google tmpfiles.d or see this redhat blog page:
https://developers.redhat.com/blog/2016/09/20/managing-temporary-files-with-systemd-tmpfiles-on-rhel7/


On Mon, 27 Nov 2017, Colony.three wrote:

I have fought with this for days, and finally had to hotwire it.  But I'd
like to understand what's going on.

RHEL7 with spamassassin 3.4.0 and  spamass-milter-postfix 0.4.0.

/etc/sysconfig/spamassassin
SPAMDOPTIONS="--daemonize --create-prefs --max-children=5 --username=spamd
--groupname=spamd --socketpath=/run/spamassassin/spamd.sock
--socketowner=spamd --socketgroup=spamd --socketmode=660 --ipv4-only"


spamassassin.service:
[Unit]
Description=Spamassassin daemon
After=syslog.target network.target
PartOf=spamassassin-update.service
[Service]
Type=forking
PIDFile=/run/spamd.pid
EnvironmentFile=-/etc/sysconfig/spamassassin
ExecStartPre=-/sbin/portrelease spamd
ExecStart=/usr/bin/spamd --pidfile /run/spamd.pid $SPAMDOPTIONS
StandardOutput=syslog
StandardError=syslog
Restart=always
[Install]
WantedBy=multi-user.target

It simply would not create /run/spamassassin directory on boot.  It is
supposed to create it automatically like clamd does, since /run is wiped at
each boot.  To make it work I finally had to add:
ExecStartPre=/usr/bin/mkdir /run/spamassassin
ExecStartPre=/bin/chown -R spamd:spamd /run/spamassassin

SELinux is set to Permissive, so that's not it.  Any ideas?







--
Public key #7BBC68D9 at            |                 Shane Williams
http://pgp.mit.edu/                |      System Admin - UT CompSci
=----------------------------------+-------------------------------
All syllogisms contain three lines |              sha...@shanew.net
Therefore this is not a syllogism  | www.ischool.utexas.edu/~shanew

Reply via email to