LogWatch 7.6 メールが来ない(解決)

LogWatchの7.6をインストールしたのですが,cron.dailyで飛ばしているlogwatchからメールが来ません.

ちゃんと,パッケージ内にある “README” の通りにしたのですが,結論的にはそれが間違いでした.

“README” には,

ln -s /usr/share/logwatch/scripts/logwatch.pl /etc/cron.daily/0logwatch

とするように書いてありその通りにしていましたが,これだと/etc/logwatch/conf/logwatch.confは空なので,/usr/share/logwatch/default.conf のまま,logwatch.plが実行されます.それではOutputはstdoutになってますから,いくら待ってもメールは来ません.

LogWatch 7.4.xでちゃんとメールが来ていた旧システムの設定を調べたところ,/etc/cron.daily/0logwatchはsymlinkではなくて,"--output=mail"というオプションを付けてlogwatch.plを実行するscriptになってます.

このスクリプトは配布パッケージのscheduler内のlogwatch.cronです.特に “README” 内では何も触れてないです😓

もちろん,/etc/logwatch/conf/logwatch.confに,

output=mail

と書く方法もありますが,これだとテストなどで手動でlogwatch(.pl)を動かす度にメールが送られて,ややスマートさに欠けます.

とはいえ,LogWatchからちゃんとメールが来るようになったら手動でlogwatchを起動する必要性も低いので,上記の設定をした上で,手で起動する時は,

--output=stdout

というオプションを付けてlogwatchを動かせば良いだけかもしれません.

LogWatch 7.6

そういえば,SlackwareARM 15.0のサーバーにまだLogWatchをインストールしていないことを思い出して,インストールすることにしました.前のOS (SlackwareARM 14.2) の時には,LogWatch 7.4.3 をインストールしていましたが,現在は7.6が最新版です.

手でインストールしてもいいのですが,SlackBuildsに用意されているので,

sbopkg -i logwatch

でインストールしてみました.試しに,/etc/cron.daily/0logwatchを走らせてみると,

/bin/sh: warning: shell level (1000) too high, resetting to 1

というメッセージが繰り返し出て,しまいにはsshdがこけてしまったのか,sshによる接続が切られてしまいました.

上記メッセージは,繰り返しshが呼ばれた時に起こるそうです.なんか,SlackBuilds提供のLogWatchインストールのためのスクリプトか,あるいは起動のためのスクリプトがバグっているようです.

そこで,removepkgしてから,手動でインストールをしました.インストールの仕方はソースパッケージの “README” に書いてあります.

手動で動かしたところ,コンソールにログのサマリーが出て,正常終了しました.しばらくcronで飛ばして様子を見ます.

関連記事

1日1回.

Postfixを試す (7) Avahiのbuildで難航

Postfixを試すのにAvahiが要るのか,という疑問もあるかと思いますが,筆者のLAN内ではAvahiを有効利用しているので,テストの準備などのいろんな手続きをスムーズにするためインストールすることにしました.

Slackware (64, ARM) 15.0用としてSlackBuildszeroconfのサーバーであるAvahi,クライアントであるnss-mdns,そしてAvahiに必要なライブラリーlibdaemonが用意されています.したがって,libdaemonからの順番で,sbopkg -iすれば,インストール完了します.実際,SlackwareARM 15.0のとあるマシンでは,そのようにして他のマシンを参照するのも,他から参照されるのもうまく機能しています.

ところがどっこい,Postfixのテスト用に仕立てたSlackware 15.0 (32bit)の仮想マシンでは,Avahiのbuildができません.gtk+2のバージョンが必要条件(>=2.14.0)を満たしていないとconfigureスクリプトが文句を言いますが,pkgtoolで確認するとちゃんと条件を満たしています(2.24.33).エラーメッセージは的が外れているけど,なにか確かにエラーがあるに違いないです(よくあることです😥).

うまくいったSlackwareARMと失敗したSlackware (32bit)の違いは,もちろんアーキテクチャーや,実マシン・仮想マシンの違いがありますがそれらは別にして,X, XAP, KDEをインストールしていないことです.リモートで運用・管理するのが前提なので,そもそもGUIは要りませんので,省略することによってシステムの容量を減らすことができると考えました.

しかし,これがどうもいけないようです.そもそもAvahiにGUIは関係ないと思うのですが,なんか必要なライブラリーがGUIのライブラリーと依存関係にあるとかないとかいうことでしょうか.知らんけど😥

必要最低限のライブラリーを見つけ出してインストールするというのがGUIをインストールしなかった初期の方針に沿う方法でしょうけど,時間が無駄にかかりますので,ここは諦めて,XとXAPはインストールすることにします(いくらなんでもKDEは要らんでしょう😥).

ここも,ここまでいじってきたシステムにXとXAPを追加してインストールすればいいんですが,完成したときにクリーンインストールからの最小手順だったという形にしたいので,また箱庭を消してゼロからやります.

Postfixを試す (6) Slackware 15.0の仮想マシン作成

とりあえず,いくつかの仮想マシンは問題なく動いているようです.かつて経験した,仮想マシンがディスクエラーを起こして,ホストごとフリーズしてしまう現象はいまのところ起きていません.SATAのポートを試しに替えたから良かったのか,たまたま発生していないのかはわかりません.

さて,ようやくPostfixを試す第一歩である,Slackware 15.0のインストールまでこぎつけました.

慣れ親しんだSlackwareですが,インストールはそうしばしばやるわけではないので,いろいろ忘れてます.砂の箱庭と同じで,失敗したら消してやり直しを繰り返しているうちに,少しずつ思い出してきました.

仮想マシンでGRUB2を使う場合,UEFIは可搬性が低くいので,UEFIなしのGRUB2のインストールをします.この場合, “BIOS boot” というパーティションが必要で,Wikipediaによれば最低1MiBあれば良いとのことなので,とりあえず2MiBとしておきました.

LILOをインストールしないので,ソフトウェアのパッケージのインストールが済んでも仮想ディスクから起動することはできず,もう一度DVDを使い,ルートに仮想マシンのパーティションを指定してブートして,GRUB2のインストールをします.

これで仮想ディスクからブートできればあとは難しいところはなく,slackpkgでパッチ当てをしたり,メインユーザーを作ってsudoerに加えたりあたりをして,とりあえずクリーンインストールは完了です.

ここで,rootでログインした状態でsnapshotを撮っておきました.

仮に成功したとしても,仮想マシンでUEFIの環境を持っているものは少ないので,他のマシンに持っていってブートする可能性が低い.
というか,そもそも筆者のManjaroのKVM/QEMU環境ではUEFIの仮想マシンは動かないと思います.
whoisだけ,たぶんGPGkeyによる検証が失敗したようで,エラーとなってupdateできませんでした.次のパッチのリリースまで待つしかないです.

Postfixを試す (5) KVM仮想マシンの現状

保有する仮想マシンの現状確認・updateは,なかなか惨憺たる結果となりました.

debian-10-brokenは,ログインできないので消すしかありません.また,slackware-ex-real-brokenも,greeterが出ません.run level 3でログインできる可能性がありますが,Slackware64 14.2ベースなので,取っておく価値はありません.

gentooの2つは,長らく放置していてupdateできるはずがないので,不戦敗2です.

Manjaroについては,前の記事で書いたとおり絶望的です.

Ubuntuはかつて別々のWSで動いていた仮想マシンです.どちらも20.04.xで,最新の20.04.4にupdateできましたが,日本語入力ができません

日本語入力については,Debianの実マシンから仮想化したdeb-realも同様にできません.

となると,日本語は入力できないけどup-to-dateにできるのが,deb-real, ubuntu20.04LTS, ubuntu64の3つだけとなります.システムは起動するけどupdateできなのが,manjaro-ex-real-broken,GUIにログインできないのがslackwere-ex-real-broken,ログインが全くできないのがdebian10-brokenということです.

一番ひどいdebian10-brokenを消して,Slackware 15.0をインストールするスペースにします.

名前に “64” が入っていないから32bitということではなくどちらもx86_64です.