發現 ubuntu 上面沒有 logmon 可以用,因為不想安裝 binary rpm,所以就自己從 source rpm 裡把 source tree 解出來,build 好後裝來用。過程筆記如下:

首先,從 logmon 網站上抓下 source rpm 檔,最新版為 LogMon-0.4.4-1.src.rpm,然後參照這篇《Re: Extract, but not install rpm》的作法,把 source tree 解出來:

SHELL> rpm2cpio LogMon-0.4.4-1.src.rpm > LogMon-0.4.4.cpio
SHELL> cpio -iv < LogMon-0.4.4.cpio
SHELL> tar zxvf LogMon-0.4.4.src.tgz
SHELL> cd LogMon-0.4.4

因為編譯 logmon 需要 c++ 與 ncurses,預設 ubuntu 沒有安裝,所以要用 Synaptic Package Manager 或 apt,把 g++ 與 libncurses5-dev 裝起來。

這一版的 logmon 需要修正一點程式,主要如下:

  • Main.cc 裡的 using namespace::std; 應該要放在所有 #include 之下,然後 namespace:: 之間要加一個空白。
  • LineManip.cc 最前頭,加上一個 #include <stdlib.h>

然後,按照下面的步驟編譯與安裝:

SHELL> ./configure --prefix=/usr/local
SHELL> make
SHELL> make install
SHELL> cp logmon.conf.example /usr/local/etc/

執行的時候,因為不會直接到 /usr/local/etc 下找設定檔,所以要如下執行:

SHELL> logmon -f /usr/local/etc/logmon.conf /var/log/messsages

有了 logmon 之後,在 Ubuntu 下看 log 檔,就方便多了。不曉得在 Linux/Ubuntu 的世界裡,是不是還有其他有 tail -f 的效果的 (multi-)file log viewer,總之我還找不到就是了。