By support at mars 18, 2008 09:33
Filed Under:
Får följande fel
bayes: bad permissions on journal, can't read: /var/lib/amavis/.spamassassin/bayes_journal
Trotts att jag fixade rättigheterna så nollställdes detta med jämna mellanrum
Det visade sig tillslut bero på att jag inte körde användaren amavis
/usr/sbin/amavisd-new-cronjob
1: #!/bin/sh
2:
3: # amavisd-new cronjob helper
4: #
5: # Run it as root or as the amavis user
6: #
7: # First parameter specifies which cronjob routine to run:
8: # sa-sync: spamassassin fast sync
9: # sa-clean: spamassassin cleanup
10:
11: test -e /usr/bin/sa-learn || exit 0
12: test -e /usr/sbin/amavisd-new || exit 0
13:
14: SUUSER="amavis"
15: unset IFS
16:
17: set -e
18: umask 022
19:
20: # WATCH OUT FOR PROPER QUOTING LEVEL WHEN CALLING THIS!
21: do_amavis_cmd() {
22: if [ "$(id -u -n)" != "${SUUSER}" ]; then
23: exec /bin/su -s /bin/sh - "${SUUSER}" -c "$*"
24: else
25: # to get the same quoting level as the su path
26: eval exec "$*"
27: fi
28: }
29:
30: case $1 in
31: sa-sync)
32: do_amavis_cmd "/usr/bin/sa-learn --sync" '>/dev/null'
33: ;;
34: sa-clean)
35: do_amavis_cmd "/usr/bin/sa-learn --sync --force-expire" '>/dev/null'
36: ;;
37: *)
38: echo "$0: unknown cron routine $1" >&2
39: exit 1
40: ;;
41: esac
42:
43: exit 0
Man kan även se variablen umask 022 vilket torde innebära att den heller inte bryr sig om
bayes_file_mode 0777
Från spamassassin konfigurationen.
Till slut fick jag kommentera bort körningen i /etc/cron.daily/amavisd-new
samt lägga till
17 * * * * virtual test -e /usr/sbin/amavisd-new-cronjob && exec /usr/sbin/amavisd-new-cronjob sa-clean
i /etc/crontab
med SUUSER="virtual" i
/usr/sbin/amavisd-new-cronjob
Måste finnas ett bättre sätt, men jag kom ej på något.
63c42cd1-c02a-481c-a8ab-04dcd390dff8|0|.0
Tags: