第3回 ファイルシステムの種類と機能
青木峰郎
2008/11/7
■付帯情報
ファイルにはデータ本体の他にもさまざまな情報が付属しています。例えば次のようなものです。
・ ファイルの種類(普通のファイルか、ディレクトリかなど)
・ パーミッション
・ サイズ
・ 更新時刻
このような情報が「ls -l」で表示できるのはご存知でしょう。
■広義のファイルについてまとめ
以上で、ファイルの特徴はあらかた説明できました。あらためてファイルについてまとめましょう。ファイルには、次のような特徴があります。
●何らかのデータを保持する
普通のファイルにしてもディレクトリにしてもシンボリックリンクにしても、とにかく何らかのデータを保持しています。普通のファイルならテキストや画像などが記録されていますし、ディレクトリならその中身が記録されています。
●付帯情報が付いている
ファイルには更新時刻などの付帯情報が付属しています。
●名前(パス)で指定できる
この点は明示的には言及しませんでしたが、名前で呼べることはファイルにおいて欠かせない特性です。ある意味、ファイルにとって最も重要な特徴と言っても過言ではありません。
以上のような特徴を持つ「ファイル」という存在を成立させているのが、ファイルシステムです。
■ファイルシステムとマウント
ところで、ファイルシステムはどこにあるのでしょうか。もちろんハードディスクやCD-ROM、USBメモリのような、物理的な記憶媒体の上です。例えばハードディスクの場合、まずディスクをパーティション(partition)という区画に区切り、それぞれの上にファイルシステムを用意して、それをマウント(mount)することで、一本の巨大なディレクトリツリーができあがります。
mountコマンドを使うと、現在使っているシステムがどのようなファイルシステムで構成されているのか調べられます。次に挙げるのは、私のマシンでmountコマンドを実行した結果です。
$ mount /dev/hda5 on / type ext2 (rw) none on /tmp type tmpfs (rw,mode=1777,size=64m) none on /proc type proc (rw) none on /dev/pts type devpts (rw,gid=5,mode=620) /dev/hda1 on /boot type ext2 (rw) /dev/hda6 on /usr type ext2 (rw) /dev/hda7 on /home type ext2 (rw) |
出力の最後の行を見てください。「/dev/hda7 on /home type ext2 (rw)」とありますね。「/dev/hda7」はハードディスクのパーティションに対応するデバイスファイルの名前です。それが「on /home」、つまり/homeにマウントされていることがわかります。最後の「type ext2」は、このパーティションにはext2という種類のファイルシステムが使われていることを示しています。1つのOSであってもファイルシステムにはいくつもの種類があるのです。Linuxで使えるファイルシステムを次にいくつか示しましょう。
表3.1 いろいろなファイルシステム種類 | 特徴 |
ext2 | Linuxで最も一般的に使われていたファイルシステム |
ext3 | ext2を改良したファイルシステム |
ReiserFS | ext3と次世代の標準を競い合っているファイルシステム |
XFS | SGI提供のファイルシステム |
JFS | IBM提供のファイルシステム |
この他に、procfs、tmpfs、devfsなどのファイルシステムもあります。これらはext2やext3とはちょっと違うタイプのファイルシステムで、後ろ盾にするデバイスが存在していません。こういったタイプのファイルシステムを疑似ファイルシステム(pseudo filesystem)と言います。
疑似ファイルシステムについては、書籍『ふつうのLinuxプログラミング』第9章で具体的に扱っています。
本連載は、ソフトバンククリエイティブ刊行の『ふつうのLinuxプログラミング』のうち第1部「Linuxの仕組み」の中から「第2章 Linuxカーネルの正解」と「第3章 Linuxを描き出す3つの概念」を、同社の許可を得て転載するものです。 本書は、LinuxにおけるC言語プログラミングの入門書です。「Linuxの世界が何でできているのか」に着目し、「ファイルシステム」「プロセス」「ストリーム」という3つの概念を紹介しています。 なお、本連載は転載を行っているため@IT自分戦略研究所の表記とは一部異なる点があります。ただし、Webで掲載するに当たり、(例えば「本書は」としている部分は「本連載は」としていること、図版などの省略など)、表現を若干変更している点がありますが、その点ご了承ください。 |
関連記事 |
Linuxに触れよう |
LPICに見るLinuxを学ぶ意味とは |
実践でも役立つLPICドリル インデックス |
Linuxをいまから学ぶコツ教えます |
第1回 Linux認定資格・試験の世界 |
@IT自分戦略研究所は2014年2月、@ITのフォーラムになりました。
現在ご覧いただいている記事は、既掲載記事をアーカイブ化したものです。新着記事は、 新しくなったトップページよりご覧ください。
これからも、@IT自分戦略研究所をよろしくお願いいたします。