1.ファイルシステム


1.1 ディスク装置

1.1.1 物理ディスクへの名前付け
物理ディスクには主に IDE と SCSI があります。Linuxでは、これらの物理ディスクに対し次のような名前付けを行います。
デバイス 名前
 IDEハードディスク  /dev/hda 
 IDE CD-ROM  /dev/hdc (別名 : /dev/cdrom )
 SCSI ハードディスク  /dev/sda, /dev/sdb, /dev/sdc ・・・ SCSI IDの小さい順につきます。
 SCSIテープ  /dev/st0
 フロッピーディスク  /dev/fd0
IDE は厳密には次のように名前付けされますが、一般的には上表のように /dev/hda と考えてよいです。
IDEコントローラ 名前 記事
プライマリマスター  /dev/hda   内蔵ハードディスク(基本)
プライマリスレーブ  /dev/hdb  内蔵ハードディスク(増設)
セカンダリマスター  /dev/hdc  内蔵CD-ROM
セカンダリスレーブ  /dev/hdd  他の内蔵装置
これらの名前は、スペシャルファイルとして /dev ディレクトリに格納されています。
1.1.2 パーティション
Linux(Unix)では、1つの物理ディスクを複数の論理ディスクに分割して扱うことができます。この論理ディスクのことを「パーティション」と呼びます。
パーティションは、物理ディスクの名前の後ろに数字が付いた名前になります。

こーんな感じですね!

1.1.3 プライマリーパーティションと論理パーティション
一般に、1つのハードディスクに対してパーティションは4つまで作成することができます。(注1)
これをプライマリーパーティション(基本パーティション)と呼びます。
5つ以上のパーティションに分割する場合は、プライマリーパーティションの1つを「拡張パーティション」として使用します。
拡張パーティションはその中をさらにパーティション分割することができるパーティションです。
拡張パーティション内で分割されたパーティションを「論理パーティション」といいます。
論理パーティションに対する番号は、プライマリーパーティションに関係無く「5」から始まります。
ちなみに、拡張パーティションは1つしか作ることができません。
論理パーティションは「IDEハードディスク」であれば60個まで、「SCSIハードディスク」であれば12個まで作れます。
(注1) MBR内のパーティションテーブルにはエントリーが4つしかないため。

プライマリパーティションと論理パーティション

・・・・ですが、Plamo Linnux(98)のfdiskは少し違っていました。
画面のガイダンスを見ると「パーティションは15個まで作れます」とあるし、拡張パーティションを設定する項目が無いのです。
Plamo Linuxのサイトにあるインストールマニュアル(DOS/Vベースでしょう)には、拡張パーティション、論理パーティションはできるように書いていましたが、Plamo Linnux(98)のfdiskに無いのはPlamo Linnux(98)たからなのかな?
思うにPC-9821だからなのでしょうね!

1.2 ファイルシステム

1.2.1 Linux(Unix)のファイルシステム
ファイルをディスクに格納する仕組みをファイルシステムといいます。ファイルシステムはパーティションごとに作成します。
ファイルシステムは、各々が「ルートディレクトリ」を頂点とする階層構造になります。
このため、単にファイルシステムを作成しただけでは、Linux(Unix)の特徴である「ファイルは全てルートディレクトリ」を頂点とする階層構造に格納される」ということは実現できません。

階層(ツリー)構造

Linuxで取り扱うことのできる主なファイルシステムには以下のものがあります。
ファイルタイプ 用途 記事
 ext2  Linuxの標準ファイルシステム  
 ext3  ext2 + ジャーナル機能のファイルシステム 操作のログを保存、異常時ファイルシステムの復旧に活用
 reiserfs  ジャーナル機能あり、ext2の互換性はない  
 vfat  Windows用のファイルシステム  
 iso9660  CD-ROM用のファイルシステム  
 nfs  ネットワークファイルシステム  
1.2.2 マウント
Linux(Unix)では、「マウント」という操作を行って複数のファイルシステムを1つに見せかけることにより、ファイルへの統一的なアクセスを提供します。
これにより、Linux(Unix)を利用するユーザからは、「ルートディレクトリを頂点とした1つの木(ツリー)構造」になっているように見えます。
マウントとは、あるファイルシステムのルートディレクトリを他のファイルシステムのディレクトリを重ね合わせることです。
この重ね合わせるディレクトリを「マウントポイント」と呼びます。

マウントの概念

パーティションは、マウントポイントの名前を付けて呼ぶことが多いようです。上記例では hda2 は /home にマウントしますので「 /home パーティション」と呼びます。
また、最上位のパーティション (上記例では hda1) を「 / (root)パーティション」と呼びます。
このパーティションには、パーティションで分けていない全てのディレクトリとマウントポイントが含まれます。

・hda2 の FILE_A は /home/takaq/FILE_A です。
・ CD-ROM の FILE_B は /mnt/cdrom/flame/FILE_B です。
1.2.3 ディレクトリ構成とパーティション分割
Linux(Unix)では、最低限「 / パーティション」と「 swap パーティション」の2つがあれば問題なく動作させることができます。
しかし、一般的には複数のパーティションに分割して運用します。こうすることで次のような問題を回避することができます。
● 障害時の被害を最小限にできる。

   ・物理的な障害でない限り、障害はパーティションを超えることはありません。
   ・パーティション分割していない場合、全データが被害を受けることになります。

● ディスクの容量オーバーによるシステムの不具合を防ぐ

   ・例として、一般ユーザが作成したデータは通常 /home 以下に格納されます。
    /home パーティションを作成することにより、/home以下のディスク使用量が非常に大きくなっても、他のパーティション・・・特に「 / パーティション」に影響を及ぼすことはありません。
   これにより、「 / パーティション」にある重要ファイルの作成、更新ができなくなるという事態を防ぐことができます。

● バックアップを効率的にできる

   ・バックアップは必ずしも全データをバックアップする必要はありません。
   ・パーティション単位でバックアップを行うコマンドがあるので効率がいい。
Linuxの基本的なディレクトリ構成は次のようになります。

基本的なディレクトリ構成

主なマウンポイントと使用目的
パーティション  目     的 
/boot Linuxカーネルが格納されます。(64M〜128Mbyte)
/ 階層構造の頂点になるパーティション。パーティションで分けていない全てのディレクトリ、マウンポイントが含まれます。システムの起動・停止などに使う重要ファイルを格納します。
/var ログやメールなど、頻繁に更新されるファイルを格納しています。メールサーバーとして運用する場合や多くのサーバーを運用する場合は多めに確保します。
/home 一般ユーザのホームディレクトリが格納されます。ユーザ数が多い場合やWebサーバーでユーザのページを公開する場合は多めにします。
/usr コマンドが格納されます。
運用中にソフトウェアを追加いることが想定される場合は多めに確保します。
逆にインストール後にソフトウェアを追加することがほとんどない場合には1Gbyte程度でも問題ないようです。
/tmp 作業用の一時ファイルが格納されます。
このパーティションを分けない場合、/ パーティションに含まれるため、一時ファイルを大量にこのディレクトリに作成すると / パーティションを圧迫しシステムが不安定になります。
/opt 通常は作成する必要はありませんが、一部のアプリケーションが使用することがあります。
SWAP 仮想メモリとして使用します。一般的にはメモリと同等かメモリ容量の2倍とします。
ただし、メモリ容量が多い場合は、この限りではないようです。

Prev Top Next
目次 目次 Linuxのインストール

サイトトップへ