ファイルシステムの仕組み ― データはどうやってディスクに保存されるのか
パソコンで「保存」を押すとファイルができるけど、ディスクの中では何が起きてるの?
いい質問だね。ディスクは「ブロック」という一定サイズの区画に分かれていて、ファイルシステムがそのブロックをまとめて管理しているんだ。ファイル名から実際のデータの場所を引けるようにする、いわば図書館の目録みたいな役割だよ。
ブロック?ファイルって1個の塊じゃないの?
へぇ〜。でも停電とかでデータが壊れたりしないの?
ファイルシステムっていろいろ種類があるよね?どう違うの?
ZFSってたまに聞くけど、何が特別なの?
HDDって使ってるとだんだん遅くなるって聞いたけど、あれって何?
そういえば、ファイルを「削除」しても復元ソフトで戻せることがあるよね。あれはなんで?
ここが面白いところで、ファイルの「削除」は実はディレクトリエントリの削除(unlink)なんだ。inodeとデータブロック自体はすぐには消えない。新しいデータで上書きされるまでディスク上に残っているから、復元ツールで読み取れることがある。本当にデータを消したい場合は、ブロックをゼロやランダムデータで上書きする必要があるよ。
ハードリンクとシンボリックリンクの違いも関係あるの?
inodeに限りがあるって聞いたことあるけど、困ることってある?
ファイルシステムって奥が深いんだね…!普段意識しないけど大事な存在なんだ。