Проблеми з розташуванням об'єктного методу Spamassassin після перезавантаження


11

Після того, як сьогодні вранці спам-массир був перезапущений щоденним клопотом, він затоплює системний журнал із такими помилками:

Feb  9 09:24:26 mail spamd[8766]: spamd: got connection over /var/run/spamd.socket
Feb  9 09:24:26 mail spamd[8766]: spamd: setuid to Debian-exim succeeded
Feb  9 09:24:26 mail spamd[8766]: spamd: checking message <004c01d0444a$01d5a905$d690a59f@kiffyv> for Debian-exim:106
Feb  9 09:24:26 mail spamd[8766]: rules: failed to run T_SPF_HELO_PERMERROR test, skipping:
Feb  9 09:24:26 mail spamd[8766]:  (Can't locate object method "check_for_spf_helo_permerror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 19.
Feb  9 09:24:26 mail spamd[8766]: )
Feb  9 09:24:28 mail spamd[8766]: rules: failed to run T_SPF_TEMPERROR test, skipping:
Feb  9 09:24:28 mail spamd[8766]:  (Can't locate object method "check_for_spf_temperror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 614.
Feb  9 09:24:28 mail spamd[8766]: )
Feb  9 09:24:28 mail spamd[8766]: rules: failed to run T_SPF_PERMERROR test, skipping:
Feb  9 09:24:28 mail spamd[8766]:  (Can't locate object method "check_for_spf_permerror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 784.
Feb  9 09:24:28 mail spamd[8766]: )
Feb  9 09:24:28 mail spamd[8766]: rules: failed to run T_SPF_HELO_TEMPERROR test, skipping:
Feb  9 09:24:28 mail spamd[8766]:  (Can't locate object method "check_for_spf_helo_temperror" via package "Mail: [...]:SpamAssassin::PerMsgStatus" at (eval 1169) line 1129.
Feb  9 09:24:28 mail spamd[8766]: )
Feb  9 09:24:29 mail spamd[8766]: spamd: identified spam (26.6/5.0) for Debian-exim:106 in 3.1 seconds, 821 bytes.
Feb  9 09:24:29 mail spamd[8766]: spamd: result: Y 26 - AXB_XMAILER_MIMEOLE_OL_024C2,BAYES_99,BAYES_999,DOS_OE_TO_MX,NAME_EMAIL_DIFF,RAZOR2_CF_RANGE_51_100,RAZOR2_CF_RANGE_E8_51_100,RAZOR2_CHECK,RCVD_IN_BRBL_LASTEXT,RCVD_IN_PSBL,RCV
Feb  9 09:24:30 mail spamd[8759]: prefork: child states: II

Я вже перевірив, чи були без нагляду оновлення. Також я перевірив Mail :: SpamAssassin :: PerMsgStatus через CPAN, але він уже встановлений. ОС є Ubuntu Server 12.04.5 LTS і оновлень, що очікують, немає. Як я можу вирішити цю помилку?


2
Ось "я теж". Це почало відбуватися після sa-updateпробігу, тому, ймовірно, було випущено нові перевірки, які, можливо, не повинні були.
wurtel

1
Мабуть, ці правила були додані у svn.apache.org/r1656028 30 січня 2015 року, тому spamassassinдля інтерпретації цих правил знадобиться новіше ( Mail::SpamAssassin::Plugin::SPFмодифіковане в тому самому комітеті). Імовірно, нові правила уникли занадто рано, і це незабаром буде скасовано. Це було раніше.
wurtel

3
Ще одне "мені теж" тут. Debian 7 wheezy 64 bit, помилка з’явилася сьогодні вранці. Ми сподіваємось на виправлення найближчим часом!
lucaferrario

Радий почути, що я не єдиний. Я сподіваюся, що це скоро буде повернено.
devnull

Для Debian Wheezy автоматичне оновлення вирішило проблему сьогодні вранці, переписавши правила в /var/lib/spamassassin/.../.../25-spf.cf.
mivk

Відповіді:


6

Можливо, простіше зайти в каталог оновлень (щось подібне /var/lib/spamassassin/3.003002/updates_spamassassin_org) і прокоментувати всі рядки, що містять T_SPF_PERMERRORабо T_SPF_TEMPERROR, як:

# header T_SPF_PERMERROR         eval:check_for_spf_permerror()

тощо замість оновлення чи вишні вибору змін у потоці. Якщо ви використовуєте автоматичні оновлення, можливо, ви хочете скористатися посібником, поки вони не зрозуміють свою проблему (що, здається, ще не так).


Це чудово. Я щойно оновив файл і прокоментував усі рядки, що викликають помилки, згадані в моїх журналах. Це здається хорошим тимчасовим виправленням!
devnull

Зміни у файлі 25_spf.cf будуть перезаписані, здається, регулярні оновлення спам-масіна.
Майкл Францл

Так звичайно. Але це робоче тимчасове рішення, яке не потребує встановлення будь-яких непідтримуваних версій пакета.
devnull

1

На Debian Wheezy для мене працює наступне:

В

/etc/spamassassin/init.pre

прокоментуйте плагін SPF

# SPF - perform SPF verification.
#
#loadplugin Mail::SpamAssassin::Plugin::SPF

Після цього завдання оновлення знову працюватиме без помилок.


Це також відключить існуючі, працюючі правила T_SPF_ *, такі як T_SPF_PASS і T_SPF_FAIL.
Бойд Стівен Сміт-молодший

0

Ви можете скопіювати останній SPF.pm в / usr / share / perl5 / Mail / SpamAssassin / Plugin за умови використання 3.4. Не забудьте про резервне копіювання оригінального файлу.


Дякую за Вашу відповідь, але оскільки я чітко встановив посилання spamassassin 3.3.2-2ubuntu1.
devnull

Ви все ще можете спробувати встановити нову версію SPF.pm
Szépe Viktor

Оскільки SA написана на Perl можна встановити packages.ubuntu.com/trusty/spamassassin
Szépe Віктору

Wheezy - це 3.3.2-5 + deb7u2, тому, ймовірно, і для мене це не піддається.
Бойд Стівен Сміт-молодший

0

Просто встановіть підтримуваний spamassassin. Додайте це до /etc/apt/sources.list.d/debian-wheezy-backports.list:

deb http://ftp.nl.debian.org/debian/ wheezy-backports main contrib non-free
deb-src http://ftp.nl.debian.org/debian/ wheezy-backports main contrib non-free

і біжи:

$ apt-get install -t wheezy-backports spamassassin 
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.