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

5. OS のインストールと動作確認

5.1 OS その 1

まず最初に世紀末型の窓を /dev/hda1 にインストールしました。 何故これが最初かというと他の OS を入れてから窓系 OS を入れると、 MBR(Master Boot Record)を壊してくれる(上書きする)からです。 復旧手段はあるのですが余計な手間は省きたいためです。

5.2 OS その 2

次に一番終端つまり OS 8用の領域に Slackware 7.0 をインストールしました。 終端にしたのは8.4GB を超えた領域の OS をブートできるか?ということをいち 早く試してみたかったからです。

ここでの注意点は、以下の通りです。Slackware 7.0 以外の Linux でも似たような ものだと思います。

  1. インストールパーティション(rootパーティション)として /dev/hda9 を 指定する。
  2. 他の Linux パーティションとして /dev/hda14 を指定する。
  3. /dev/hda14 のマウントポイントして /usr を指定する。
  4. swap パーティションとして /dev/hda15 を指定する。
  5. Boot ディスク(LILO ブートフロッピー)を作成する。(/dev/hda9用)
  6. LILO のインストール先は、MBR(Master Boot Record) を選択する。
  7. LILO の起動メニューに加える他の OS として /dev/hda1 の Windows2000 を 指定する。
結果は LILO メニューで 2つの OS を切り替えてブートすることができました。 これが確認できれば、ひと安心。

5.3 OS その 3

続いて 3 番目の OS として Linux Mandrake 6.1JP をインストールします。 注意点は、以下の通りです。

  1. インストールクラスとして「ワークステーション」や「サーバ」ではなく 、必ず「カスタム」を選択することです。 「カスタム」以外だと、自動的にパーティションが切られてしまうからです。 これは今までに入れた OS が全て消えてしまう!!ということです。
  2. インストールパーティション(rootパーティション)として /dev/hda5 を 指定する。
  3. 他の Linux パーティションとして /dev/hda10 を指定する。
  4. /dev/hda10 のマウントポイントして /usr を指定する。
  5. swap パーティションとして /dev/hda15 を指定する。
  6. 他の Linux パーティションとして /dev/hda14 を指定する。
  7. LILO のインストール先は、MBR(Master Boot Record)ではなく /dev/hda5 つまり Boot パーティションの先頭セクタとする。
  8. ブート可能パーティションとして /dev/hda1 の Windows2000, /dev/hda9 の Slackware を指定する。

ここで LILO のインストール先が、先にインストールした Slackware は MBR で、 後からインストールした Mandrake は /dev/hda5 となっている点に注意して 下さい。マシン起動時に選択できる OS の種類は、MBR に書き込まれた内容で決 まるのでこのままでは、Mandrake が選択できません。 そこで、Slackware 7.0 の /etc/lilo.conf を以下のように編集します。

  boot = /dev/hda
  message = /boot/boot_message.txt
  prompt
  delay = 300
  vga = normal
  image = /vmlinuz
    root = /dev/hda9
    label = slack70
    read-only

  other=/dev/hda1
    label="win2k"
    table=/dev/hda

  other=/dev/hda5
    label="mand61"

最後の 2 行が Mandrake を起動するために必要な部分です。上から 2行目の message = /boot/boot_message.txt という行は LILO の起動時に表示される メッセージファイルの指定です。このファイル (/boot/boot_message.txt) は 下記のような内容で新規に作成しました。

  Welcome to the LILO Boot Loader!

  Please enter the name of the partition you would like to boot
  at the prompt below.  The choices are:

  slack70 - Linux Slackware 7.0 (/dev/hda9)
  mand61  - Linux Mandrake  6.1 (/dev/hda5)
  win2k   - Windows 2000 RC2    (/dev/hda1)

この2 つのファイルを編集したら、root 権限で

  # /sbin/lilo
と入力して LILO をインストールします。 マシンをリブートすると LILO が起動し、上記の OS 選択メニューが表示され
  boot:
と表示されたところで、slack70, mand61, win2k のどれかを入力すると、それに 対応した OS が起動することを確認します。 lilo.conf の記述方法とか LILO のしくみについては、man lilo.conf で man ページを見るとか参考文献をご覧下さい。

5.4 OS その 4

4 番目の OS として Strom Linux 2000 を入れてみました。注意点は前の 2 つと 同様なので省略します。Partition Type Selection で Custom を選択して /dev/hda6 と /dev/hda11 に割り当てます。

インストール中に、Boot Manager Configuration のところで起動する OS として /dev/hda1 (win2k), /dev/hda5 (mand61), /dev/hda9 (slack70) を指定したら

  Error: There seems to be a problem with your lilo configuration.
  Added storm2k *
  Added win2k
  Partition entry not found.
というエラーが出ました。「LILOの設定に問題がある、パーティションエントリが 見つからない」といってます。storm2k と win2k は Added となっているので良い のですが mand61 と slack70 がまずいようです。

インストールする OS を Windows 以外は全て Linux だと仮定した場合、最終的に は各パーティションに計 7 つの /etc/lilo.conf が存在することになります。 MBR に書き込むのは、そのうちのどれか 1 つです。私はこれを Slackware に して、他の 6 個はそれぞれの Boot パーティションの先頭セクタに LILO をイン ストールするつもりでいました。

つまり、Strom Linux の LILO のインストール先も、Boot パーティションの先頭 セクタにしたいのですが、Mandrake 6.1 の時のように LILO のインストール先を 選択する場面がありません。しかたがないので、ここでは Boot Manager で選択で きるのは storm2k と win2k のみとし、mand61 と slack70 の 2 つはインストー ルが終ってから設定することにして先に進むことにしました。

インストールが終ってマシンをリブートすると、Strom Linux の派手なブート マネージャの画面が表示されました。Strom Linux の LILO が MBR にインストー ルされたようです。

そこで最初の計画を変更して、Strom Linux の /etc/lilo.conf に他の OS を追加 定義して MBR に書き込むことにしました。以下にこれを編集した内容を示します。

  boot = /dev/hda
  root = /dev/hda6
  install = /boot/boot.b
  map = /boot/map
  vga = normal
  timeout = 300
  message = /boot/message
  prompt

  image = /vmlinuz
    label = "storm2k"
    read-only

  other=/dev/hda1
    label="win2k"
    table=/dev/hda

  other=/dev/hda5
    label="mand61"

  other=/dev/hda9
    label="slack70"

このファイルを編集してから、

  # /sbin/lilo
とすると hda9 does not have a valid boot signature というエラーが表示 されました。そこで上記の最後の 2 行の先頭に # を付けてコメントアウトした らエラーは出なくなりました。
  #other=/dev/hda9
  #  label="slack70"
マシンをリブートすると、ブートメニューから storm2k, win2k, mand61 を選択 してブートできます。mand61 を選択するとさらに LILO のメニューが表示され その中から slack70 を選んでブートできます。

これで一応 4 つの OS を選択してブートできるのですが、slack70 をブートする ために LILO を 2 回も表示させるのはスマートではありません。そこで、先ず最 初に Slackware 7.0 (/dev/hda9) の /etc/lilo.conf の先頭の部分を下記のよう に編集します。

  
  boot=/dev/hda9
元は boot=/dev/hda (つまり MBR) となっていたのを hda9 (Boot パーティション の先頭セクタ)に変えるだけです。編集後、lilo コマンドを忘れずに実行しましょ う。lilo.conf を編集しただけでは何も変わりません。lilo コマンドを実行して 初めて LILO がインストールされるということをしっかり覚えておきましょう。

次に、先ほど Storm Linix 2000 (/dev/hda6) の /etc/lilo.conf で、エラーが 出たときにコメントアウトしたところを元に戻します。つまり

  
  other=/dev/hda9
    label="slack70"
のように編集します。編集後の lilo コマンドを忘れずに。くどいと思うでしょ うが、実によく忘れるのです、これが。
  
    Added storm2k *
    Added win2k
    Added mand61
    Added slack70
とエラー無しで表示されれば OK です。リブートすると 4 つの OS の中から選択 してブートできるようになりました。

5.5 その他の OS

現時点では、ここまでです。目標 8 個のうち半分の 4 つの OS しかインストール していません。しかしあとはこれまでと同じことの繰り返しだろうと思っています。

Free Solaris 7 はインストールに失敗しました。これは今回の実験に PC CHIPS 社 の M741LMRT という、グラフィックス、サウンド、モデム、LAN が全て内蔵されて いるマザーボードを使ったのですが、これに載っている SiS620 というグラフィッ クスのチップが新しいので Solaris 7 がまだ対応していなくて認識できないため ではないかと推測しています。別のパソコンでは正常にインストールできました。 なお XFree86 はバージョン 3.3.5 からこのチップに対応しています。

Free の Unixware 7.1 は、まだ試していませんがこれも同じ理由でうまくいかない かもしれません。


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