次のページ 前のページ 目次へ

6. インストール

インストールは三段階に分かれます。第一は、基本となる OS を所定のドライブ上に構 築すること。第二は、どれでも好きな OS をセカンドディスク上に構築すること。最後 に、両方のディスクが使えるように BIOS と LILO を設定し直すこと。

6.1 基本となるオペレーティングシステムのインストール

操作の基本となる OS のインストールはきわめて単純です。Linux 用の単一のドライブ にシステム設定をするときのようにやればいいのです。インストールの詳細について は、お使いのディストリビューションに付属のドキュメントか、 http://www.linuxdoc.org/HOWTO/Installation-HOWTO.html を参照してください。 (訳注:日本語訳 http://www.linux.or.jp/JF/JFdocs/Installation-HOWTO.html)

とはいえ、もともとが複数のディスクシステムでのインストールですから、インストー ルの過程でインストールルーチンが単一のディスクだと思い込むようなトリックを使う 必要があり、そのためにいくつかの段階を踏みます。

まず最初に、リムーバブルディスク装置のハードドライブを抜きます。そして、BIOS 画 面で、残ったドライブがフロッピーに続く二番目のブートドライブとして認識されてい ることを確認してください。オペレーティングシステムのインストールプログラムは一 台のディスクだけ、つまりあなたがこれからインストールするディスクだけを見るべき だからです。そうすれば、どこにインストールするかという問題自体が生じませんし、 単一ディスクのシステム構築に必要なすべてのものがインストールされます。

インストールプログラムからの質問には、オペレーティングシステムのためにディスク 全体を使うと答えてください。わたしは、Redhat のデフォルトのパーテイション設定の ままにして、LILO にも手を加えずに MBR にインストールしました。

インストールが終了したら、シャットダウンとリブートでシステムがうまく動くか確か めてください。この段階で、直接 Linux が起動する完全なマシンになっているはずで す。

6.2 その他のオペレーティングシステムのインストール

ここまでで完全に稼働するシステムがひとつできたので、他のオペレーティングシステ ムをセカンドディスク上に構築する作業に進みましょう。

セカンドディスクにインストールするオペレーティングシステムをひとつかふたつ選ん でください。わたしは特別な理由はないのですが、最初のテストケースとして Windows98 と BeOS を選択しました。そして、8GB のドライブを 4GB のプライマリ パーテイションに二分割して、最初のパーテイションに Windows98 を、ふたつ目に BeOS をインストールしました。

このインストールでは、前回やったのと同じことをしてください。BIOS でファースト ディスクを使用不可にして、インストーラからは見ることすらできないようにします。 これはとても大切なことです。ファーストディスクを物理的に取り外すかコネクターを 抜けるなら、そうしてください! そうすれば、あなたが何らかのミスをしても基本シス テムは安全ですし、二度目のインストール中に、見つけたすべてのディスクを乗っ取ろう とする法外に欲の深いオペレーティングシステムの餌食にならずにすむでしょう。 もし将来別のリムーバブルディスクを作ろうと決めたときにも、この手順を繰り返すこ とを忘れないでください。

それがすんだら、単一ドライブのシステムにインストールする時のように好きなオペ レーティングシステムをインストールしてください。

もしセカンドディスクにひとつしかオペレーティングシステムをインス トールしないのなら、インストールディスクを挿入してそのまま作業を進 めてください。Windows95 や 98、あるいはふたつ目の Linux も含めた他 のオペレーティングシステムであっても、この方法でなんの問題もありま せん。Windows9x には MBR を上書きさせてあげましょう。Linux のインス トールなら、LILO の置き場所は MBR にしてください。

わたしはセカンドディスクにふたつのオペレーティングシステムをイ ンストールしようと決めたおかげで、複数のブートローダを使うとどうい うことが起こるのか確かめることができました。

わたしは最初に Windows98 をインストールしました。なぜなら、 Windows98 は自動的に MBR を上書きするようになっていて、わたしが 結局そこにどんなブートローダのコードを置こうと全部上書きしてし まうからです。次にわたしはセカンドパーテイションに BeOS をイン ストールし、BeOS のブートローダである bootman を走らせました。 それを使ってセカンドディスクのブートメニューを作成し、意図的に Windows98 の作った MBR を上書きしたのです。

Bootman が絶対必要だったわけではなく、MBR に置けるブートローダ なら何でもよかったのですが、手近にそれがあったのとしかも良くで きていることから使用しました。

何度か再起動し、単一のディスクシステムとしてすべてうまく動くこと を確かめてください。わたしはそれぞれの OS のインストール終了時 に再起動して、各々がうまく動くか、またブートローダのメニューが機 能するか確かめました。

6.3 最後に BIOS と LILO の設定

次に、BIOS を再設定してファーストディスクをブートディスクとして認識し直すように します(先ほどケーブルを物理的に抜いていた場合は、再接続してください)。セカン ドディスクの方も認識させたままにしてください。設定方法は、使っているシステムに よって異なり、使用する BIOS, 及びディスク構成が SCSI/IDE か IDE/IDE のいずれで あるかにも依存します。SCSI ディスクとそのリムーバブルフレームは IDE のものに比 べてかなり値段が高いので、わたしは、SCSI/SCSI 構成については試していません。 基本となる OS についてはパフォーマンスが欲しいですが、他方に関しては安物でかま わないからです。

セカンドディスクのディスクタイプを "Auto" か "Automatic" に 設定するのを忘れないでください。そうすることで、起動の際 BIOS が動的にディスク タイプを決定するようにするのです。わたしはセカンドディスクとして、年代物の 512MB ディスク、4GB, 8GB,それに 100MB の IDE ZIP ディスクを使ってうまくいきまし た。BIOS はすべてを自動で認識しました。

システムを再起動し、Linux に戻りましょう。この時点で少なくともふたつのオペレー ティングシステムがインストールされているのですが、それにもかかわらずこのマシン の LILO はもとの Linux のことしか知らないので、自動的にそれを起動しに行きます。 ブートプロセスを注意して見ていてください。そうすると、ディスクをひとつ自動認 識したというメッセージが出てくるはずです。起動が終了したら、Linux がセカンド ディスクを認識したかどうか dmesg でチェックしてください。

以上が済んだら、ファーストディスクにある LILO の設定を変更 して、LILO にもセカンドディスクを認識させなければなりません。 以下は二種類の lilo.conf ファイルです。ひとつは SCSI/IDE システ ム用で、もうひとつは IDE/IDE 用です。どちらのシステムも一長一短 といったところでしょうか...

# 以下の lilo.conf ファイルは、内蔵 SCSI ディスクと IDE の primary master に
# 接続されたリムーバブルディスクのためのものです。 

disk = /dev/sda         #  左の四行は、SCSI ディスクをプライマリディスク
   bios = 0x80          #  としてマッピングし直すために必要です。
disk = /dev/hda         #  BIOS で SCSI ディスクが起動ディスクになってい
   bios = 0x81          #  たとしても設定してください。
                        #  この設定は、BIOS によって異なるようです。
                        #  (訳注: bios = 0x?? は、ディスク構成と BIOS に
                        #  依存します。)

# 上記の設定をしないと、LILO から以下のメッセージをもらうでしょう:
#  
#  LILO version 21, Copyright 1992-1998 Werner Almesberger
#
# ading boot sector from /dev/sda
# Warning: /dev/sda is not on the first disk
# そして LILO は、LI でハングするか、01 を画面いっぱいに永遠と出力し続け
# るでしょう。

boot=/dev/sda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.2.12-20smp
   label=Linux
   root=/dev/sda1
   initrd=/boot/initrd-2.2.12-20smp.img
   read-only
other = /dev/hda

# other = /dev/hda というのが鍵です。特定のパーテイションに LILO を
# リダイレクトする代りに、セカンドディスクの MBR にリダイレクト
# しています。
# そうすれば、LILO はセカンドディスクに関して何も知る必要がなくなります。
# セカンドディスク上のディスクの種類に関係なく LILO がいつも同じ場所を
# アクセスするので、セカンドディスクの交換が可能になります。
# こんなことができるブートローダは、わたしの知る限り LILO だけです。
   label = Disk2
   map-drive = 0x80
      to = 0x81
   map-drive = 0x81
      to = 0x80
# map-drive という行が必要なのは、セカンドディスクに自分が本当に
# ブートディスクであることを自覚させるためです。


# 以下の lilo.conf ファイルは、ふたつの IDE ディスクを持ったシステム
# のためのものです。
# どちらも master で、/dev/hda は primary 、/dev/hdc は secondary で
# 接続されています。
# /dev/hdb には IDE の primary/slave 接続で、CD-ROM を繋いでいます。
# disk = /dev/hda       # 左の行は、IDE/IDE のインストールでは不要です。
#    bios = 0x80        # どういう順序で接続されているか、BIOS はすでに
# disk = /dev/hdc       # 知っているからです。
#    bios = 0x81
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.2.5-15
        label=linux
        root=/dev/hda4
        read-only
other = /dev/hdc
# other = /dev/hdc というのがここでも鍵を握っています。この設定に
# よって、LILO はセカンドディスクの MBR にリダイレクトされます。
# そこにどんなプログラムがあってもそれに処理を引き継がせるわけです。
   label = Disk2
   map-drive = 0x80
      to = 0x81
   map-drive = 0x81
      to = 0x80

上記の /dev, boot, map, image といった設定項目はシステム固有のもので、 おそらくあなたの設定とわたしのとでは異なるでしょう。あなたの Linux の最初の /etc/lilo.conf ファイルを見てください。その設定値を見れば、ご自分の システムを知る正確な指針が得られるはずです。わたしは、Linux に関する項目をその 最初のインストール時に生成された lilo.conf ファイルから新しい lilo.conf ファイルに直接コピーしました。こうしておけば万一、 "Disk2" の設定に完全に失敗しても、"Linux" を起動して lilo.conf を修正することができます。

最後に、lilo -vvv と打って、LILO があなたの設定に同意するか 確かめてください。


次のページ 前のページ 目次へ