|
次のページ
前のページ
目次へ
7. ファイルシステムこの章では、「ファイルシステム」という言葉をふたつの違った意味で使用する。 ディスクパーティションやその他のデバイス上のファイルシステムがひとつ、 Linux システムを走らせることで提示されるファイルシステムがひとつである。 Linux では、ディスクのファイルシステムをシステムのファイルシステム上に マウント(mount)している。
前章では、
ハードディスクは 1 と 0 を書き込める巨大な空間にすぎない。ファイルシステム
がそれにかたち(structure)を与え、ディレクトリ構造をもったファイル群に見えるよ
うにしている。個々のファイルは、i-node によって表わされる。i-node は、誰の
ファイルか、いつ作られたのか、ファイルの中身はどこにあるのかといった情報を伝
える。
ディレクトリも i-node で表現されているが、その i-node は、当該ディレクトリに
あるファイルの i-node がどこにあるかという情報しか伝えない。システムが
ファイルの末尾にデータを付け加えた場合、新しいブロックがそのファイルの一部で
あると伝達できる状態にするため、i-node の更新がなされる。しかし、その更新がな
される前に、データが書き込まれてしまうことがあるし、その逆もある。もしその時
点で電源が落ちると、ファイルシステムは整合性を失う。
マウントコマンドはデバイス上のファイルシステムを把握し、システムを利用する時
に目にするようなファイルの階層構造(hierarchy)にそれを付け加える。カーネルは、
通常ルートファイルシステムを読み込み専用(read-only)でマウントする。マウントコ
マンドは、
Linux は他の種類のファイルシステムもサポートしている。
さらに、
7.1 設定ext2 ファイルシステムを作る
ファイルシステム上のどこに何がマウントされるかは、
7.2 演習非常に小さなファイルシステムを作って、hex ビューワで見てみること。 i-node や スーパーブロック、ファイルの中身がどれなのか見分けること。
ファイルシステムをグラフィカルに見ることができるツールがあるはずだと思う。 それを見つけて試してみたら、その URL と使った感想をわたしにメールで教えて ほしい。(訳注: xcruise というのがあります。)
カーネルの ext2 ファイルシステムのコードをチェックすること。
7.3 参考文献等
次のページ 前のページ 目次へ |
[ |