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

2. パーティション分割の検討

2.1 ハードディスクと OS の種類

ここでは、下記のような内容を前提条件としています。これと異なる環境、例 えば 1024 シリンダを越えるとか、SCSI のハードディスクだとか 2台目のハー ドディスクにOS を載せるといったケースは除外します。2台目のハードディス クに Solaris をインストールする例は後の章で紹介します。

条件1: 5.2GB の EIDE ハードディスク1台を使用。

この HDD のジオメトリは、638シリンダ、255ヘッド、63セクタ。

後述しますが重要なのはシリンダ数です。物理的なシリンダ数でなくマザー ボードの BIOS 設定画面で表示される値です。 これが 1024 以下なら何も問題はありませんが、そうでない場合は 1024 シ リンダ以後に置かれた OS (正確には OS を起動するために必要な部分だけ です) は起動できない、という制限があります。

これを先頭からのバイト数に換算すると
1024シリンダ×255ヘッド×63セクタ×512バイト=8,422,686,720
となり 8.4GB 以上の OS は起動不可ということです。これは一般的に 「8.4GB の壁」とか「8.4GB の起動限界」などと呼ばれています。

この計算は 1KB=1000, 1MB=1000KB, 1GB=1000MB というハードディスク業界 専用(?)の容量表示の方法によるものですが、正確には 1KB=1024, 1MB=1024KB, 1GB=1024MB で計算すると
8,422,686,720÷1024÷1024÷1024=7.84GB
であり「7.8GB の壁」と言う人もいます。本当は(情報処理試験的には) 7.8GB が正解です。ハードディスクを商売にしている会社が少しでもサイズ を多く見せようと思って故意にこういうセコいことをやっているんですね。 IBM が 2進法を知らないなんてーことは、ありえないもんね (^_^)

いずれにしても私の場合は、1024 以下だったので特に何かする必要はありま せんでした。最近の 20GB, 30GB といった大容量のハードディスクはシリンダ 数が 1024 を大きく越えています。私は、このようなディスクでマルチブート する方法について実験(20GB HDD に8個のOS)しました。 これに関しては新たに別のドキュメントを作ろうと思っています。

条件2: この1台の HDD に下記4つの OS をのせる。

(1) Windows95 [500MB]
常用 OS として使うつもりは全くないが、ハードの設定とか TrueType Font の利用とか、その他参考用として入れておけば何かと便利だから入れておく ことにしました。そういった目的なら 200MB もあれば良いのかもしれません が念のため多目にしておきました。

(2) RedHat Linux 5.2 [1.5GB]
主として使うつもりの OS その1。

(3) Caldera Open Linux 1.3 [1.0GB]
実験、評価用として使う第2 Linux。
今後 Vine, Debian, Plamo, などに変わっていく予定。
今回は取り敢えず、何れも入れないで空けておく。

(4) Solaris 7 Intel版 [2.0GB]
主として使うつもりの OS その2。

2.2 パーティションの種類と配置条件

複数の OS を切替えてブートするには色々な条件や制限があって、これらを 充分に考慮する必要があります。

(1) Linux は拡張パーティションの論理ドライブに置いてもブートできますが Windows95 と Solaris は、基本パーティションでないといけません。

(2) Windows95 は第1ドライブの先頭のパーティションでないといけないとい う我がままで融通のきかない OS です。

(3) Solaris は、最後の基本パーティションに置き、しかもディスクの終端には 若干(2MBぐらい)の空きをとっておく必要があります。 これはブートマネージャ用の領域として必要なようです。 この空き領域が無いと、以下のようなエラーメッセージが表示されました。

Slice extends beyond end of disk
(スライスがディスクの終端を越えています)

もしかしたら Solaris 用のパーティションを HDD の中間において、その 直後に未使用の領域をとるような構成でも良いのかもしれませんが、私は試 してないのでわかりません。

(4) Linux の Swap パーティションも必要です。これは拡張パーティションの 論理ドライブに置けます。第1 Linux と第2 Linux で共用することにします。

今回は該当しませんが上記以外にも構成によっては考慮すべき事があります。

(5) ハードディスクの総シリンダ数が 1024以上の場合。
Solaris は 1023シリンダ以内にルート(/)のスライスを置く必要があります。

(6) 2台目のハードディスクに OS をインストールする場合。
OS によっては 2台目にインストールして起動できるものもありますが、使用 するブートマネージャが対応しているかという問題もあると思います。 マザーボード の BIOS の設定で 2台目に入っている OS をブートするという 方法もあります。

(7) SCSI と IDE のハードディスクが混在していて SCSI の方にインストールした OS を起動する場合、マザーボード の BIOS および SCSI インタフェースカー ドの設定で起動する方法もあります。

上記(5)(6)(7)の詳細に関しては参考文献をご覧下さい。

2.3 パーティションの配置例(失敗例)

参考までに失敗した配置例を示します。 前記の条件を考慮し、下記のようにしてみました。

      種類       OS                             容量     ID
     --------------------------------------------------------
      基本    Windows95                        [500MB]    6
      拡張
       (論理ドライブ)  RedHat Linux 5.2        [1.5GB]   83
       (論理ドライブ)  (Caldera Open Linux)    [1.0GB]   83
       (論理ドライブ)  Linux Swap              [ 64MB]   82
      基本    Solaris                          [2.0GB]   82
      (空き)  Solaris ブートマネージャ用       [ 16MB]  ----
この構成の場合、基本パーティションの Windows95 とSolaris は起動できるが 論理ドライブ内の2つの Linux は、何れも起動できませんでした。 Solaris のブートマネージャは、拡張パーティション内の OS は起動できない ようです。Linux のインストール時に作成した起動用フロッピーを使えば起動 出来るのですが、毎回フロッピーぢゃあかったるいですね。

ID というのは Linux の FDISK におけるパーティションID です。ここで注意 したいのが Solaris のパーティションID は 82 で Linux Swap の ID も同じ 82 であるという点です。これについては後述します。

2.4 パーティションの配置例(成功例)

上記の失敗例との違いは RedHat Linux 5.2 を、拡張パーティションの論理ド ライブではなく、基本パーティションに置いたという点だけです。 これは最終的にうまくいった配置です。

      種類       OS                             容量     ID
     --------------------------------------------------------
      基本    Windows95                        [500MB]    6
      基本    RedHat Linux 5.2                 [1.5GB]   83
      拡張
       (論理ドライブ)  (Caldera Open Linux)    [1.0GB]   83
       (論理ドライブ)  Linux Swap              [ 64MB]   82
      基本    Solaris                          [2.0GB]   82
      (空き)  Solaris ブートマネージャ用       [ 16MB]  ----


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