3.5. マルチブートシステムでの事前パーティション分割

「ディスクのパーティション分割」とは、ディスクをセクションに分けることです。 各セクションは他のセクションから独立しています。 この作業は要するに、家の中に壁を作るようなものです。 ある部屋に家具を入れても、それは他の部屋には影響しないというわけです。

システム上に既にオペレーティングシステム (Windows 9x, Windows NT/2000/XP, OS/2, MacOS, Solaris, FreeBSD, …) が入っていて、同じディスクに Linux も入れたい場合には、 ディスクのパーティション分割をやり直す必要があります。 Linux は Windows や MacOS のパーティションにはインストールできません。 他の Linux システムとはパーティションを共有することも可能かもしれませんが、 ここではそれは取り扱いません。 少なくとも、Debian の root には専用のパーティションが必要となります。

現在のパーティションの設定は、 fdisk や PartitionMagic のような、現在の OS に対応したパーティション分割ツールを使えばわかります。 パーティション分割ツールには、 必ず既存のパーティションを (変更せずに) 表示する機能が付いています。

一般には、既にファイルシステムの入っているパーティションを変更すると、 そこの情報はすべて破壊されてしまいます。 従って、パーティション分割をやり直す前には、 必ずバックアップを取っておくべきです。 また家の比喩を用いてみましょう。 壁を動かす前には、家具が壊れないよう、それらは前もってどけておくでしょう? 幸運にも、 場合によっては情報が破壊されずにすむこともあります。 項3.5.1.1. 「DOS, Windows, OS/2 から無駄なくパーティションを切り直す 」 を見てください。

コンピュータに 2 台以上のハードディスクがある場合は、 その内の 1 台を Debian 専用にするといいかもしれません。 そうすれば、インストールシステムの起動前に パーティション分割を行う必要はありません。 インストーラに含まれているパーティション分割プログラムが、 この仕事を的確にこなしてくれます。

マシンに 1 台しかディスクがなくても、現在の OS を Debian GNU/Linux で完全に置き換えてしまうつもりなら、 パーティション分割はインストーラを起動した後で、 インストール作業の一部として行って構いません (項6.3.5. 「ディスクのパーティション分割」)。 しかしこれが可能なのは、インストーラシステムをテープ、CD-ROM、 接続されたマシンのファイルのいずれかから起動する場合だけです。 ちょっと考えてみてください。ハードディスクにあるファイルから起動して、 起動したインストールシステムからそのファイルのあるディスクを パーティション分割し、つまり起動ファイルを消してしまったとしたら。 そのインストールが一発でうまいこと行くように祈るしかないですね。 まあこの場合に最悪の状況となったとしても、 もともと入っていたシステムのインストールテープや CD などで、 コンピュータを元の状態に戻す方法はきっとあるでしょうが。

既にコンピュータに複数のパーティションがあり、 それらの一部を消したり置き換えたりすることによって 充分な空き領域が確保できる場合にも、 Debian インストーラのパーティション分割プログラムで作業を行って構いません。 しかしこの場合でも、以降の内容は目を通しておきましょう。 パーティションマップ中の現在のパーティションの並び順などによって、 いずれにしてもインストール前にパーティション分割作業を しなければならないような場合もあり得るからです。

その他の場合はすべて、インストールをはじめる前に パーティション分割を行い、Debian に割り当て可能な領域を 作ってやらなければなりません。 一部のパーティションを他の OS に使う場合は、 そのパーティションはその OS のパーティション分割ツールで 作成するほうが良いでしょう。 しかし Debian の Linux パーティションは、 他の OS のツールでは作らないようお勧めします。 そのツールで作るのは、 残しておきたい OS のパーティションだけにしてください。

同じマシンに複数の OS をインストールするつもりでしたら、 Linux をインストールする前に、 他の OS を全部先にインストールしておきましょう。 Windows などの他の OS をインストールすると、 Linux を起動する機能が破壊されてしまったり、 あるいはその OS のものでないパーティションを フォーマットし直すよう促されたりするからです。

このような動作から復旧したり、そのような提案を断ったりすることはできますが、 先にそちらのシステムをインストールしておけば、 最初からトラブルを避けることができます。

現在ディスクがひとつ、パーティションもひとつ (デスクトップコンピュータだと普通の設定) になっていて、元の OS と Debian との デュアルブートにしたい場合は、以下の手順を踏む必要があります。

  1. コンピュータのすべてをバックアップする。

  2. 元の OS のインストールメディア (CD-ROM やテープ) から起動する。

  3. 既存の OS のパーティション分割ツールを使って、 そのシステムのパーティションを作る。 Debian GNU/Linux 用にも場所埋めのパーティションか、空き領域を作る。

  4. その OS を、新しくつくったパーティションにインストールする。

  5. 新しく入れたその OS で起動しなおして、すべて問題ないか確かめる。 問題なければ Debian インストーラの起動ファイルをダウンロードする。

  6. Debian インストーラを起動して、Debian のインストールを続ける。

3.5.1. DOS や Windows からのパーティション分割

既存の FAT もしくは NTFS パーティションを扱う場合には、 以降で説明する方法を用いるか、 あるいは Windows や DOS のツールを用いることをお勧めします。 扱わない場合には、 DOS や Windows からパーティションを分割する必要はまったくありません。 一般的に Linux 上のパーティション分割ツールを使えば、 より適切に作業が行えます。

ただし大きな IDE ディスクを用いる場合で、 LBA アドレスも、オーバーレイドライバ (HDD のメーカーから提供されることが時々あります) も、 ラージディスクアクセス拡張をサポートした新しい (1998 年以降の) BIOS も ないときには、Debian のブートパーティションは注意して配置しなければなりません。 このような場合、ブートパーティションをハードドライブの 先頭 1024 シリンダ以内に収めなければなりません (これは BIOS 変換がなければ、通常 524 メガバイトになります)。 これはすなわち、既存の FAT パーティションや NTFS パーティションを移動しないといけないことを意味します。

3.5.1.1. DOS, Windows, OS/2 から無駄なくパーティションを切り直す

よくあるインストールのかたちとして、 すでに DOS (Windows3.1 も含む)、 Win32 (Windows 95, 98, Me, NT, 2000, XP)、 OS/2 などが入っているシステムに、 新たに Debian をインストールするような場合があり、 既存のシステムを壊すことなく、 同じディスクに Debian を入れるという要望があります。 項A.1. 「Debian のパーティションとそのサイズを決める」 で説明されているように、 事前に何らかの処理を行わない限り、 不用意に既存のパーティションのサイズを減らすと、 まず間違いなくそのパーティションのデータを壊してしまうでしょう。 以下に述べる方法は、データを完全に護る保証はありませんが、 実際には非常にうまく動作するはずです。 ただ用心のために、バックアップは取るべきです

先に進む前に、ディスクをどのように分割するのか決めておかなければなりません。 この節では 1 つのパーティションを 2 つに分割する方法のみ説明します。 そのうち 1 つには既存の OS を残し、もう 1 つを Debian で利用します。 なお、Debian に割り当てたディスク領域を、 どの用途 (スワップかファイルシステムか) に どのくらいずつ割り当てるかは、Debian インストールの途中で決定できます。

ここで紹介する方法は、パーティション情報を変更する前に、 パーティション上の全データを、 そのパーティションの先頭部分に移動するというものです。 こうすることでデータの損失はなくなります。 パーティションの後ろの方にファイルが存在すると、 そのパーティションから得られる空き領域が減ってしまいます。 従って、データの移動とパーティションの切り直しの最中に、 ファイルがパーティションの終りの方に 書き込まれないようにするのが大切です。

まず最初に必要となるのは、fips のコピーです。 これはお近くの Debian ミラーサイトの tools/ ディレクトリから入手できます。 そのアーカイブを unzip して、RESTORRB.EXE, FIPS.EXE, ERRORS.TXT の各ファイルを 起動可能なフロッピーにコピーしてください。 起動可能なフロッピーは、DOS 上で sys a: というコマンドを 用いれば作成できます。 fips には大変優れたドキュメントが用意されていますので、 読んでおくとよいでしょう。 特にディスク圧縮ドライバやディスクマネージャを使っている場合は、 このドキュメントは必ず読んでおくべきでしょう。 ディスクをデフラグメントする に、 このフロッピーディスクを作り、ドキュメントを読んでください。

次に必要となるのは、すべてのデータをパーティションの前方に移動する作業です。 DOS 6.0 以降に標準で用意されている defrag を使えば、 これは簡単です。同じような作業を行える他のソフトウェアの一覧は、 fips のドキュメントに書いてあります。 Windows9x を使っている場合は、Windows9x の方から defrag を実行しなければならないことに注意してください。 DOS は VFAT (Windows95 以降で使われており、 長いファイル名をサポートする) を認識できないからです。

デフラグツールを実行した後 (大きなディスクでは少々時間がかかります)、 先ほど作成した、fips を収めたフロッピーディスクを ドライブに挿入してリブートしてください。 起動したらそのまま a:\fips と打ち込んで、 その指示にしたがってください。

fips ではうまくいかない場合のために、 他にもパーティション管理ソフトウェアはたくさんあることを 心に留めておいてください。

3.5.1.2. DOS のパーティションを分割する

DOS のドライブにパーティションを作成したり、DOS パーティションの容量を 変更したりする作業を Linux のツールで行うと、 その結果できた FAT パーティションでの作業に問題が残ることがあるようです。 例えば DOS や Windows 上でパフォーマンスが落ちたり、 scandisk で整合性の問題が起きたり、 その他原因不明のエラーに遭遇したりといった報告例があります。

どうやら、 DOS で使用するパーティションを作成したりその容量を変更したりする場合は、 その最初のいくつかのセクタを 0 で埋めておくのが良いようです。 DOS の format コマンドを実行する前に、 Linux から次のコマンドを実行してください。


dd if=/dev/zero of=/dev/hdXX bs=512 count=4