2022年8月、ホームページを全面リニューアルしました! 情報を分かりやすくお伝えできるサイト作りを目指してまいります。

レガシーノートPCにLinuxを無理矢理入れる!

”無理矢理入れる!”とは、ちょっと大げさな題名だが要するに486DX4からただのペンティアムクラスの昔のマシンにLinuxを入れて見ようよ。あわよくば、それをサーバにして運用してしまおう!。とちょっと無茶な事を平気でやろうというコーナーです。
ただここで、お断りしておきたいのは486DX4-75程度のマシンスペックの時は、コンベンショナルメモリも8MBで増設しても48MB MAXでHDDは540MB MAX何て言う時代だったのでこのスペックあたりが最低ラインでしょう。しいて言えば、メモリは32MB以上は欲しいです。16MBでは少し不安です。あと、ハードディスクは540MBが最低ラインですねえ。(但し、Xを入れる場合は、最低1GBは必要です)その当時は、EIDEではなくただのIDE規格だったのでHDDは540MB/個がMAXだったはずです。さらに、当時はCD-ROMが必須アイテムではなかったので多くのノートPCはCD-ROMドライブが付いていません。したがって、ここで説明する方法は、CD-ROMを使わないでLinuxを無理矢理入れる事を前提とします。興味がある方は、読んでいただき実際に自分でやってみると良いでしょうしかし、保証は出来ませんのでリスクを負うつもりでトライしてください。特に、Linuxの初心者はジャンクショップで購入したPCを壊すつもりでやる方が安心かも・・・・。


● 別のLinuxサーバのCD-ROMドライブを使う

 CD-ROMドライブが無いノートPCにLinuxをインストールするには、別にCD-ROMが付いているLinuxPCがネットワーク上に存在することが前提となります。このPCのCD-ROMドライブの力を借りてインストールしようと言うわけです。”なんだー!”と思う人は、この後を読んでもしょうがないかもしれません。
別のLinuxマシンには、NFS(NetworkFileSystem)というサービスを使ってネットワーク経由でノートから接続してドライブをマウントして使用します。Linuxは標準で備えており、これから説明する手順で設定すればノートPCからアクセスできるはずである。
一方、Windows用にもフリーもしくは商用ソフトのNFSサーバソフトが出ているが、うまくCD-ROMをマウントできない場合があるので、避けた方が無難である。


● さあ!やってみよう!

 LinuxサーバのCD-ROMドライブを公開するには次の手順をふむ。

(1)公開するディレクトリを設定ファイル「/etc/exports」に記述する。
(2)リモートからのアクセスを許可する。
(3)CD-ROMをマウントする。
(4)portmapデーモンとnfsデーモンを起動する。

★ 公開するディレクトリを設定ファイル「/etc/exports」に記述する。
 
 以下のように、/etc/exportsファイルに記述する。

/mnt/cdrom   *(ro)

公開するディレクトリに続けて、アクセスを許可するクライアントを指定する。これは、ホスト名またはIPアドレスで指定する。
ホスト名を指定した場合には、名前が解決できなければならない。すなわち、/etc/hostsファイルにIPアドレスとホスト名の対応記述をしておくか、DNSサーバをあらかじめ作成して登録しておく必要がある。
上の記述は、ノートPCにLinuxをインストールするので、ホスト名にはとりあえず「*(全てのクライアント)」を指定しておくこととする。このようにホスト名には、ワイルドカードを指定することも出来る。その次の、「(ro)」はReadOnly(読み込み専用)の指定である。

★ リモートからのアクセスを許可する。

 次にリモートアクセスを許可する。Linuxには、TCP_Wrapperと言うネットワークサービスのアクセス制御を利用して、標準状態ではリモートからのネットワークアクセスを全て禁止にしている(ディストリビューションによって違うが。)。
そこで、リモートからアクセスが出来るよう/etc/hosts.allowファイルに、アクセス許可するサービスと端末を以下のように追加する。

portmap : ALL

設定を変更したら、以下のコマンドを入力してinetdデーモンを再起動する。
まず、psコマンドでinetdのプロセス番号を調べる(以下の例では「210」)。さらに、そのプロセス番号をkillコマンドに設定する。

# ps -A | grep inetd
 210 ? 00:00:00 inetd

# kill -HUP 210

★ CD-ROMをマウントする。

 続いて、CD-ROMをマウントする。

# mount /mnt/cdrom

★ portmapデーモンとnfsデーモンを起動する。

 さらに、NFSでディレクトリを共有するために必要なデーモンを起動する。デーモンを起動するには、以下のコマンドを入力する。

# /sbin/portmap

# /etc/rc.d/init.d/nfs restart

以上で、CD-ROMを公開するサーバ側の準備は完了である。


● いよいよインストール!

さて、いよいよノートPCにLinuxをインストールする。
まず、ノートPCには、PCMCIAネットワークカードとFDDのみの環境を想定する。したがって、別のWindowsPCでLinuxインストール起動用フロッピーを作成する必要がある。
あらかじめフォーマット済みのフロッピーをWindowsPCのFDDに入れて、CD-ROMドライブにLinuxインストールCDを入れて、DOSプロンプトから次のコマンドを入力する。

Q:
CD \dosutils
rawrite -f ..\images\pcmciabt.img -d a

これで、インストール時にPCカードを利用するための起動フロッピーディスクが作られる。
さあ、この起動用フロッピーをノートPCに入れて、インストールを始めよう!
インストールの途中で「このコンピュータでPCMCIAを使用しますか?」の問いには「はい」と答える。PCカードドライバが組み込まれ、PCカードスロットに差したLANカードが表示されるはずである。
その後、「インストール元の選択」「NFSサーバ」を選択する。
ノートパソコンのIPアドレスやドメイン名、ホスト名を入力して、NFSサーバのIPアドレスと公開しているCD-ROMドライブのディレクトリを指定すると、正しくサーバ側の設定がされていれば、あとはローカルCDでインストールする時と同じ手順でインストールが可能なはずである。
サーバのディレクトリを指定したときにエラーが表示された場合は、以下の原因が考えられる。

(1)/etc/exportsファイルに公開するディレクトリを記述していない。
(2)portmapを起動していない。
(3)TCP_Wrapperの設定がされていない。
(4)nfsデーモンが動いていない。
(5)一度、Linuxサーバ側のNFSデーモンをストップして、CD-ROMをアンマウントして、CD-ROMをマウントし直し、/sbin/portmapを実行してから、NFSをスタートしてみよう!(うまく、NFSが動いてない場合がある)手順は、間違えないこと!

もう一度、前に戻って確認して欲しい。

以上で、説明は終わるが全てのノートPCでうまくインストール出来るわけではないので了解いただきたい。さらに、インストールがうまく完了したとしても、再起動後画面上に、

L 40 40 40・・・・・(以降省略、40が続く)

とか、

LI

で停止しまうような、現象が発生するノートPCは、ブートローダがLinuxカーネル(vmlinuz)を見つけられない状態にある。これは、インストールしたハードディスクのパーティションの設定か、LILO設定のところで何かしらの問題が有ったと考える。回避方法としては、ブートフロッピーで起動させるようにするか、LILOではなく、BIOSの制限を受けないブートマネージャソフトを使うと良いだろう。
事実、私はフロッピー立ち上げを行っている(東芝 Dynabook Satellite Pro 420)(ToT)。

重要:上記の現象は、レガシーPCのHDDを大容量ディスクに入れ替えた場合に起こる。元々、i486クラスのCPU搭載ノートのほとんどは、IDE(E-IDEではない)インターフェースであったため、528MBまでしかディスクの領域を扱えない。その後、E-IDEインターフェースとなってから、8.4GBまで扱えるようになったが今主流のHDDの容量は、その倍以上である。したがって、IDEインターフェースは別にしてE-IDEでもBIOSが古いと大容量ディスクを認識できず、”ブートできない!”と言う現象が起こる。

以上

コメント