More from: コンパイル

ちょっと新しくなったVer.は駄目だった(汗)

bashの脆弱性対策を行ったが、bash-3.2-33.el5.1.src.rpmを使ってビルドしようとしたら「とあるヘッダファイルが無い」って言われてコンパイル出来なかった。
bash-3.2-33.el5.1.i386.rpmをそのまま入れようとしたらglibcのVer.が古くて入れられないのでソースから入れ直そうと思ったけど、やっぱり無理だったか(汗)。

←クリックしてくれると嬉しいです。

kernelのコンパイルメモ

職場のサーバが時々サービスを停止してしまうことがあり、その都度再起動をせざるを得なくなっている。
以前も書いたけど時計が進まなくなってしまい、時計に依存する処理(cron等)が止まってしまう。
少々調べたところ時計モジュールはkernel組み込みらしいので、この際kernelを新しいものにしてしまうことにした。
そこでkernelのソースをダウンロードしてきてサーバーに転送し、/usr/src以下で展開してコンパイル~インストールをした。
手順を忘れないようにここにメモしておく。

ソースの展開
tar xvjf linux-2.4.37.10.tar.bz2 (2.4系の最終版ソース)

configファイルのコピー
cp linux-2.4/.config linux-2.4.37.10/.

ディレクトリのリンクし直し
rm linux-2.4
ln -s linx-2.4.37.10 linux-2.4

.configファイルの再設定
cd linux-2.4
make oldconfig
(旧kernelのconfigの引継ぎ。追加機能があればどうするかを聞いてくるので、y/n/mで答える)

コンパイル
make dep
make clean
make bzImage

モジュールのコンパイル
make modules

モジュールのインストール
make modules_install

kernelのインストール
make install

ブートローダーの設定変更
GRUBの場合は
/etc/grub.conf
LILOの場合は
/etc/lilo.conf
の内容を修正し、LILOの場合のみ
/sbin/lilo を実行し、修正した内容を反映させる。

なんだけど、現在はkernelのインストール時に
All of your loopback devices are in use.
のエラーで止まっている。
initrd(Initial RAMDISK)の作成時のエラーなので、最初はブロックデバイスとloopback deviceを有効にしていなかったためと思ったので.configを修正したが、それでもエラーになってしまうので行き詰まっている。
手動でmkinitrd /boot/initrd-2.4.37.10.img 2.4.37.10
を実行しても同様。
うーん、なにが問題だ?

←クリックしてくれると嬉しいです。