ロボット、サーバーの事などをたまに更新。

memo

You are here:  home arrow etc arrow fedora arrow Antivirをインストールする1 - fedora7
Antivirをインストールする1 - fedora7
2007/10/23 火曜日 11:14:16 JST

追記:fedora8版はこちら

Linuxにアンチウイルスソフトをインストールします。

Linuxに対応したアンチウイルスソフトというと、ClamAVとか、avast!とか思いついたのですが、今回はAntivirというドイツ製のものを使ってみます。なんでも、リアルタイムスキャン(OPEN/CLOSE/EXECUTE)もできるそうで、なんだかおもしろそうじゃないですか。ちなみに、SELinuxは無効しなければならないようです。

リアルタイムスキャンはオプションですが、これを使用するにはカーネルを再構築しなくてはならない事と、dazukoというソフトが必要です。こいつぁ、めんどいぜ。

インストールした時点の環境

Fedora7 i686 kernel-2.6.21-1.3194.fc7
AntiVir  2.1.11-30
dazuko-2.3.4

 

yum-utils, rpmdevtools(+fakeroot)のインストール

yum-utilsはsrpmなどをリポジトリから簡単に取得する為、rpmdevtoolsはユーザー環境で作業するのを簡単にしてくれる物。最初、rootでカーネルを再構築していたら、/  パーティションが100%近くになって失敗したぜい。

$ su -c 'yum install yum-utils rpmdevtools'

作業ディレクトリの初期化

$ rpmdev-setuptree 

~/rpmbuild/以下に BUILD, RPMS, SOURCES, SPECS, SRPMSが作成される。 

 

sparseのインストール

無いと怒られた。

$ su -c 'yum install sparse' 

無くても怒られませんでした。 

 

カーネルのソースパッケージを取得する

$ yumdownloader --source kernel-`uname -r`
$ su -c 'yum-builddep kernel-`uname -r`.src.rpm'

  

カーネルソースパッケージのインストール

$ rpm -Uvh kernel-`uname -r`.src.rpm
 警告: グループ kojibuilder は存在しません - root を使用します....... <- これは無視

 

カーネルのコンフィグファイルを編集する

$ cd ~/rpmbuild/SOURCES/
$ vi  kernel-2.6.22.9-i686.config

#
# Security options
#
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_NETWORK_XFRM=y
CONFIG_SECURITY_CAPABILITIES=m <-'y' を 'm'に

 

カーネルパッケージを作成する

$ cd ../SPECS

カーネルにバージョンを記しておく
$ vi kernel-2.6.spec

# Polite request for people who spin their own kernel rpms:
# please modify the "buildid" define in a way that identifies
# that the kernel isn't the stock distribution kernel, for example,
# by setting the define to ".local" or ".bz123456"
#
%define buildid .dazuko
%define dist .fc7_DAZUKO ※4

$ rpmbuild -bb --with baseonly --without debuginfo --target=`uname -m` ./kernel-2.6.spec
※1, ※2, ※3

※1) 途中で何か聞かれるところがある

Not enough random bytes available.  Please do some other work to give
the OS a chance to collect more entropy! (Need 282 more bytes)

ランダムな数値を生成する為になんか他の事しれくれってことか?

※2) 構築に仮領域が結構いるみたい 1 - 2G位使うかも。

※3) --with, --withoutでdebuginfoを飛ばしたりしているけど、オプションなしで全部構築するとエライ時間がかかるので、とりあえず必要なものだけ生成しましたー。P4  2.4G  mem 1Gマシンでコンパイル中、放っておいてオプション無しで5時間以上(途中で止めた)、オプション付きで2時間位で終わりました。

※4) 追記:buildidに.dazukoという表記でカーネルパッケージにオリジナルの名前をつけていても、同じバージョンとして認識する。後述のインストールの項で`rpm -ivh --force`を付けていたが `%define dist .fc8_DAZUKO`と記述することにより、別バージョンのカーネルとして`rpm -ivh`のみでインストールできる。それでもしっくりこないす。

 

カーネルパッケージをインストールする

$ cd ~/rpmbuild/RPMS/i686/
$ su -c 'rpm -ivh --force kernel-2.6.22.9-91.fc7_DAZUKO.i686.rpm'
$ su -c 'rpm -ivh --force kernel-devel-2.6.22.9-91.fc7_DAZUKO.i686.rpm'

※1) --forceが良いのかどうなのか・・・

これでgrubだとかにも追加で登録されるし現行バージョンも残っているのでまぁいいや

ここまでやって再起動。作成したカーネルで起動する。

 

nvidiaドライバーのインストール (必須ではない)

自分のデスクトップはcompizで3Dデスクトップをグリグリやっているので、このカーネル用にnvidiaドライバを再構築する必要がありました。まぁ、compizも最近はちょっと飽きてきたんですけどね。一応、やります。

$ yumdownloader --source kmod-nvidia-96xx
$ rpm -Uvh nvidia-96xx-kmod-1.0.9639-1.2.6.22.9_91.fc7.src.rpm
$ cd ~/rpmbuild/SPECS/
$ vi nvidia-96xx-kmod.spec
カーネルのバージョンを編集
%{!?kversion: %define kversion 2.6.22.9_91.fc7_DAZUKO}

PAEは無視(?)で、下記箇所をコメント。%の後のスペースは要ります。
%define upvar ""
# % ifarch i686
# % define paevar PAE
# % endif

$ rpmbuild -bb --target=i686 nvidia-96xx-kmod.spec
$ cd ../RPMS/i686
$ su -c 'rpm -ivh --force kmod-nvidia-96xx-1.0.9639-1.2.6.22.9_91.fc7_DAZUKO.i686.rpm'
※1

 再起動して確認。

 

dazukoのインストール 

http://www.dazuko.org/よりソースファイルをダウンロードします。現時点の最新版は2.3.4

$ wget http://www.dazuko.org/files/dazuko-2.3.4.tar.gz
$ tar -xzvf  dazuko-2.3.4.tar.gz
$ cd dazuko-2.3.4/
$ ./configure
$ su -c 'make' ※1
$ su -c 'make install'
確認
$ su -c '/sbin/modprobe dazuko'
$ su -c '/sbin/lsmod'

※1)  作業ファイルを/lib/modules/<kernerl-version>/build/include/linux/version.h.tmpとして作ろうとしているのか、rootでmakeしないとPermission deniedtって怒られちゃう。

カーネルモジュールdazuko.koは後にantivirの起動スクリプトで読み込ませるので、現時点で起動した時にdazuko.koを有効にする手段は省略する。

 

下準備はこれで終了。

 

参考:

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/933rtscanfc5.html
http://fedoraproject.org/wiki/Docs/CustomKernel


Tags:  etc Fedora7 Antivirをインストールする1
最終更新日 ( 2007/11/12 月曜日 16:11:07 JST )