You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by Jeff Rice <je...@jrice.me> on 2014/07/28 16:12:58 UTC

sa-update fails: permission denied on config directory

Hi,
I'm seeing an error when the cron job under Debian runs for SA 3.4.0.

I get this error from the cron job:

/etc/cron.daily/spamassassin:
config: no configuration text or files found! do you need to run 'sa-update'?
Timeout::_run: check: no loaded plugin implements 'check_main': cannot scan!
Check the necessary '.pre' files are in the config directory.
sa-update failed for unknown reasons


To investigate further, I ran su debian-spamd -c 'sa-update -D 
--gpghomedir /var/lib/spamassassin/sa-update-keys':
Jul 28 10:07:18.922 [30562] dbg: logger: adding facilities: all
Jul 28 10:07:18.922 [30562] dbg: logger: logging level is DBG
Jul 28 10:07:18.922 [30562] dbg: generic: SpamAssassin version 3.4.0
Jul 28 10:07:18.923 [30562] dbg: generic: Perl 5.014002, PREFIX=/usr, 
DEF_RULES_DIR=/usr/share/spamassassin, 
LOCAL_RULES_DIR=/etc/mail/spamassassin, 
LOCAL_STATE_DIR=/var/lib/spamassassin
Jul 28 10:07:18.923 [30562] dbg: config: timing enabled
Jul 28 10:07:18.923 [30562] dbg: config: score set 0 chosen.
Jul 28 10:07:18.928 [30562] dbg: generic: sa-update version svn1475932
Jul 28 10:07:18.928 [30562] dbg: generic: using update directory: 
/var/lib/spamassassin/3.004000
Jul 28 10:07:19.063 [30562] dbg: diag: perl platform: 5.014002 linux
Jul 28 10:07:19.063 [30562] dbg: diag: [...] module installed: 
Digest::SHA1, version 2.13
Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
HTML::Parser, version 3.71
Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: Net::DNS, 
version 0.77
Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
NetAddr::IP, version 4.075
Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
Time::HiRes, version 1.9726
Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
Archive::Tar, version 2.00
Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: IO::Zlib, 
version 1.10
Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
Digest::SHA1, version 2.13
Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
MIME::Base64, version 3.14
Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: DB_File, 
version 1.821
Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
Net::SMTP, version 2.34
Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
Mail::SPF, version v2.008
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: Geo::IP, 
version 1.43
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
Razor2::Client::Agent, version 2.84
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module not installed: 
IO::Socket::IP ('require' failed)
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
IO::Socket::INET6, version 2.69
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
IO::Socket::SSL, version 1.76
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
Compress::Zlib, version 2.064
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
Mail::DKIM, version 0.39
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: DBI, 
version 1.631
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
Getopt::Long, version 2.42
Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
LWP::UserAgent, version 6.04
Jul 28 10:07:19.067 [30562] dbg: diag: [...] module installed: 
HTTP::Date, version 6.02
Jul 28 10:07:19.067 [30562] dbg: diag: [...] module not installed: 
Encode::Detect ('require' failed)
Jul 28 10:07:19.067 [30562] dbg: diag: [...] module not installed: 
Net::Patricia ('require' failed)
Jul 28 10:07:19.068 [30562] dbg: gpg: Searching for 'gpg'
Jul 28 10:07:19.068 [30562] dbg: util: current PATH is: 
/usr/local/bin:/usr/bin:/bin:/usr/games
Jul 28 10:07:19.069 [30562] dbg: util: executable for gpg was found at 
/usr/bin/gpg
Jul 28 10:07:19.069 [30562] dbg: gpg: found /usr/bin/gpg
Jul 28 10:07:19.069 [30562] dbg: gpg: release trusted key id list: 
5E541DC959CB8BAC7C78DFDC4056A61A5244EC45 
0C2B1D7175B852C64B3CDC716C55397824F434CE
Jul 28 10:07:19.069 [30562] dbg: channel: attempting channel 
updates.spamassassin.org
Jul 28 10:07:19.070 [30562] dbg: channel: using existing directory 
/var/lib/spamassassin/3.004000/updates_spamassassin_org
Jul 28 10:07:19.070 [30562] dbg: channel: channel cf file 
/var/lib/spamassassin/3.004000/updates_spamassassin_org.cf
Jul 28 10:07:19.070 [30562] dbg: channel: channel pre file 
/var/lib/spamassassin/3.004000/updates_spamassassin_org.pre
Jul 28 10:07:19.070 [30562] dbg: channel: metadata version = 1613581, 
from file /var/lib/spamassassin/3.004000/updates_spamassassin_org.cf
Jul 28 10:07:19.093 [30562] dbg: dns: 0.4.3.updates.spamassassin.org => 
1613764, parsed as 1613764
Jul 28 10:07:19.093 [30562] dbg: channel: preparing temp directory for 
new channel
Jul 28 10:07:19.093 [30562] dbg: channel: created tmp directory 
/tmp/.spamassassin30562IqBrJ4tmp
Jul 28 10:07:19.093 [30562] dbg: generic: lint checking site pre files 
once before attempting channel updates
Jul 28 10:07:19.094 [30562] dbg: generic: SpamAssassin version 3.4.0
Jul 28 10:07:19.094 [30562] dbg: generic: Perl 5.014002, PREFIX=/usr, 
DEF_RULES_DIR=/usr/share/spamassassin, 
LOCAL_RULES_DIR=/etc/mail/spamassassin, 
LOCAL_STATE_DIR=/var/lib/spamassassin
Jul 28 10:07:19.094 [30562] dbg: config: timing enabled
Jul 28 10:07:19.095 [30562] dbg: config: score set 0 chosen.
Jul 28 10:07:19.096 [30562] dbg: ignore: using a test message to lint rules
Jul 28 10:07:19.096 [30562] dbg: config: using "/etc/mail/spamassassin" 
for site rules pre files
Jul 28 10:07:19.096 [30562] dbg: config: file or directory 
/etc/mail/spamassassin not accessible: Permission denied
Jul 28 10:07:19.096 [30562] dbg: config: using 
"/tmp/.spamassassin30562IqBrJ4tmp/doesnotexist" for sys rules pre files
Jul 28 10:07:19.096 [30562] dbg: config: using 
"/tmp/.spamassassin30562IqBrJ4tmp/doesnotexist" for default rules dir
Jul 28 10:07:19.097 [30562] dbg: config: using 
"/tmp/.spamassassin30562IqBrJ4tmp/doesnotexist/doesnotexist" for user 
prefs file
config: no configuration text or files found! do you need to run 
'sa-update'?
Jul 28 10:07:19.097 [30562] dbg: config: finish parsing
Jul 28 10:07:19.097 [30562] dbg: config: score set 0 chosen.
Jul 28 10:07:19.098 [30562] dbg: dns: EDNS, UDP payload size 4096
Jul 28 10:07:19.098 [30562] dbg: dns: servers obtained from Net::DNS : 
[72.249.191.254]:53, [206.123.113.254]:53, [66.199.228.254]:53
Jul 28 10:07:19.098 [30562] dbg: dns: nameservers set to 72.249.191.254, 
206.123.113.254, 66.199.228.254
Jul 28 10:07:19.099 [30562] dbg: dns: using socket module: IO::Socket::INET6
Jul 28 10:07:19.099 [30562] dbg: dns: is Net::DNS::Resolver available? yes
Jul 28 10:07:19.099 [30562] dbg: dns: Net::DNS version: 0.77
Jul 28 10:07:19.099 [30562] dbg: config: time limit 300.0 s
Jul 28 10:07:19.099 [30562] dbg: message: main message type: text/plain
Jul 28 10:07:19.099 [30562] dbg: message: ---- MIME PARSER START ----
Jul 28 10:07:19.100 [30562] dbg: message: parsing normal part
Jul 28 10:07:19.100 [30562] dbg: message: storing a body to memory
Jul 28 10:07:19.100 [30562] dbg: message: ---- MIME PARSER END ----
Jul 28 10:07:19.100 [30562] dbg: check: pms new, time limit in 299.999 s
Timeout::_run: check: no loaded plugin implements 'check_main': cannot scan!
Check the necessary '.pre' files are in the config directory.

It looks like the problem relates to the error that 
/etc/mail/spamassassin is not accessible.  That directory exists, and 
contains .pre files.  The executables spamd and spamassassin have no 
problem reading and writing from it.  I've set the group of that 
directory to debian-spamd, even set the directory and all contents to 
world rwx, and the error persists.  If I run sa-update as root, that 
works fine too.  Only when it is run as debian-spamd do I get the error.

Any ideas?

Jeff

Re: sa-update fails: permission denied on config directory

Posted by "Kevin A. McGrail" <KM...@PCCC.com>.
You have a permissions issue and there is a plugin needed to run things that by default is enabled in per files.  I would try disabling selinix and chmod 777 /etc/mail/spam assassin as a test.
Regards,
KAM

Jeff Rice <je...@jrice.me> wrote:

>Hi,
>I'm seeing an error when the cron job under Debian runs for SA 3.4.0.
>
>I get this error from the cron job:
>
>/etc/cron.daily/spamassassin:
>config: no configuration text or files found! do you need to run
>'sa-update'?
>Timeout::_run: check: no loaded plugin implements 'check_main': cannot
>scan!
>Check the necessary '.pre' files are in the config directory.
>sa-update failed for unknown reasons
>
>
>To investigate further, I ran su debian-spamd -c 'sa-update -D 
>--gpghomedir /var/lib/spamassassin/sa-update-keys':
>Jul 28 10:07:18.922 [30562] dbg: logger: adding facilities: all
>Jul 28 10:07:18.922 [30562] dbg: logger: logging level is DBG
>Jul 28 10:07:18.922 [30562] dbg: generic: SpamAssassin version 3.4.0
>Jul 28 10:07:18.923 [30562] dbg: generic: Perl 5.014002, PREFIX=/usr, 
>DEF_RULES_DIR=/usr/share/spamassassin, 
>LOCAL_RULES_DIR=/etc/mail/spamassassin, 
>LOCAL_STATE_DIR=/var/lib/spamassassin
>Jul 28 10:07:18.923 [30562] dbg: config: timing enabled
>Jul 28 10:07:18.923 [30562] dbg: config: score set 0 chosen.
>Jul 28 10:07:18.928 [30562] dbg: generic: sa-update version svn1475932
>Jul 28 10:07:18.928 [30562] dbg: generic: using update directory: 
>/var/lib/spamassassin/3.004000
>Jul 28 10:07:19.063 [30562] dbg: diag: perl platform: 5.014002 linux
>Jul 28 10:07:19.063 [30562] dbg: diag: [...] module installed: 
>Digest::SHA1, version 2.13
>Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
>HTML::Parser, version 3.71
>Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed:
>Net::DNS, 
>version 0.77
>Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
>NetAddr::IP, version 4.075
>Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
>Time::HiRes, version 1.9726
>Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed: 
>Archive::Tar, version 2.00
>Jul 28 10:07:19.064 [30562] dbg: diag: [...] module installed:
>IO::Zlib, 
>version 1.10
>Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
>Digest::SHA1, version 2.13
>Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
>MIME::Base64, version 3.14
>Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: DB_File,
>
>version 1.821
>Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
>Net::SMTP, version 2.34
>Jul 28 10:07:19.065 [30562] dbg: diag: [...] module installed: 
>Mail::SPF, version v2.008
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: Geo::IP,
>
>version 1.43
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
>Razor2::Client::Agent, version 2.84
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module not installed: 
>IO::Socket::IP ('require' failed)
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
>IO::Socket::INET6, version 2.69
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
>IO::Socket::SSL, version 1.76
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
>Compress::Zlib, version 2.064
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
>Mail::DKIM, version 0.39
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: DBI, 
>version 1.631
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
>Getopt::Long, version 2.42
>Jul 28 10:07:19.066 [30562] dbg: diag: [...] module installed: 
>LWP::UserAgent, version 6.04
>Jul 28 10:07:19.067 [30562] dbg: diag: [...] module installed: 
>HTTP::Date, version 6.02
>Jul 28 10:07:19.067 [30562] dbg: diag: [...] module not installed: 
>Encode::Detect ('require' failed)
>Jul 28 10:07:19.067 [30562] dbg: diag: [...] module not installed: 
>Net::Patricia ('require' failed)
>Jul 28 10:07:19.068 [30562] dbg: gpg: Searching for 'gpg'
>Jul 28 10:07:19.068 [30562] dbg: util: current PATH is: 
>/usr/local/bin:/usr/bin:/bin:/usr/games
>Jul 28 10:07:19.069 [30562] dbg: util: executable for gpg was found at 
>/usr/bin/gpg
>Jul 28 10:07:19.069 [30562] dbg: gpg: found /usr/bin/gpg
>Jul 28 10:07:19.069 [30562] dbg: gpg: release trusted key id list: 
>5E541DC959CB8BAC7C78DFDC4056A61A5244EC45 
>0C2B1D7175B852C64B3CDC716C55397824F434CE
>Jul 28 10:07:19.069 [30562] dbg: channel: attempting channel 
>updates.spamassassin.org
>Jul 28 10:07:19.070 [30562] dbg: channel: using existing directory 
>/var/lib/spamassassin/3.004000/updates_spamassassin_org
>Jul 28 10:07:19.070 [30562] dbg: channel: channel cf file 
>/var/lib/spamassassin/3.004000/updates_spamassassin_org.cf
>Jul 28 10:07:19.070 [30562] dbg: channel: channel pre file 
>/var/lib/spamassassin/3.004000/updates_spamassassin_org.pre
>Jul 28 10:07:19.070 [30562] dbg: channel: metadata version = 1613581, 
>from file /var/lib/spamassassin/3.004000/updates_spamassassin_org.cf
>Jul 28 10:07:19.093 [30562] dbg: dns: 0.4.3.updates.spamassassin.org =>
>
>1613764, parsed as 1613764
>Jul 28 10:07:19.093 [30562] dbg: channel: preparing temp directory for 
>new channel
>Jul 28 10:07:19.093 [30562] dbg: channel: created tmp directory 
>/tmp/.spamassassin30562IqBrJ4tmp
>Jul 28 10:07:19.093 [30562] dbg: generic: lint checking site pre files 
>once before attempting channel updates
>Jul 28 10:07:19.094 [30562] dbg: generic: SpamAssassin version 3.4.0
>Jul 28 10:07:19.094 [30562] dbg: generic: Perl 5.014002, PREFIX=/usr, 
>DEF_RULES_DIR=/usr/share/spamassassin, 
>LOCAL_RULES_DIR=/etc/mail/spamassassin, 
>LOCAL_STATE_DIR=/var/lib/spamassassin
>Jul 28 10:07:19.094 [30562] dbg: config: timing enabled
>Jul 28 10:07:19.095 [30562] dbg: config: score set 0 chosen.
>Jul 28 10:07:19.096 [30562] dbg: ignore: using a test message to lint
>rules
>Jul 28 10:07:19.096 [30562] dbg: config: using "/etc/mail/spamassassin"
>
>for site rules pre files
>Jul 28 10:07:19.096 [30562] dbg: config: file or directory 
>/etc/mail/spamassassin not accessible: Permission denied
>Jul 28 10:07:19.096 [30562] dbg: config: using 
>"/tmp/.spamassassin30562IqBrJ4tmp/doesnotexist" for sys rules pre files
>Jul 28 10:07:19.096 [30562] dbg: config: using 
>"/tmp/.spamassassin30562IqBrJ4tmp/doesnotexist" for default rules dir
>Jul 28 10:07:19.097 [30562] dbg: config: using 
>"/tmp/.spamassassin30562IqBrJ4tmp/doesnotexist/doesnotexist" for user 
>prefs file
>config: no configuration text or files found! do you need to run 
>'sa-update'?
>Jul 28 10:07:19.097 [30562] dbg: config: finish parsing
>Jul 28 10:07:19.097 [30562] dbg: config: score set 0 chosen.
>Jul 28 10:07:19.098 [30562] dbg: dns: EDNS, UDP payload size 4096
>Jul 28 10:07:19.098 [30562] dbg: dns: servers obtained from Net::DNS : 
>[72.249.191.254]:53, [206.123.113.254]:53, [66.199.228.254]:53
>Jul 28 10:07:19.098 [30562] dbg: dns: nameservers set to
>72.249.191.254, 
>206.123.113.254, 66.199.228.254
>Jul 28 10:07:19.099 [30562] dbg: dns: using socket module:
>IO::Socket::INET6
>Jul 28 10:07:19.099 [30562] dbg: dns: is Net::DNS::Resolver available?
>yes
>Jul 28 10:07:19.099 [30562] dbg: dns: Net::DNS version: 0.77
>Jul 28 10:07:19.099 [30562] dbg: config: time limit 300.0 s
>Jul 28 10:07:19.099 [30562] dbg: message: main message type: text/plain
>Jul 28 10:07:19.099 [30562] dbg: message: ---- MIME PARSER START ----
>Jul 28 10:07:19.100 [30562] dbg: message: parsing normal part
>Jul 28 10:07:19.100 [30562] dbg: message: storing a body to memory
>Jul 28 10:07:19.100 [30562] dbg: message: ---- MIME PARSER END ----
>Jul 28 10:07:19.100 [30562] dbg: check: pms new, time limit in 299.999
>s
>Timeout::_run: check: no loaded plugin implements 'check_main': cannot
>scan!
>Check the necessary '.pre' files are in the config directory.
>
>It looks like the problem relates to the error that 
>/etc/mail/spamassassin is not accessible.  That directory exists, and 
>contains .pre files.  The executables spamd and spamassassin have no 
>problem reading and writing from it.  I've set the group of that 
>directory to debian-spamd, even set the directory and all contents to 
>world rwx, and the error persists.  If I run sa-update as root, that 
>works fine too.  Only when it is run as debian-spamd do I get the
>error.
>
>Any ideas?
>
>Jeff