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

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

システム上に既にオペレーティングシステム が入っていてディスク全体を使っているときに同じディスクに Debian も入れたい場合には、ディスクのパーティション分割をやり直す必要があります。Debian は Windows や MacOS のパーティションにはインストールできません。他の Unix システムとはパーティションを共有することも可能かもしれませんが、ここではそれは取り扱いません。少なくとも、Debian の root ファイルシステムには専用のパーティションが必要となります。

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

一般に、既にファイルシステムの入っているパーティションを変更すると、中の情報はすべて破壊されてしまいます。そのため、パーティション分割をやり直す前には、必ずバックアップを取っておいてください。家の例でいうと、壁を動かす前には、家具が壊れないよう、あらかじめどかしておきます。

今の OS の中には、既存のパーティションをその内容を壊さずに移動、サイズ変更できる機能を提供しているものがあります。この機能を使うと既存データを失うことなくスペースを作ることができます。これはほとんどの場合問題なく成功しますが、ディスクのパーティションを変更することは本質的に危険な操作であり、全データを完全にバックアップした上で行うべきものです。

パーティションの作成や削除は既存の OS からと同じように debian-installer からもできます。経験則ですが、パーティションはそれを使うシステムから作成すべきです。つまり、Debian GNU/Linux により使われるパーティションは debian-installer から作成すべきで、他の OS から利用するパーティションはそちらから作成すべきです。debian-installer には Linux 以外のパーティションを作成する機能があり、そうやって作成したパーティションは他の OS から通常問題なく使えますが、ごくレアな状況でこれが問題となる可能性があります。そのため、確実を期するのであれば、他の OS で利用するパーティションの作成にはネイティブのパーティション用ツールを使ってください。

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

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

3.5.1. SunOS からのパーティション分割

SunOS で行えば、パーティション作成はまったく問題なく行えます。同一のマシン上で SunOS と Debian を運用する場合は、Debian をインストールする前に、SunOS を用いてパーティションを作成しておくことをお勧めします。Linux カーネルは Sun のディスクラベルを認識できますので、この方法で問題ありません。SILO は、EXT2 (Linux), UFS (SunOS), romfs, iso9660 (CDROM) のいずれかのパーティションから Linux および SunOS を起動できます。

3.5.2. Linux や他の OS からのパーティション分割

パーティション分割にどんなシステムを用いるにせよ、Sun disk label をブートディスクに作るのは忘れないようにしてください。これは OpenBoot PROM が認識する唯一のパーティション形式であり、すなわち起動可能な唯一の形式でもあります。fdisk を利用する場合は、s キーを使うと Sun disk label が作成できます。以前に PC (やその他のアーキテクチャ) でフォーマットされたドライブを使う場合は、新しいディスクラベルを作る必要があります。さもないと、まず間違いなくディスクジオメトリに関する問題が生じるでしょう。

おそらくブートローダ (オペレーティングシステムカーネルを起動するための小さなプログラム) には SILO を使うことになるでしょう。SILO にはパーティションサイズや格納位置に制限があります。付録C Debian でのパーティション分割 をご覧ください。