緒言Linuxには自家用マシンだけには不要のご自慢の能力がある。私は洗濯機を走らせようとはしないが、何時かそんな日が来ると思う。Linuxを多くの人に楽しんで貰うため、最近のLinuxディストリビューションは、インストレーション過程を、使いやすいGUIに包み込む携行にある。SuSE
Linuxが問題の場合だ。そのインストレーションにはYaSTインストーラを使うがこれは、魅力的なインターフェイスを見せびらかし、Linuxのような難しいOSのインストールを楽しい経験にする。しかしこれには欠点がある−これらグラフィカル・インストーラは、コンピュータに力があることを必要とする。SuSEは、YaSTインストーラに最低64MB
RAMがあることを推奨する。
しかし、OSが実際にインストールされると、Linuxにはこんなスペースに合致しないマシン上で働く能力がある。屋根裏で埃を被っていた古い486を使ってインストレーションを自分流におこなうことが出来る。これは予備機、ルータときにはウェブサーバとして使うことが出来る。
それなのに、こんなマシンで最近のLinuxをインストールしようとすると、魅力的で使いやすいインストーラは、働くのを単に拒絶するだけだ。
最近私は、最新Linuxディストロを、相当古いマシンにインストールする機会があった。問題を幾つか克服したので、この記事を書いた。他の人に役立って、余分な古いマシンに良い用途を見付けて下さればと思う。
インターネットの必要性色々な理由で、私の勤める小会社がローカルネットワーク上でインターネット・サイトを利用する必要があるのが判った。複雑なことは何も要らない。各種社内文書その他の情報を扱い、それらを誰でもネットワーク上で容易く利用出来るようにするだけだ。
これは、Microsoftだけを使う我が社にLinuxを導入する良い言い訳になるとも思った。
小売業の利益は知れたものなので、Microsoftの
IISなどを走らせるのに必要な強力な新マシンの費用を請求することは出来ない。しかし、今は使っていない予備機がある。このPCは、我が社の比較的新しい勘定組織では使えない旧型機なので、部屋の隅に追いやられていた。私は当然このPCを将来のインターネットサーバに割り当てていた。
この機械のメモリは最近の基準は比較的小さい−実のところ搭載OSは、ワークグループ3.11用ウインドウズを使うMS-DOS
6.22だ。このPCには200MHzペンティアムMMX、16MB RAMと、20GB
HDDが搭載されている。我々のインターネットが機械に求める需要にはー少なくとも最初は−これで充分だと思った。将来RAMを増やす必要はあるだろうが、RAMは安くて、何時でも大きく出来る。これで始めることにした。
ディストリビューションボックスを純粋にローカルネットワーク上のウエブサーバとして働かせるため−Xサーバの搭載は不要−比較的小さいLinuxだけが必要だった。選んだディストリビューションはSuSE
Linux
8だった。自分の家のPCで使っていて、SuZEのやり方に慣れていたからだ。色々試したが、矢張りSuZEが良かった。ライセンス秘密警察の訪問を心配しないで、自分のCDから新OSをインストール出来るのも気休めになった。
インストレーションPCをブートアップしF2キイを叩いてBIOSに入った。クイックチェックが出て、先ずCD-ROMからブートせよと指示したので、次のように働くよう設定した。SuSE
Linuxディスクを挿入して、新しいBIOS設定でPCをブートし直した。CDからのブートの後、出てきたSuSEメニューから'standard
installation'を選んだ。
SuSE
Linuxのインストレーション過程は、ハードディスクでなくramdiskを使って初期ファイルシステムを作り、Linuxのコピイをシステムメモリにロードすることから始まる。又は少なくとも−そのようにしようとする。システムは、ramディスクをメモリに解凍しようとする。暫く待つと、システムのメモリが小さいのが判って、動かなくなるようだ。そこでctrl-alt-delを押すとシステムは優雅に止まる。
もう一度試す−コンピュータをもう一度CD-ROMからブートするが、今度は、SuSEの
'safe
installation'を試す。残念ながら、前と全く同じ結果だ。
ボックスの物理メモリが足りないためかと思う。SuSEのウエブサイトを調べると、セットアッププログラムを走らせるに必要な最低メモリは、前に言った通り
64MBで、私のボックスに恵まれた16
MBより遙かに大きい。
諦めないでもう一度CD-ROMからブートして、最初のSuSE画面がテキストベースのインストレーションを始めるとき、SuSEが通常作るGUIベースのインストレーションより少ないメモリが必要な筈と踏んで、F2キイを押した。旨く行った。Linuxの最初のコピイ、ramdiskそしてすべてが、システムメモリにロードされ、テキストベースのYaSTインストレーションが始まった。このような問題について、好きな言語として、二、三の質問を受けた。YaSTを走らせるにはメモリが充分でないとのメッセージが出た。また、インストレーションが止まった。
この段階でYaSTは、パーティションswapを起動して物理メモリの代わりに仮想メモリを作るオプションを与えた。残念ながら、ボックスには大きい2GB
FAT16 DOS
パーティションだけで、swapパーティションがなかった。だが、解決策が示された。実際にYaSTを走らせる前に、手動でディスクのパーティションを仕直す−純粋Linuxパーティションを作る−と、どこかに行ける筈だ。
パーティション優れたパーティション用ソフトウエアへのアクセスがないので、FDISKのLinux版と一緒にLinuxブートディスクを入手することとし、自分のパーティションを始動させた。
このためTom's
Root Boot
Diskをダウンロードした。これは、完全にブートすることの出来るLinuxシステムで通常の1.44MBフロッピイディスクをフォーマットするDOS実行可能ファイルを、小さいファイルシステムと必要な小型ユティリティを含めて、提供する。Tom's
Root Boot Diskは、
http://www.toms.net/rb/
からダウンロード出来るが、余り推奨しない。
Tomの呉れるDOS実行可能ファイルは、私の通常のデスクトップ上のOS−Windows 2000
のプロンプトからは走らない。代わりに実際のDOS OS
を必要とするので、ダウンロードしたzipファイルを、Linuxを搭載しようとするボックス−これにはMS-DOS
6.22が搭載されている−にコピイして解凍した。Win95/98
PCをMS-DOSモードでブートし直しても適切な環境が得られる。フロッピイを適切なドライブに入れて、Tomのプログラムにブートディスクを作らせた。最後に新しいLinuxブートディスクでコンピュータをブートし直した。
ここで、最初はFDISKが間違った作動したことを白状しなければならない。元のDOSパーティションを殺して新しいピカピカのLinux
swapパーティションを作ったと思ったが、そのためFDISKがディスクのヘッド、シリンダ、セクタを間違って報告する結果となった。だから、新パーティション・テーブルを滅茶目茶に書いた。二度目にはFDISK自体が働いて旨く行った。だが−FDISKの作用に被害妄想が残ったので−ハードディスクの詳細を正しく検出したのを確認した。PCを切り離してディスク自体のラベルを点検した。
FDISKは、使うソフトウエアには恐ろしいものと言われることが多いが、いつでも真っ直ぐに働いてくれた。FDISKを立ち上げるには、次のようにタイプする:
#> fdisk /dev/hda
勿論、パーティションするハードディスクは第一IDEディスクであると想定する。FDISKにどのデバイスをパーティションするか命令する。この場合は
/dev/hdaだ。FDISKの文法に疑問があれば Tom's root boot
diskにはマニュアルがあるので参照されたい。
FDISKを開始したら、単一文字コマンドでその行動を制御する。利用することの出来るコマンドのリストを見るにはmとタイプする。pは現行パーティションの詳細を画面にプリントする。
先ずdとタイプし、プロンプトされたとき、どのパーティションかを指定して、既存のパーティションを削除する。パーティション番号は画面にパーティション詳細をプリントしたとき判る。FDISKは、wコマンドを使って変更を書き込むまで、ディスクに何の変更も加えない。間違ったらqとタイプし、変更をセーブしないで立ち去る。しかし、一旦書き込むと、元に戻る方法はないので慎重にすること。nコマンドで、新しいパーティションがディスクに加わる。新パーティションは規定値でLinuxパーティションなので、新パーティションをLinux
swapパーティションに変更するにはtコマンドを使う必要がある。lコマンドを使うとFDISKのサポートする各種パーティション型の全リストを見ることが出来る。Linux
swapパーティションはタイプ82だ。
私の場合、別々の一次パーティション二つをディスク上に作った。第一は、サイズが128MBのLinux
swapパーティションで、第二は、ディスクの残りを使ったLinuxパーティションだ。続いてパーティションをフォーマットする。swapパーティションには次のコマンドを使う:
#> mkswap -c /dev/hda1
これは、デバイスhdaのパーティション1にLinux swap領域を作る。 -c
フラッグは、パーティションに悪いブロックがないかをmkswapに点検させる。第二Linuxパーティションは、次のコマンドを使ってLinux第二拡張ファイルシステムでフォーマットした:
#> mke2fs -c /dev/hda2
文法は、mkswapと似ている。
インストレーション−
一寸した後戻りパーティションを作ったら、もう一度SuSE Linux
CDからブートした−もう一度F2を押してテキストベースのインストレーションを最適化する。今回は、swapパーティションを起動したくなったとき、作ったばかりの
/dev/hda1にあるパーティションを指定するためだ。YaSTは、このとき−少し遅いが−問題なく進行する。
これから先のインストレーションは簡単だ。SuSEのYaSTは巧みさと使い易さのバランスが取れた素晴らしいセットアップツールだ。監視すべき唯一の問題は、YaST自体のディスク・パーティショナだ。これは既存のパーティションを認識し、第二パーティションをReiserFSジャーナル・フォーマットでフォーマットし直すことを教える。これをするのは歓迎だが、swap
パーティションのフォーマット仕直しも教えている。実際に使用しているswapパーティションのフォーマットは問題を起こしそうなので、これはしない方が良いと思った。
結言YaSTは良いが、メモリを食うし、作ったswapパーティションを大幅に使うのは確実だ。Linuxをインストールして走らせると、16MBのRAMだけで必要なサービスだけは走っるのを確かめた。勿論swapパーティションには沢山の働きがある。
最終的には、ボックスにメモリを追加した。これにより、多数のユーザが求める要求を処理出来るようになった。Linuxが限られた資源でも旨く働くのに感心している。