ゼロ円でできるデュアルブート
LinuxとWindowsを共存させる

 

1. パーティション構成の検討

 OSを共存させる際には、HDDの管理方法にも留意する必要がある。HDDの「パーティション」および「ファイルシステム」という概念が、OSのインストールに大きく作用するからだ。今回共存させるWindows 98は「FAT32」、Linuxは「ext2」というファイルシステムでフォーマットされたパーティションにインストールしなければならない(一部例外もある)。たとえば、Windows 98プリインストールマシンで、HDD全体が単一のFAT32パーティションになっている場合、このままではLinuxをインストールできないということになる。

 PartitionMagicなどのパーティションユーティリティを利用すれば、既存のデータを残したままパーティション構成を変更することもできる。だが、パーティションユーティリティの利用方法は本稿の目的から外れるため、今回はOSの基本機能によるHDDの初期化を前提として話を進める。ただし、これから紹介する方法では、HDDの内容が完全に消去される。必要なデータがある場合は必ずバックアップしておくこと。

OSの仕様を確認する

 Windows 98とLinuxを共存させる場合、どのようなパーティション構成にしたらよいのだろうか? まずはOSの仕様を検討する必要がある。

Windows 98の仕様
ファイルシステムはFAT16あるいはFAT32でなければならない
OSのブートに必要なファイルがアクティブパーティションになければならない

Linuxの仕様
ファイルシステムはext2でなければならない(redhat Linuxは除く)
アクティブパーティション以外にインストールすることもできる
LILOを使う場合、カーネルが1023シリンダ以前になければならない
スワップ専用パーティションが必要(TurboLinuxはなくてもインストールできる)

 ちなみに、WindowsとLinuxではパーティションの扱い方が異なる。これについては「コラム パーティションの概念」を参照してほしい。

 また、データ専用のパーティションを用意しておくと、OSにトラブルが発生した際の処理が容易になる。データが別パーティションに保存されていれば、OSをインストールしたパーティションをフォーマットしなければならない事態にも容易に対応できる。データ用パーティションをWindows 98とLinux双方で利用できるファイルシステムにすれば、データを一元的に管理・共有することもできるなど、メリットは大きい。

パーティション構成例

 以上の点をふまえて作成したのが、以下のようなパーティション構成である。本来ならLinux用のパーティションは「/」(ルート)や「/boot」などに細分化するのが望ましいのだが、今回はシンプルを旨として単一のパーティションとした。

 下から見ると、基本パーティションはWindows 98用。アプリケーションもデータ用パーティションにインストールするなら、1〜2GB程度でもよい。また、このパーティションをアクティブにする。

 その次はLinux用パーティションで、基本パーティションあるいは論理ドライブにする。以下では基本パーティションとして話を進める。さらに、Linux用のスワップ専用パーティション。搭載メモリの2倍あるいは128MB程度でよい(カーネル2.0は128MBまでしか認識できない)。そして残りをFAT32で確保し、データ用パーティションとする。FAT32であれば、Windows 98とLinuxの双方から利用できる。

 もちろん、1と2のパーティションをより大きくしてもよい。ただし、LILOには1024シリンダの壁があるので、Windows 98用のパーティションは最大でも5〜6GB程度にしておく必要がある(後述するloadlin.exeを使う場合は1024シリンダの壁はない)。

■コラム パーティションの概念

 HDDを利用するには、必ず1つ以上のパーティションを作成しなければならない。パーティションには「基本パーティション」「拡張パーティション」「論理ドライブ」の3種類がある。基本パーティションは4つまで(DOSのFDISKでは1つしか作れない)作成できるが、基本パーティションと拡張パーティションの合計が4を超えることはできない。拡張パーティションはそのまま使うことができず、拡張パーティション上に論理ドライブを作成する必要がある。よって、実際には論理ドライブがパーティションとして扱われる。

 ここまでは各OS共通だが、パーティションの管理方法はそれぞれ異なる。DOSおよびWindowsでは、基本パーティションおよび論理ドライブを「ドライブ」として扱う。各ドライブにはC〜Z(AおよびBはFDD)までの「ドライブレター」を割り当て、HDDの先頭パーティションは必ず「Cドライブ」になる。ドライブレターの割り当ては、ドライブの物理構成などに依存し、HDDの増減によって変わってしまう可能性がある。

 Linuxでは、HDDの物理構成によって固有のデバイス名を付けるため、HDD増設の影響を受けない。たとえば、IDE HDDのプライマリのマスターは/dev/hda、スレーブは/dev/hdbで固定である。

 パーティションにも固有のパーティションナンバーが割り当てられる。1〜4までは基本あるいは拡張パーティションの番号で、基本+拡張パーティションの合計が4に満たない場合は欠番となる。拡張パーティション上の論理ドライブには5以降の番号が割り当てられる。パーティションナンバーはデバイス名に付けて表記され、Windows 98のCドライブに相当するのは「/dev/hda1」となる。「プライマリのマスターに接続されたHDDの最初の基本パーティション」という意味である。

 さらに、Linuxではパーティションを1つのディレクトリ構造に「マウント」して利用する。パーティションを/boot、/dev、/binなどに分割した場合や、物理的に異なるドライブも、必ず「/」(ルート)というディレクトリのサブディレクトリとなる。Windows 2000の「ボリュームマウントポイント」と同じ発想である。正確には、「Windows 2000のボリュームマウントポイントがUNIXのHDD管理方法に似ている」というべきだが。

 



Index
ゼロ円でできるデュアルブート
LinuxとWindowsを共存させる
1.パーティション構成の検討
OSの仕様を確認する
パーティション構成例
コラム:パーティションの概念
  2.WindowsとLinuxをインストールする
Windows 98の再インストール
redhat Linuxのインストール
そしてLILOの設定
  3.TurboLinuxの場合
データ用パーティションの作成
コラム:ブートストラップ
  4.loadlinによるLinuxのブート
loadinのメリットと導入
ブートするOSを選択できるようにする

Linux Square全記事インデックス


 Linux Squareフォーラム Windowsとの共存/連携関連記事
特集:ゼロ円でできるデュアルブート
LinuxとWindowsを共存させる

Windows 98とLinuxの最も基本的なデュアルブート環境を構築しながら、OSの共存に必要な基礎知識を紹介する
特集:続ゼロ円でできるデュアルブート
LinuxとWindows 2000を共存させる

今回はLinuxとWindows 2000の組み合わせに挑戦しよう。Windows 2000のOS LoaderにLinuxを登録する方法を紹介する
特集:ゼロ円でできるXサーバ
WindowsでLinuxをリモート操作(前編)

Windows用Xサーバは高価だ。しかしライセンスフリーのVNCなら低コストでリモート操作環境を構築できる。その方法を紹介しよう
特集:ゼロ円でできるXサーバ
WindowsでLinuxをリモート操作(後編)

今回は多ユーザー環境などに適応させるカスタマイズ方法や、inetd経由でVNCサーバを自動起動させる方法を紹介しよう
特集:真ゼロ円でできるXサーバ
Windows 2000で動かすXFree86[インストール編]

Windows上にGNU環境を作るCygwinを使って、Windows 2000でXFree86を動かしてみよう。これで完全なフリーのXサーバが手に入る
特集:真ゼロ円でできるXサーバ
Windows 2000で動かすXFree86[設定・運用編]
Cygwin/XFree86でLinuxサーバにアクセスしよう。sshによる接続や日本語入力、Win2kでWindow Makerを動かす方法まで
特集:真ゼロ円でできるXサーバ
Cygwin/XFree86最新事情と日本語化

多くのパッケージが標準setup.exeでインストールできるようになったCygwin。今回は日本語化を中心に環境構築方法を解説
特集:真ゼロ円でできるXサーバ
Cygwin/XFree86でKDE & GNOMEを使おう
Cygwin/XFree86の準備ができたので、Xサーバとして活用しよう。後半ではKDEとGNOMEを動かすための方法を解説
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間