懸案のLoox-#10。

「LooxS5/53WにPuppyLinuxを入れて,オンアクセススキャンでウイルス対策ソフトを動かす」の最終段である。読んでもらうとわかりるが,所期の目標に達していない。
しかし,DazukoFS+ClamAvデーモンはひとまず動いた。その時あまりにも重くて,他の作業もままならないので,LooxS5/53Wはオフラインのサブ機として使うことにしようと決めた。
とはいっても,その過程で分かったこともいろいろあったので,忘れないためにもそのあたりをまとめておこうと思う。

以下の作業は「懸案のLoox-#9。」の13.に続いて行うことになる。

まだ,ウイルス対策が済んでいないので,必要なファイルのダウンロードは別PCを利用する。また,今回は開発環境ができているので,Debianのパッケージを利用せず, clamav-0.96.1.tar.gz をダウンロードして使う。

Clamavのインストール。
1度,1.~6.まで済んだのだが,
========================================
4 of 7 tests failed
(5 tests were not run)
See unit_tests/test-suite.log
Please report to http://bugs.clamav.net/
========================================

ということで,ClamAvのBugzillaを見たら1744が似ているようなので,パッケージマネージャでlibbz2-devをインストールし,ClamAvのほうは make uninstall して,clamd.conf とfreshclam.confも削除。改めて,やり直した。

  1. 後で,checkを使うので,http://www.sf.net/から,check-0.9.8.tar.gzをダウンロードして解凍し,中のINSTALLにしたがって,
    # ./configure
    # make
    # make install
    (※) プラットフォームに,もともとcheckパッケージがあれば,この部分は必要なし。
  2. /rootにダウンロードしたファイルを
    # tar zxvf clamav-0.96.1.tar.gz
    で解凍し,解凍されたフォルダの中にあるdocsを読んで,その手順に従う。
  3. # cd clamav-0.96.1      解凍されてできたClamAvのソースフォルダに移動。
  4. docsには
    # groupadd clamav
    # useradd -g clamav -s /bin/false -c “Clam AntiVirus” clamav
    と書いてあるが,Puppyの場合は,
    # addgroup clamav
    # adduser -G clamav -s /bin/false clamav
    で,グループとユーザを作成。
  5. ClamAvのコンフィグに入る。
    $ ./configure –sysconfdir=/etc –enable-check      初めのオプションはconfファイルを/etcに作る。省けば,/usr/local/etcにできる。2つ目は,後で使うチェックのため。
    $ make      相当時間食った。計るの忘れたけど,多分4,5時間。
    でもって,$ su -c “make install”と書いてあるけど,Puppyはもともとroot権限で動いているから,
    # make install      でいいんだろう。
  6. 次が unit tests 。今コンパイルしたのが,システム上でちゃんと動くか,調べてくれるそうだ。
    で,1度目の結果が,上記のとおりなのだが,2度目はちゃんと通って,結果は以下の通り。
    PASS: check_clamav
    PASS: check_freshclam.sh
    PASS: check_sigtool.sh
    SKIP: check_unit_vg.sh
    PASS: check1_clamscan.sh
    PASS: check2_clamd.sh
    PASS: check3_clamd.sh
    PASS: check4_clamd.sh
    SKIP: check5_clamd_vg.sh
    SKIP: check6_clamd_vg.sh
    SKIP: check7_clamd_hg.sh
    SKIP: check8_clamd_hg.sh
    ======================
    All 7 tests passed
    (5 tests were not run)
    ======================
    SKIPされている項目は valgrind がインストールされていないせいである。
  7. さて,このあとも大問題。各confの中を読みつつ,デフォルト設定を環境に合わせていくわけだ。心労の極み!(笑)
    /etc にある clamd.conf の内容を編集。

    • Example の頭に # をつけてコメントアウト。
    • 以下の部分はアンコメント。
      LogFile /tmp/clamd.log
      LogTime yes
      LocalSocket /tmp/clamd.socket
      FixStaleSocket yes
      DetectPUA yes      PUA — Possibly Unwanted Applicationsということなんだけど,コメントのままにしとくべきかな。
      ClamukoScanOnAccess yes
  8. /etc にある freshclam.conf の内容を編集。
    • Example の頭に # をつけてコメントアウト。
    • 以下の部分はアンコメント。
      UpdateLogFile /var/log/freshclam.log
      LogTime yes
      DatabaseMirror db.jp.clamav.net      # DatabaseMirror db.XY.clamav.netをアンコメントして,XYをカントリーコードに書き換える。
      NotifyClamd /etc/clamd.conf      # NotifyClamd /path/to/clamd.confをアンコメントして,パスを書き換える。
  9. # touch /var/log/freshclam.log      ログ用に空のファイルを作る。
    # chown clamav:clamav /var/log/freshclam.log      ログファイルのownerをrootからclamavに変更する。
  10. # modprobe dazukofs      DazukoFsのモジュールをロード。
    # mount -t dazukofs / /      全ディレクトリをDazukoFsでマウント。
    # env LD_LIBRARY_PATH=/usr/local/lib /usr/local/sbin/clamd -c /etc/clamd.conf      ClamAvを起動。
    別の端末から
    # env LD_LIBRARY_PATH=/usr/local/lib /usr/local/bin/freshclam   でウイルス定義ファイルの更新。
    更新は無事完了。しかし,しばらくするとclamdが落ちた。
    /tmp/clamd.log によると segmentation fault が出て止まっている模様。
(※) Valgrindもインストールしてみたが,VaigrindはCrusoeをサポートしていないということであった。


valgrind_3.6.0~svn20100212-0ubuntu5_i386.deb (依存関係でlibc6-dbg_2.11.1-0ubuntu7.1_i386.debも) をインストールしてみたときのcheckの結果は,以下の通り。
PASS: check_clamav
PASS: check_freshclam.sh
PASS: check_sigtool.sh
PASS: check_unit_vg.sh
PASS: check1_clamscan.sh
PASS: check2_clamd.sh
PASS: check3_clamd.sh
PASS: check4_clamd.sh
FAIL: check5_clamd_vg.sh
FAIL: check6_clamd_vg.sh
SKIP: check7_clamd_hg.sh
FAIL: check8_clamd_hg.sh
========================================
3 of 11 tests failed
(1 test was not run)
See unit_tests/test-suite.log
Please report to http://bugs.clamav.net/
========================================
test-suite.logによれば,unsupported CPU ということで,Crusoeというのが,ここでも響いている。

サウンドは使えなくなる,電源は落ちなくなると,副作用もいろいろあった。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください