前のページ 次のページ 目次

9. パーティション分割の実行

設計が終わった方のために、この章には実際にパーティション分割を行うため の詳細な手順について示します。ここにあるのはガイダンスだけですが、実際 に行う作業を自動的に行ってくれるツールを誰かが作ってくれると素晴 らしいですね。具体的には、設計、パーティション分割、フォーマット、イン ストールということになるでしょう。

最近の配布パッケージにはインストールツールが入っていて、パーティション 分割とフォーマット、および /etc/fstab の設定までを自動的にやっ てくれる様になりました。しかしインストール後の変更に関しては、以下のよ うなしくみを理解しなければなりません。

9.1 ドライブとパーティション

DOS を起動すると、C: というようなドライブレターと共に、全てのパー ティションが表示されます。これは IDE、 SCSI、ネットワークドライブそ の他、どんなメディアも同じように表れます。ところが Linux の世界では少々 異なります。ブート時に以下のようなパーティションの表示が出るはずです。


Dec  6 23:45:18 demos kernel: Partition check:
Dec  6 23:45:18 demos kernel:  sda: sda1
Dec  6 23:45:18 demos kernel:  hda: hda1 hda2

SCSI のドライブは sdasdbsdc のような、また (E)IDE のドライブは hdahdbhdc のような名前が付きます。全 てのデバイスには、同様に標準的な名前が有ります。詳細が知りたければ /dev/MAKEDEV./kernel/Documentation/devices.tex を見てください。

パーティションはそれぞれのドライブ名に数字が付随したものです。つまり hda1hda2 のようになります。

これらは /etc/fstab というファイルに書いてある情報に従ってマ ウントされ、ファイルシステムの一部となります。

9.2 パーティション分割

まず最初にそれぞれのドライブをパーティションに分割する必要があります。 Linux では主として二つの選択肢があります。 fdisk と、これをもう少し スクリーン指向にした cfdisk です。これらは複雑なプログラムですので、 マニュアルをしっかり読んでおくようにしてください。 DOS から行なう場合には また別の方法があります。 DOS の一部として配布されている fdisk か、 あるいは fips です。 fips には独特の機能があり、すでにパーティ ション分けされているドライブを(データを破壊することなく)分割しなおす ことができます。これができるのは fips だけです。

fips の機能を最大限生かすには、まずドライブをデフラグメントします。 こうすると他のパーティションにできる領域が増えるのです。

いずれにしても、パーティションの分割をやり直す場合には、現在のデータ はフルバックアップしておくことが重要です。

パーティションには三つの種類があります。基本 (primary) パーティション、 拡張 (extended) パーティション、そして論理 (logical) パーティションです。 ブートさせるパーティションは基本パーティションでなければなりませんが、 これはドライブ当たり4つまでしか用いることができません。これ以上の パーティションを用いたい場合は拡張パーティションを指定し、その中に 複数の論理パーティションを作成します。

各々のパーティションには、対応する OS に応じた番号がふられています。 Linux の場合は swap (82)ext2fs (83) を使います。

fdisk に付属の readme ファイルには、パーティション分割に関する より詳細な情報が記載されています。

9.3 複数デバイスの一括利用 (md: Multiple Devices)

これはカーネルに付属の機能です。まだ開発段階なので、最新のドキュメントを 良く読んでおくようにしてください。まだ不安定かも知れませんので、ご注意のほど。

簡単に説明しますと、この機能は複数のデバイスをまとめて、 md0 (あるいは md1)という新しいデバイスを作ります。この際には mdadd というプログラムが用いられ、 mdrun によって 利用できるようになります。この作業は /etc/mdtab というファイルに よって自動化することが可能です。

mdrun 以降は、このデバイスは他のドライブパーティションと全く 同じように使うことができます。以下の記述に従って、フォーマット等の 作業を行なって下さい。

9.4 フォーマット

次に行なうのはパーティションのフォーマットです。この作業は、ディスク表面に データ構造を書き込み、ファイルの書き込み位置を指定できるようにするものです。 一番最初にフォーマットを行なう場合は、同時にベリファイを行なうように指定 すると良いでしょう。この作業は本来の目的には必要ないのですが、ディスク IO のテストとして有効です。ディスク入出力が連続して頻繁に行われるので、潜在 的な問題(ターミネーションの不正など)を発見できる可能性があります。 ベリファイ機能の詳細に関しては mkfs のマニュアルを見て下さい。

Linux は非常に多くのファイルシステムをサポートしています。ここでその全てを 挙げることもできますが、 man fs してもらう方が良いでしょう。ここには 各々のファイルシステムに関する情報も多少書かれています。なお、これらの ファイルシステムを用いるには、それに応じたドライバをカーネルに組み込む (あるいはモジュールとして用意する)必要があります。カーネルをコンパイル する際に、ファイルシステム機能のリストを注意して読むようにして下さい。 make menuconfig を用いれば、それぞれのファイルシステムに関する オンラインヘルプを見ることもできます。

レスキューディスク作成パッケージには、 minixmsdosext2fs をカーネルに組み込んでいないと使えないものがあるようです。

スワップデバイスにおいても、フォーマットに準ずる作業を行なう必要 があります。これには mkswap を用います。

9.5 マウント

パーティション上にデータを読み書きするには、まず適切なマウントポイントに そのパーティションをマウントしなければなりません。これを手動で行なうには mount コマンドを、またブート時に自動的に行なうには、必要な情報を /etc/fstab ファイルに追加します。後者を行なう際には mount の man ページをよく読んで下さい。記述を間違えた場合は、最悪システムが 立ち上がらなくなる場合があります。

9.6 メンテナンス

ドライブとパーティションを監視し続けることはシステム管理者の義務である と言えます。どこかのパーティションが一杯になってしまえば、パーティショ ン容量の再配置がすむまでシステムは正しく働かなくなってしまうのですから。

パーティションとディスクの監視は df コマンドによって簡単に行えます。 頻繁に行うべきですし、 cron や他の管理ツールなどを使って定期的に行うよ うにするのも良いでしょう。

スワップパーティションも忘れないようにしましょう。 freetop といったメモリ利用の統計表示ツールを用いることで監視できます。

ドライブの使用状況 のモニタはもうちょっと難しいですが、ドライブ利用の競合を避けてシステム の性能を上げるには重要な作業です。アクセスの要求がひとつのディスクに偏 らないようにしましょう。

ソフトウェアのパッケージをインストールするとき、どこにどのファイルを配 置するかについて明確な意図を持つようにすることも重要です。先に紹介した ように、 GCC は実行バイナリをライブラリのディレクトリに置きます。他に も歴史的な経緯から、わけのわからない配置をするパッケージもあります。 X11 なんかがそうですね。

9.7 バックアップ

これまでの部分をじっくりと読んできた方は、すでに何回かバックアップの重 要性に触れてきたことに気付いたでしょう。クラッシュに当たってバックアッ プが機能していなかった、あるいは存在すらしなかった場合に管理者に降りか かる災厄については恐ろしい話がたくさんあります。クラッシュが起こってか らじたばたするよりは、普段からバックアップに投資しておく方がはるかに話 は簡単になるはずです。

バックアップには色々な手段が可能ですが、この辺りの詳細は Backup-with-MSDOS-mini-HOWTO に記述があります。この文書には DOS に関する話だけではなく、一般的な情報も書いてありますので、一読をお薦め します。

ただバックアップをとるだけでなく、バックアップデータをちゃんと復元でき るかどうかも確認しておきましょう。恐い話をひとつ。心掛けの良かった管理 者がクラッシュに遭遇。『ああ、普段からバックアップを取っていて本当に良 かった。』バックアップデータの復元をはじめたら、何とそのデータが壊れて いた... 気をつけましょうね。

9.8 デフラグメント

これはファイルシステムの設計によって随分違います。フラグメンテーション が早く起きてしまい、しかもそれによって非常に速度が低下するようなシステ ムもあります。幸いなことに ext2fs はその中には入っていないので、 デフラグメントツールに関してもほとんど話題になることはありませんでした。

なんらかの理由でデフラグメント作業が必要になった場合は、バックアップと レストアを行なってしまうのが簡単でしょう。例えばホームディレクトリのよ うな小さな領域だけならば、その領域を tar で別のパーティションに一 時待避し、オリジナルを消してから再書き込みすれば良いでしょう。

9.9 システムの更新

いかに大きなドライブと言えど、いずれは使いきってしまうときがやってきま す。そのころには技術の進歩によるコストパフォーマンスの向上も期待できる でしょう。現在のところは 2 GB クラスが一番良いでしょう。

たいていのマザーボードでは IDE は二つ(あるいは四つ)までしか接続でき ないので、 IDE ドライブを増設する場合には古いものが無駄になってしまう 可能性が高いです。一方 SCSI は narrow (8 bit) SCSI で 7、 wide (15 bit) SCSI で 15 まで接続することができます。またホストアダプタによっては二 つ以上のチャネルをサポートしている場合もあります。筆者の個人的なお薦め ですが、長期間に渡って利用するシステムには SCSI を選択しておく方が良い でしょう。

ここで問題になるのは、どこに新しいドライブをあてがうかです。多くの場合、 スプール領域の不足が増設の理由になることが多いので、この場合は /var/spool 以下のどこかに新しいディスクをマウントしてしまえば 良いでしょう。しかし一方、新しいディスクは高速でもあるでしょうから、長 い目で見た場合はシステム全体を再構成する方が良いかもしれません。その場 合は以前に使った設計書が役に立つでしょう。


前のページ 次のページ 目次