[ 前のページ ] [ 概要 ] [ 著作権表示 ] [ 目次 ] [ 次のページ ]

Debian GNU/Linux 2.2 のインストール (Motorola 680x0)
章 4 ハードディスクのパーティション分割


4.1 背景

ディスクのパーティション分割とは、単にディスクをいくつかの区画に分割する ことです。それぞれの区画は、互いに独立しており、大まかに言えば、 家を壁で仕切るようなものです。 ある部屋に家具を置いても、他の部屋には影響がないのと同じです。

もし、すでに何らかの OS (Windows95、Windows NT、OS/2、MacOS、Solaris、 FreeBSD、…) がインストールされているディスクに Linux を インストールするなら、おそらくディスクのパーティションを切り直す 必要があるでしょう。 一般的に、すでにファイルシステムが形成されているパーティションに変更を 加えることは、そこに保持された情報をいくらか破壊することを意味します。 そのため、パーティションを切り直す前には、 必ずバックアップをとっておくべきです。先ほどの家の例を持ち出せば、 壁を移動したりするときには、ふつうはあらかじめ家具を邪魔にならない ところに移動しておくでしょう。 さもなければ家具を壊してしまいかねません。

GNU/Linux には、それ自身のために最低限一つのパーティションが必要です。 オペレーティングシステム全体、つまりアプリケーションや個人的なファイルを 一つのパーティションに収めることができます。また、常に正しいとは限りませんが、 たいていのユーザはスワップパーティションも必要だと考えます。 「スワップ」とは、オペレーティングシステムが用いるメモリの一時退避用空間 です。これは、システムが安価なディスク記憶装置を「仮想記憶」として用いる ことを可能にするものです。 スワップを独立したパーティションに割り当てることは、その利用をより 効果的なものにします。 (Linux に普通のファイルをスワップとして利用させることも可能ではありますが、 お勧めできません。)

しかし、多くの人々は最低限必要な数よりも多くのパーティションを GNU/Linux に割り当てます。 ファイルシステムをいくつかのより小さなパーティションに分割する理由には二つ あります。一つめは安全性です。もし、偶然に何かがファイルシステムを破壊した としても、 一般的にその影響を被るのは一つのパーティションだけです。そのため、システム の一部を (注意深く保持しておいたバックアップと) 取り換えるだけですみます。 最低限、いわゆるルートパーティションを作ることは考慮すべきです。ここには システムの最も基本的な構成部分が収められ、もし他のパーティションに破損が 生じたとしても、システムを補修するために Linux をブートすることができます。 このことは、システムをゼロから再インストールしなければならないような トラブルを防ぎます。

二つめの理由は、コンピュータの利用方法にかなり依存する問題ではありますが、 一般的に商利用の際により重要になってくるものです。 何かが管理の外でディスクスペースを消費し始めたと仮定します。もしその プロセスがルート特権を得るようなことが起きれば (システムは一般ユーザが 使用できないディスク領域をある程度確保しています)、 ディスクスペースがなくなっていることに突然気づかされるでしょう。 OS は、さまざま作業のために (スワップスペースのほかに) 実ファイルを利用する必要があるので、このことは不具合を引き起こします。 さらに、このことは、ローカルシステムに由来する問題でないこともありえます。 例えば、電子メールとしてスパムメールを取り込むことは、パーティションを容易 に溢れさせえます。より多くのパーティションを用いることは、このような問題の 多くからシステムを保護するのです。 もう一度電子メールの例を取り上げるならば、/var/spool/mail に独自のパーティションを割り当てれば、スパムメールを取り込んでも、 システムの大半はその動作に支障はないでしょう。

より多くのパーティションを利用する際に、唯一実際に障害となるのは、 あらかじめどのようなパーティションが必要となるかを予測することが、 多くの場合難しいことです。 もしあまりに小さなパーティションを用意したなら、 システムを再インストールしたり、 容量の足りないパーティションにスペースを空けるために、 しょっちゅうファイルを移動したりしなければならないでしょう。 一方、あまりに大きなパーティションを用意すれば、 他で利用できるスペースを浪費しかねません。 近頃はディスクも安価になったとはいえ、お金を無駄に使う必要はないでしょう?


4.1.1 ディレクトリツリー

以下の一覧は、重要なディレクトリについて説明したものです。 こちらは、どのようにパーティションを分割するかについての参考となるでしょう。 こちらの内容が難しいと感じられた方は、 とりあえずこの部分は飛ばして、 インストールマニュアルの残りの部分を読んでから、 読みなおしてもよいでしょう。


4.2 システムの利用計画

どのような種類のマシンを構築するのか決めることは重要です。 このことから、必要なディスク容量は決定されるでしょうし、 パーティション分割の方針も影響を受けるでしょう

This has changed for Potato -- we need to update it. Debian では、利用者の便宜に合わせて共通タスクアプリケーション What does this need to be called? がいくつか用意されています。(プロフィールの選択とインストール, Section 7.19 をご覧ください。) 共通タスクアプリケーションとは、 パッケージの選択がより簡単になるように用意された、 パッケージ選択の単なるセットです。 これはいくつかのパッケージに、 インストールされるよう自動的にマークを付けてくれます。

用意された共通タスクアプリケーションは、それぞれインストール完了時の システムサイズが異なります。 これらの共通タスクアプリケーションをお使いにならないとしても、 システム設計にこちらの論議は重要です。 なぜならこれは、パーティションのサイズや、 必要になるパーティションの数を決定する際のヒントを与えてくれるからです。

以下は、ご利用いただける共通タスクアプリケーションのいくつかと そのサイズをまとめたものです。 The various applications and sizes should probably go here.

Server_std 標準的なサーバ
小規模なサーバ向けのプロフィールです。 シェルユーザ用のソフトウェアを持たない スリムなサーバに有用です。 こちらは基本的に FTP サーバ、ウェブサーバ、DNS、NIS、POP を装備しています。 必要となるディスク容量は約 50MB です。 もちろん、このサイズはインストールされるソフトウェアのものだけで、 ご利用になるデータのためにさらにディスクが必要です。

Dialup ダイアルアップマシン
X Window System、グラフィックやサウンドに関するアプリケーション、 エディタなどを装備した標準的なディスクトップマシン向けのプロフィールです。 こちらのパッケージのサイズは約 500MB です。

Work_std 標準的なワークステーション
X Window System や、X のアプリケーションを装備しない ユーザマシン向けの最もスリムなプロフィールです。 おそらくラップトップやモバイルコンピュータに適切でしょう。 こちらのサイズは約 140MB です。 (なおこの文書の著者は、X11 も含めてこれよりも少ない約 100MB で済む、シンプルで優れたラップトップ向けの設定も知っています。)

Devel_comp 開発環境
Perl や、C、C++ などのすべての開発パッケージを備えた デスクトップマシン用の設定です。そのサイズは約 475MB です。 ただ、X11 や 他の用途に用いる付加的なパッケージをいくつか追加するならば、 この種のマシンでは約 800MB 近いディスクが必要になることを 見越しておくべきでしょう。

心に留めておいていただきたいのですが、こちらのサイズには、 通常よく使われるユーザファイルや電子メイル、データなどの他のファイルが、 まったく含まれていません。 ご自身のファイルやデータのスペースは、大きめに見積もることが常に肝要です。 特に、 Debian の /var パーティションには、 たくさんのシステム情報が収められます。 dpkg ファイル (インストール済みパッケージの情報など) はゆうに 20MB は消費します。 またログファイルやその他のファイルのために、 通常少なくとも /var パーティションに 50MB は空けておいてください。


4.3 Linux におけるデバイス名

Linux におけるディスクおよびパーティションの命名法は、他のオペレーティング システムとは異なっています。パーティションを作成したりマウントする際には、 Linux がどのようなディスク名を用いるのか知っておく必要があります。 以下は基本的な命名法の仕組みです。

各ディスクのパーティションは、ディスク名に十進数を付け加えることで 表します。例えば、``sda1'' と ``sda2'' はそれぞれ、システムにある 第 1 SCSI ディスクドライブの第 1、 第 2 パーティションを表します。

実際にありそうな例をあげてみましょう。 二つの SCSI ディスクを持つシステムで、一方の SCSI アドレスが 2、もう一方の SCSI アドレスが 4 だとします。 最初のディスク (アドレス 2) は ``sda''、 二つ目のディスクは ``sdb'' と名付けられます。 もし ``sda'' ドライブに 3 つのパーティションがあるなら、 それらは ``sda1''、``sda2''、``sda3'' と名付けられます。 ``sdb'' ディスクとそのパーティションにも同じことが当てはまります。

もし二つの SCSI ホストバスアダプタ (コントローラ) がある場合、 ドライブの順序が混乱するかもしれないことに注意してください。 ドライブのモデルを知っていると仮定するなら、 このケースでの最もよい解決策はブートメッセージを見ることです。

TEAC FC-1 SCSI フロッピードライブを利用する VMEbus システムは、 そのドライブを通常の SCSI ディスクと見なします。 このドライブを区別して用いるために、 インストーラは、単に適切なデバイスにシンボリックリンクを張り、 そのファイル名を ``/dev/sfd0'' とします。


4.4 パーティション分割の推奨案

すでに述べたとおり、独立した小さなルートパーティションは必ず作るべきです。 また、スペースがあるならば大きな /usr パーティションを作るべきです。 例をあげるなら、大抵のユーザは最初のうちはパーティションを二つ用意すれば 十分でしょう。パーティションをたくさん用意することはディスクスペースを 浪費するので、小さなディスクを一つしか持っていない場合には、 特にこうするのが適切です。

もし、Debian のディストリビューションに含まれていないプログラムをたくさんイン ストールしようと考えているならば、/usr/local パーティションを 必要とする場合もあるでしょう。 また、メイルサーバとして利用するならば、 /var/spool/mail に 別のパーティションを必要とするかもしれません。 /tmp に 20 から 32MB ほど、独自のパーティションを割り当てるこ とは、多くの場合よい考えです。 たくさんのユーザアカウントをかかえるサーバを設置するなら、独立した大き な /home パーティションを用意することも概してよいことです。 このように、パーティション割り振りの条件は、一般的に利用法の違いからコン ピュータによってさまざまです。

とても複雑なシステムのためには、 マルチディスク HOWTO をご覧になるとよいでしょう。 こちらには、ISP の管理者やサーバを設置する方の関心事の多くが、 詳細な情報として含まれています。

スワップスペースの問題に関しては、さまざまな見方があります。大雑把ながらも よいやりかたは、搭載しているシステムメモリーと同じ容量のスワップを用意する ことです。ただ、64MB 以上のスワップは大抵のユーザにとってはおそらく意味が ないでしょう。またたいていの場合、スワップを 16MB より小さくするのも避ける べきでしょう。 もちろん、これらのルールにも例外はあります。例えば 256MB ほどの RAM を積んだマシンで、10,000 もの方程式を同時に解こうとするならば、1GB (もしくはそれ以上) ものスワップを必要とするでしょう。 一方、Atari Falcons や Macintosh ではスワップは苦痛でしょう。 そのため、大きなスワップパーティションを作成する代りに、できるかぎり多くの RAM を搭載するようにしてください。

32-bit のアーキテクチャ (i386 や、m68k、32-bit SPARC、PowerPC) におけるスワップパーティションの最大サイズは 2GB です。 (Alpha と SPARC64 では実質的に無限と言えるほど大きなサイズを使えます。) これはほとんどの場合において充分な大きさであるはずです。 しかし、もしこれ以上の大きさのスワップ領域が必要なら、 異なるディスクにスワップ領域を分散したり (この手法は「スピンドル」とも呼ばれています)、 また、可能ならば SCSI あるいは IDE の異なる チャンネルにスワップ領域を分散するよう試みるべきでしょう。 このようにすると、カーネルは複数のスワップ領域をバランス良く使おうと するので性能が向上します。


4.5 パーティション分割の一例

一例として、32MB の RAM と /dev/hda に 1.7GB IDE ハードディスクを搭載した著者の一人のホームマシンの例をあげましょう。 /dev/hda1 には 500MB の DOS パーティションがあります。 (それほど使うわけではないので 200MB 程度にするべきでした。) /dev/hda3 を 32MB のスワップパーティションとして使用し、 のこり (約 1.2GB の /dev/hda2) を、 Linux パーティションにしています。


4.6 インストール前のパーティション分割

パーティションの分割は、Debian をインストールする前と、インストールの最中 の二度にわたって行うことができます。 お手持ちのコンピュータを Debian 専用機にする場合には、 インストール作業 (``ハードディスクのパーティションを切る'', Section 7.5) の間にパーティションを作成すべきでしょう。 一方、複数のオペレーティングシステムを持つマシンをお持ちの場合は、 一般的には各オペレーティングシステムで、 それ専用のパーティションを作成すべきです。

以下の節では、インストールに先だって行うネーティブ オペレーティングシステム上でのパーティション分割に関する情報を扱います。 なお、他のオペレーティングシステムが参照するパーティション名と Linux が付けるパーティション名がどのように対応するのは確認しておくべきでしょう。 Linux におけるデバイス名, Section 4.3 をご覧ください。


4.6.1 AmigaOS におけるパーティション分割

AmigaOS を動作させているならば、インストール作業に先だってディスクの パーティションを分割するために、HDToolBox プログラムが利用できます。こちらは、以下の通りに行います。

  1. HDToolBox を起動し、 ご使用になりたいディスクを選択します。 ``Partition Drive'' ボタンをクリックして、Debian のルートファイルシステム としてお使いになりたいパーティションを選択するか作成します。
  2. 次に、``Advanced options'' を有効にして、以下の項目を ``Change'' を用いて変更します。
  3. Linux パーティションを二つ以上作成したい場合は、最初に戻って上記の通りに 追加パーティションを作成します。
  4. こちらを終えたら、スワップ領域として使用するパーティションを選択します。 上記の方法と同じことを繰り返しますが、識別子は代りに 0x53575000 を設定します。 (これは ASCII では "SWP\0" を表すものです。)
  5. 作成したルートおよびスワップファイルシステムのために、 Linux パーティションの名前を記録します。 Linux パーティションの命名法に関するより詳細な情報については、 Linux におけるデバイス名, Section 4.3 をご覧ください。
  6. HDToolBox のメインウィンドウに戻り、``Save changes to drive'' を選択します。 ``Yes'' を実際にクリックする前に、次のことをもう一度確認してください。 正しいパーティションを選択しましたか? 間違いを起こしたら、消失してしまうような重要なデータはありませんか? そうしたら ``OK'' をクリックしてください。 必要があれば、このあとで Amiga はリブートします。


4.6.2 Atari TOS におけるパーティション分割

Atari の パーティション ID は 3 文字のアスキーキャラクタで表され、 データパーティションには ``LNX'' を、スワップパーティションには ``SWP'' を用います。 もしメモリの少ないシステム向けのインストール方法を用いる場合は、 小さな (約 2 MB の) Minix パーティションも必要です。 そのパーティション ID は、``MNX'' になります。 適切な パーティション ID の設定に失敗すると、 Debian インストールプロセスがそのパーティションの認識に失敗するだけでなく、 TOS による Linux パーティションへのアクセスさえも引き起こします。 このことは、ハードディスクドライバに混乱を生じさせ、 ディスク全体にわたるアクセス障害を招きます。

さまざまなツール (Atari のharddisk ユーティリティでは パーティション ID の変更はできませんので、サードパーティー製のもの) が利用可能ですが、こちらではそのすべての詳細については触れません。 以下の解説では SCSITool (Hard+Soft GmBH) を扱います。

  1. SCSITool を起動し、パーティションを作成するディスクを 選択してください。(``Disk'' メニューの ``select'' 項目)
  2. ``Partition'' メニューから、 ``New'' を選んで新しいパーティションを追加した り既存のパーティションの容量を変更するか、``Change'' を選んで特定の パーティションに変更を加えてください。 すでに適切な容量のパーティションが作成されていて パーティション ID の変更のみを行ないたい場合以外は、 ``New'' を選択するのが適切です。
  3. ``New'' を選択した場合は、初期設定を行なうために、 さらにダイアログボックスの``existing'' を選択してください。 次に表示されるウインドウには、既存パーティションの一覧が表示されます こちらのパーティションは、スクロールボタンを使ったり その棒グラフの中をクリックすることで調整が可能です。 パーティション一覧の最初の欄は、パーティションタイプです。 そのテキストフィールドをクリックして編集してください。 パーティション設定の変更が終了したら、 ``Ok'' ボタンを押してウインドウを閉じその変更を保存してください。

    ``Change'' を選択した場合は、一覧から変更を加えるパーティションを 選択し、同じダイアログボックスの ``other systems'' を選択してください。 次に表示されるウインドウには、そのパーティションの位置に関する詳細な情報が 表示されますので、そこでそのパーティション ID を変更してください。 ``Ok'' ボタンを押してウインドウを閉じその変更を保存してください。

  4. Linux で使用するために作成したり変更した各パーティションの Linux における名前を書き留めておいてください。-- こちらに関しては Linux におけるデバイス名, Section 4.3 をご覧ください。
  5. ``File'' メニューの ``Quit'' 項目を選択して、 SCSITool を終了してください。 変更されたパーティションテーブルが確実に TOS で使用されるよう、 コンピュータがリブートします。 なお TOS/GEM パーティションに何らかの変更を加えた場合、 そのパーティションは無効化され、再初期化が必要になります。 (ディスクの内容をすべてバックアップするようお勧めしましたよね?)

パーティション分割ツールには atari-fdisk という Linux/m68k 向けのものもあります。 しかし、今のところは TOS パーティションエディタや他のディスクツールでディ スクのパーティションを分割することをお勧めします。 もしご利用になるパーティションエディタに、 パーティションタイプを編集する機能がない場合には、 この重要な作業を後で (ブート後一時的にインストールされる RAM ディスクから) 行ってください。 任意のパーティションタイプを選択できるパーティションエディタのうち、 私たちが確認したものは SCSITool のみです。 ただ他にもそのようなツールはあるでしょう。 必要に応じてそれらのいずれかをご使用ください


4.6.3 MacOS におけるパーティション分割

テスト済みの Mac のパーティション分割ツールには、 HD SC Setup (Apple) や、 HDT 1.8 (FWB)、SilverLining (LaCie)、 DiskTool (Tim Endres, GPL) があります。 HDTSilverLiningなどは完全版が必要です。 また、Apple のツールはサードパーティー 製ディスクを認識するためにパッチが必要です。 (ResEdit を用いてHD SC Setup にパッチを当てる方法については、 http://www.euronet.nl/users/ernstoud/patch.html をご覧ください。)

was the following paragraph removed on purpose? I found it in the "Installing Debian GNU/Linux 2.1 For Motorola 680x0 - Partitioning your Hard Drive." For IDE based Macs, you need to use Apple Drive Setup to create empty space for the Linux partitions, and complete the partitioning under Linux, or use the 68k MacOS version of pdisk available from the MkLinux FTP server.

以下の手順では、Apple の HD SC Setup を用いたパーティション分割を説明します。

どんなツールを用いる場合でも、パーティションタイプは 'Apple_Unix_SVR2' に設定しなければなりません。 またパーティション名として、データパーティションには ``A/UX Root'' や ``A/UX Root&Usr''、``A/UX Usr''と、 またスワップパーティションには ``swap'' と名前をつけなければなりません。 スワップパーティションに ``swap'' と名前が付けられていない場合、 インストーラはそれを認識できません。 HD SC Setup は、``Custom'' セットアップで A/UX パーティション を作成する際、正しい名前とパーティションタイプのものを選別してくれます。 パーティションの削除や、作成、マウスによる容量の変更、 パーティション名の設定、 あらかじめ用意されている定義一覧からのパーティションタイプの選択 などを行なうためにパーティションが選択されます。 DiskTool では、 ユーザが直接パーティション名を入力しなければなりませんが、 A/UX タイプのパーティションを作成することができます。 他のツールに関する詳細をご存知の方はお知らせいただけると助かります。

以下は、pdisk 68kApple Drive Setup を使ったパーティション設定の説明です。

Apple Drive Setup を起動するために、 お使いになるドライブを選択し、 ``initialize'' をクリックしてください。 次に、``custom'' を選択し、 ご自分の必要に応じてパーティションを設定してください。 そうしたら ``ok'' をクリックして、初期化プロセスに進んでください。 Apple Drive Setup を使っての作業が完了したら、 このプログラムを終了し、pdisk 68k を起動してください。 pdisk 68k では、`e' を選択し、どのハードドライブを利用するか (通常は /dev/hda) を入力してください。 次に `p' を選択し、各パーティションの始まる位置と長さを指定してください。 そのあと `d' を選択します。 さらに Linux で利用する一番最初のパーティションの番号を入力します。 次に、`c' を選択し、そのパーティションの始まる位置と長さを入力します。 それに内容を補助的に説明する名前 (例えば root や、usr、home など) を付けます。 これを 全 Linux パーティションに対して行ないます。 スワップパーティションについては、``swap'' という名前を付けなければなりません。 そうしなければ、インストーラがこちらを認識できません。

FIXME: more can be gleaned from the Debian/Mac install guide


[ 前のページ ] [ 概要 ] [ 著作権表示 ] [ 目次 ] [ 次のページ ]
Debian GNU/Linux 2.2 のインストール (Motorola 680x0)
version 2.2.19, 22 November, 2000
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo