このスレッドは解決済です(未解決に戻す場合はこちら)
<<戻る

spamassassin-learnでエラー検出 このメッセージに返信する
日時: 2009/05/31 11:58
名前: よっしー
URL: https://takao-y.net/~takao/fswiki/wiki.cgi
こんにちは、お世話になります。

掲題の件、メールサーバーでウィルス&スパムチェック(sendmail+Clam AntiVirus+SpamAssassin)
及びOpenSSH+Chrootをこのサイト通りに64ビット版CentOS 5.3に導入しています。

つい先日の上記システム構築後から、/etc/cron.daily/spamassassin-learnから毎日メールで
下記エラーが吐き出されるようになりました。

bayes: locker: safe_lock: cannot create tmp lockfile /home/takao64/.//.spamassassin/bayes.lock.server64.takao-y.net.29744 for /home/takao64/.//.spamassassin/bayes.lock: No such file or directory
bayes: expire_old_tokens: locker: safe_lock: cannot create tmp lockfile /home/takao64/.//.spamassassin/bayes.lock.server64.takao-y.net.29748 for /home/takao64/.//.spamassassin/bayes.lock: No such file or directory

(以下、全てのChrootユーザー分で同様のエラーが出ています。)

OpenSSHは最新版を入れているので、おそらくこのサイト掲載のspamassassin-learnの
スクリプトが作成された時点とでChrootの仕組みが若干変わったせいではないかと
考えていますが、どこをどう修正すれば良いでしょうか?ご教授頂ければ幸いです。

宜しくお願い致します。

以上

記事編集 編集
Re: spamassassin-learnでエラー検出 このメッセージに返信する
日時: 2009/06/02 08:27
名前: ZED
URL:
spamassassin-learnを
choorootユーザー用に作り替えたらどうでしょう?

各ユーザーで入って勉強させてるから、choorootユーザーのrootフォルダーが変わってるだけの様な気がします。
記事編集 編集
Re: spamassassin-learnでエラー検出 このメッセージに返信する
日時: 2009/06/02 20:12
名前: よっしー
URL: https://takao-y.net/~takao/fswiki/wiki.cgi
こんばんは、お世話になります。

ZEDさん>
レス有難う御座います。

戴いたアドバイスを元に早速下記の通りスクリプトを改訂してみましたが
どうもまだうまく行きません・・・。(;_;)

#!/bin/bash

PATH=/usr/bin:/bin

for user in `ls /home/`
do
# 正常メール
hammail=/home/$user/Maildir/cur

# 正常メール学習
if [ -d "$hammail" ]; then
# 正常メールをSpamAssassinに学習させる
su $user -s "/home/$user/bin/bash" -c "sa-learn --ham $hammail | \
logger -p mail.info -t 'sa-learn for $user'"
fi

# スパムメール
spammail=/home/$user/Maildir/.Spam/cur

# スパムメール学習
if [ -d "$spammail" ]; then
# スパムメールをSpamAssassinに学習させる
su $user -s "/home/$user/bin/bash" -c "sa-learn --spam $spammail | \
logger -p mail.info -t 'sa-learn for $user'"
fi
done

宜しくお願い致します。

以上
記事編集 編集
Re: spamassassin-learnでエラー検出 このメッセージに返信する
日時: 2009/06/02 22:03
名前: ZED
URL:

chrootユーザーでは、home/user以上にはいけませんよね?
なので、userでログインしている以上はねられます。
で、rootで実行させちゃえば大丈夫じゃないでしょうか??
$user から ROOTですね。

本来、chrootユーザーのメールは別ディリクトリーに作るべき何ですけどね。

記事編集 編集
Re: spamassassin-learnでエラー検出 このメッセージに返信する
日時: 2009/06/02 23:28
名前: よっしー
URL: https://takao-y.net/~takao/fswiki/wiki.cgi
こんばんは、お世話になります。

ZEDさん>
度々返信頂いて有難う御座います。

上記の件、chrootの仕組みの勉強不足でした。(^^;)
仰る通り、スクリプトの内容を下記のように変更、
早速実行してみたところエラーは出なくなりました。(^o^)

#!/bin/bash

PATH=/usr/bin:/bin

for user in `ls /home/`
do
# 正常メール
hammail=/home/$user/Maildir/cur

# 正常メール学習
if [ -d "$hammail" ]; then
# 正常メールをSpamAssassinに学習させる
su root -s "/bin/bash" -c "sa-learn --ham $hammail | \
logger -p mail.info -t 'sa-learn for $user'"
fi

# スパムメール
spammail=/home/$user/Maildir/.Spam/cur

# スパムメール学習
if [ -d "$spammail" ]; then
# スパムメールをSpamAssassinに学習させる
su root -s "/bin/bash" -c "sa-learn --spam $spammail | \
logger -p mail.info -t 'sa-learn for $user'"
fi
done

後は今晩のcron.dailyの実行結果を見て明日のLogWatchメールに何も
該当エラーが記載されていなければ解決済みとさせて頂きます。

宜しくお願い致します。

以上
記事編集 編集
Re: spamassassin-learnでエラー検出 このメッセージに返信する
日時: 2009/06/03 10:02
名前: よっしー
URL: https://takao-y.net/~takao/fswiki/wiki.cgi
お早う御座います、お世話になります。

上記の件、無事解決しましたのでスレッドを閉じさせて頂きます。
有難う御座いました。

宜しくお願い致します。

以上
記事編集 編集
Re: spamassassin-learnでエラー検出 このメッセージに返信する
日時: 2016/10/13(Thu) 10:37
名前: 松木
URL:
同じ現象になり、こちらを見つけましたが・・・
このスクリプトだと、rootの学習になって、
各個人の学習にはならないと思いますが
いかがでしょうか?
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -