ディスクのパーティション分割とは、単にディスクをいくつかの区画に分割する ことです。それぞれの区画は、互いに独立しており、大まかに言えば、 家を壁で仕切るようなものです。 ある部屋に家具を置いても、他の部屋には影響がないのと同じです。
もし、すでに何らかの OS (Windows95、Windows NT、OS/2、MacOS、Solaris、 FreeBSD) がインストール済みで、それと同じディスクに Linux をインストールするなら、おそらくディスクのパーティションを切り直す 必要があるでしょう。 一般的に、すでにファイルシステムが形成されているパーティションに変更を 加えることは、そこに保持された情報をいくらか破壊することを意味します。 そのため、パーティションを切り直す前には、 必ずバックアップをとっておくべきです。先ほどの家の例を持ち出せば、 壁を移動したり、何か壁をこわしかねないようなことをするときに、 ふつうはあらかじめ家具を邪魔にならないところに移動しておくでしょう。
GNU/Linux には、それ自身のために最低限一つのパーティションが必要です。 オペレーティングシステム全体、つまりアプリケーションや個人的なファイルを 一つのパーティションに収めることができます。また、常に正しいとは限りませんが、 たいていのユーザはスワップパーティションも必要だと考えます。 「スワップ」とは、オペレーティングシステムが用いるメモリの一時退避用空間 です。これは、システムが安価なディスク記憶装置を「仮想記憶」として用いる ことを可能にするものです。 スワップを独立したパーティションに割り当てることは、その利用をより 効果的なものにします。 (Linux に普通のファイルをスワップとして利用させることも可能ではありますが、 お勧めできません。)
しかし、多くの人々は最低限必要な数よりも多くのパーティションを GNU/Linux に割り当てます。 ファイルシステムをいくつかのより小さなパーティションに分割する理由には二つ あります。一つめは安全性です。もし、偶然に何かがファイルシステムを破壊した としても、 一般的にその影響を被るのは一つのパーティションだけです。そのため、システム の一部を (注意深く保持しておいたバックアップと) 取り換えるだけですみます。 最低限、いわゆるルートパーティションを作ることは考慮すべきです。ここには システムの最も基本的な構成部分が収められ、もし他のパーティションに破損が 生じたとしても、システムを補修するために Linux をブートすることができます。 このことは、システムをゼロから再インストールしなければならないような トラブルを防ぎます。
二つめの理由は、コンピュータの利用方法にかなり依存する問題ではありますが、
一般的に商利用の際により重要になってくるものです。
何かが管理の外でディスクスペースを消費し始めたと仮定します。もしその
プロセスがルート特権を得るようなことが起きれば (システムは一般ユーザが
使用できないディスク領域をある程度確保しています)、
ディスクスペースがなくなっていることに突然気づかされるでしょう。
OS は、さまざま作業のために (スワップスペースのほかに)
実ファイルを利用する必要があるので、このことは不具合を引き起こします。
さらに、このことは、ローカルシステムに由来する問題でないこともありえます。
例えば、電子メールとしてスパムメールを取り込むことは、パーティションを容易
に溢れさせえます。より多くのパーティションを用いることは、このような問題の
多くからシステムを保護するのです。
もう一度電子メールの例を取り上げるならば、/var/spool/mail
に独自のパーティションを割り当てれば、スパムメールを取り込んでも、
システムの大半はその動作に支障はないでしょう。
より多くのパーティションを利用する際に、唯一実際に障害となるのは、 あらかじめどのようなパーティションが必要となるかを予測することが、 多くの場合難しいことです。 もしあまりに小さなパーティションを用意したなら、 システムを再インストールしたり、 容量の足りないパーティションにスペースを空けるために、 しょっちゅうファイルを移動したりしなければならないでしょう。 一方、あまりに大きなパーティションを用意すれば、 他で利用できるスペースを浪費しかねません。 近頃はディスクも安価になったとはいえ、お金を無駄に使う必要はないでしょう?
どのような種類のマシンを構築するのか決めることは重要です。 このことから、必要なディスク容量は決定されるでしょうし、 パーティション分割の方針も影響を受けるでしょう
Debian では、利用者の便宜に合わせて標準的な「プロフィール」がいくつか用意 されています。(プロフィールの選択とインストール, Section 7.20 をご覧ください。) プロフィールとは、パッケージの選択がより簡単になるように用意された、 パッケージ選択の単なるセットです。 これはいくつかのパッケージに、 インストールされるよう自動的にマークを付けてくれます。
用意されたプロフィールは、それぞれインストール完了時の システムサイズが異なります。 これらのプロフィールをお使いにならないとしても、 システム設計にこちらの論議は重要です。 なぜならこれは、パーティションのサイズや、 必要になるパーティションの数を決定する際のヒントを与えてくれるからです。
以下は、ご利用いただけるプロフィールのいくつかとそのサイズをまとめたものです。
心に留めておいていただきたいのですが、こちらのサイズには、
通常よく使われるユーザファイルや電子メイル、データなどの他のファイルが、
まったく含まれていません。
ご自身のファイルやデータのスペースは、大きめに見積もることが常に肝要です。
特に、 Debian の /var
パーティションには、
たくさんのシステム情報が収められます。
dpkg
ファイル (インストール済みパッケージの情報など)
はゆうに 20MB は消費します。
またログファイルやその他のファイルのために、
通常少なくとも /var
パーティションに
50MB は空けておいてください。
Linux におけるディスクおよびパーティションの命名法は、他のオペレーティング システムとは異なっています。パーティションを作成したりマウントする際には、 Linux がどのようなディスク名を用いるのか知っておく必要があります。 以下は基本的な命名法の仕組みです。
各ディスクのパーティションは、ディスク名に十進数を付け加えることで 表します。例えば、``sda1'' と ``sda2'' はそれぞれ、システムにある 第 1 SCSI ディスクドライブの第 1、 第 2 パーティションを表します。
実際にありそうな例をあげてみましょう。 二つの SCSI ディスクを持つシステムで、一方の SCSI アドレスが 2、もう一方の SCSI アドレスが 4 だとします。 最初のディスク (アドレス 2) は ``sda''、 二つ目のディスクは ``sdb'' と名付けられます。 もし ``sda'' ドライブに 3 つのパーティションがあるなら、 それらは ``sda1''、``sda2''、``sda3'' と名付けられます。 ``sdb'' ディスクとそのパーティションにも同じことが当てはまります。
もし二つの SCSI ホストバスアダプタ (コントローラ) がある場合、 ドライブの順序が混乱するかもしれないことに注意してください。 ドライブのモデルを知っていると仮定するなら、 このケースでの最もよい解決策はブートメッセージを見ることです。
すでに述べたとおり、独立した小さなルートパーティションは必ず作るべきです。
また、スペースがあるならば大きな /usr
パーティションを作るべきです。
例をあげるなら、大抵のユーザは最初のうちはパーティションを二つ用意すれば
十分でしょう。パーティションをたくさん用意することはディスクスペースを
浪費するので、小さなディスクを一つしか持っていない場合には、
特にこうするのが適切です。
もし、Debian のディストリビューションに含まれていないプログラムをたくさんイン
ストールしようと考えているならば、/usr/local
パーティションを
必要とする場合もあるでしょう。
また、メイルサーバとして利用するならば、 /var/spool/mail
に
別のパーティションを必要とするかもしれません。
/tmp
に 20 から 32MB ほど、独自のパーティションを割り当てるこ
とは、多くの場合よい考えです。
たくさんのユーザアカウントをかかえるサーバを設置するなら、独立した大き
な /home
パーティションを用意することも概してよいことです。
このように、パーティション割り振りの条件は、一般的に利用法の違いからコン
ピュータによってさまざまです。
とても複雑なシステムのためには、
マルチディスク HOWTO
をご覧になるとよいでしょう。
こちらには、ISP の管理者やサーバを設置する方の関心事の多くが、
詳細な情報として含まれています。
スワップスペースの問題に関しては、さまざまな見方があります。大雑把ながらも よいやりかたは、搭載しているシステムメモリーと同じ容量のスワップを用意する ことです。ただ、64MB 以上のスワップは大抵のユーザにとってはおそらく意味が ないでしょう。またたいていの場合、スワップを 16MB より小さくするのも避ける べきでしょう。 もちろん、これらのルールにも例外はあります。例えば 256MB ほどの RAM を積んだマシンで、10000 もの方程式を同時に解こうとするならば、1GB (もしくはそれ以上) ものスワップを必要とするでしょう。
お使いになるアーキテクチャ用の
Linux が、単一のスワップパーティション上では 512 MB
以上のスワップを用いないことには注意してください。
ただ、インストールの後、512 MB 以上のスワップ
を用意するために、/etc/fstab
を直接編集し、
複数のスワップパーティションを有効にすることはできます。
もしこのようにたくさんのスワップを必要とするならば、おそらくは、
異なるディスクにスワップ領域を分散するよう
(この手法は「スピンドル」とも呼ばれる)、試みるべきでしょう。
もしくは、この制限が緩和された最新の Linux カーネル
(2.2 以降) を試すこともできます。(ただこのことは、
他のシステム上の変更を要することもありますのでご注意ください。)
一例として、32MB の RAM と /dev/hda
に 1.7GB IDE
ハードディスクを搭載した著者の一人のホームマシンの例をあげましょう。
/dev/hda1
には 500MB の DOS パーティションがあります。
(それほど使うわけではないので 200MB 程度にするべきでした。)
/dev/hda3
を 32MB のスワップパーティションとして使用し、
のこり (約 1.2GB の /dev/hda2
) を、
Linux パーティションにしています。
パーティションの分割は、Debian をインストールする前と、インストールの最中 の二度にわたって行うことができます。 お手持ちのコンピュータを Debian 専用機にする場合には、 ブートプロセスの間にパーティションを作成 (``Partition a Hard Disk'', Section 7.6) すべきでしょう。 一方、複数のオペレーティングシステムを持つマシンをお持ちの場合は、 一般的には各オペレーティングシステムで、 それ専用のパーティションを作成すべきです。
以下の節では、インストールに先だって行うネーティブ オペレーティングシステム上でのパーティション分割に関する情報を扱います。 なお、他のオペレーティングシステムが参照するパーティション名と Linux が付けるパーティション名がどのように対応するのは確認しておくべきでしょう。 Linux におけるデバイス名, Section 4.3 をご覧ください。