Vine3.2でOracle 10g Express Edition
VineLinuxはRedhat系列の中でも妙なコンフィグを行っている事で有名(?)だが、確かにそのままではOracle 10g Express Editionが動かない。
あれこれ試してみたところ、Kernelを再構築するだけでうまくいくようだ。
面倒なのでmkkpkgを使う。他にgcc、patch、rpmbuildなどが必要。rootになって
# mkkpkg kernel-2.4.31-0vl1.12.src.rpm
後は、mkkpkgが勝手にkernelのmake menuconfigやrpmbuildを手際よく実行してくれる。ついでにsourceのRPMも作っておくと良い。ここで、i686のconfigをロードしてKernel Hacking→Kernel DebuggingのMagic SysRq keyを有効にする。とりあえずはこれだけ。今回は0vl1.12oxeというカスタムカーネルを作成した。
出来上がった/usr/src/vine/RPMS/i386/kernel-2.4.31-0vl1.12oxe.i386.rpmを入れる。headerやsourceも入れておくと良い。最後にliloの設定をして再起動。
再起動後、普通にoracle-xe-univ-10.2.0.1-1.0.i386.rpmを入れる。libaioを要求されるが見当たらなかったのでCentOS3.6のRPMを入れた。
スワップが足りなければ適当な場所に追加のスワップを作る。
# dd if=/dev/zero of=/var/.swap bs=1000k count=512 # mkswap /var/.swap # swapon /var/.swap
しかし・・・・DBファイルが/usr以下に作られるのがなんとも気に食わん。
# cd /usr/lib/oracle/xe/ # mkdir /var/oracle # chown oracle:dba /var/oracle # mv oradata /var/oracle # ln -s /var/oracle/oradata
最初から/var/oracleを作って/usr/libにリンクを作っておくと良いかも知れん。