IBM製(まだ連想集団じゃない)のThinkPad R30にLinux(CentOS)を入れようとしたときの記録。
かなり手こずりました(^_^;)
理研とかのミラーサイトからCentOSのISOイメージファイルをダウンロードしておく。
DVDが読めるドライブなんてもちろん付いているわけがないので、CDイメージ(6枚分)をダウンロード。
# 本当なら、DVDイメージをダウンロードして、別のLinux機にマウントして、ftpとかNFSとかでネットワークインストール
する方法(外部のサーバからのネットワークインストールより遥かに早い)とかもあるらしいけど、面倒なので却下。
ダウンロードしたら、念のためmd5sumのチェックをしておいた方がいいかも。
ISOファイルと同じところにある"md5sum.txt"をダウンロードし、
Windowsの場合は、このソフトを使ってチェックできます。
Linux/UNIXの場合は、ISOファイルと同じ場所に"md5sum.txt"を置き、以下のコマンドを実行すればチェックできます。
$ md5sum --check md5sum.txt
ISOファイルをダウンロードしたら、CDに焼いてインストール開始。
順調にインストールが進んでいくかと思いきや、問題発生!!
インストールの途中の "running /sbin/loader"というところで止まったまま、先に進まなくなってしまうのです。
ドライブの故障かと思ったのですが、CDからWindows2000をインストールすることは出来たので、
ドライブの問題ではないようです。
原因がさっぱり分からなかったので、別の方法でインストールを行うことにしました。
このサイトの情報を参考にUSBメモリでブートして、その他のデータはネットワーク経由で取得するという方法を試してみる
ことにしました。
データサイズは、かなり小さい(8MBくらい)ので、用意するUSBメモリはどんなものでも大丈夫です(多分)。
USBをThinkPadに挿して、いざ起動してみました。
しかし、またもや問題発生!!
BIOSの起動デバイス選択メニューでUSBメモリが認識されていないのです。
…というわけでこの方法も無理でした。
CDでもダメ、USBでもダメ…
もう他に方法はないなとあきらめかけていたときに、PXEを使ったネットワークブートという方法があることを知りました。
この方法は、PCがネットワークブートに対応していなければ出来ません。
BIOSを見ればネットワークブートに対応しているかどうかわかります。(最近のPCはほとんど対応しているみたいですが)
幸いにも、このThinkPadはネットワークブートに対応していました。
# PCのBIOS画面のあたりで DHCP・・・・ という表示の出るPC(起動順番の設定によっては出ないこともあります)は
多分ネットワークブート可能です。
このサイトの情報を参考に別のPC(Fedora7)にPXEブートをするための設定(DHCPサーバ, tftpサーバの設定など)
を行いました。
設定が完了し、ThinkPadを起動してみました。
今度はちゃんとブートローダーが起動し、PXEからCentOSのカーネルを読みに行こうとしてくれています。
今度こそうまくいっただろう
…と思いきやまたまたダメでした。
カーネルを読みにいってくれてはいるみたいなのですが、"Unable to locate configuration file"というメッセージが
表示され、止まってしまいます。
この方法もダメみたいです。(原因を突き止める気力も起きてきません)
このPCでは無理かもしれないと半分あきらめつつ、もう一度CDで試してみました。
ネットで調べていたら、こうすればうまくいくという情報が結構あったので、試してみることにしました。
いくつか見つけた情報を載せておきます。
このPCの場合、上の太字下線部分をやったらやっとインストールすることが出来ました。
しかし、ACPIを無効にしてインストールしたせいなのか、シャットダウンをしても電源断までされません。
ブートローダー(grub)のconfigファイルのカーネルの記述の部分にacpi=offという記載が入っているので、
ここをacpi=onにしてあげれば、電源断まで行われます。
# acpi=onにしたら、OSの起動が少し遅くなった気がします。
とりあえず、インストールがうまくいって一安心です(^_^;)
まさか、こんなに手こずるとは思いませんでした。
OSのセットアップ、各種サーバの設定については、「CentOSで自宅サーバ構築」を参考にさせてもらいました。
一通りセットアップが終わってから、messegesファイルを見てみると、なんか変な記述が…
kernel: hdc: lost interrupt
何かと思って調べてみたら、"apic"というIntelのIOデバイスの割込コントローラが問題らしい。
さらに色々見ていたら、上のCDインストールのときに指定したオプションのスペルミスをしていたようだ。
本当なら、"noapic"としなければならないところを、"noacpi"とやってしまっていた!!(上の説明は修正済み)
# この設定を間違えていなければ、メッセージは表示されなかったかもしれない…
とりあえず、ブートローダー(grub)のconfigファイルのカーネルの記述の部分に"irqpoll"という記述を加えてあげれば
OKのようです。