メインコンテンツへ
ソフトウェアファイルシステム

UNIX/Linuxのinode(アイノード)に含まれる情報として正しいものはどれか。

ア.ファイルの暗号化キーとチェックサムのみが格納されている。
イ.ファイルの名前(ファイル名)とその内容(データブロック)が直接格納されている。
ウ.ファイルの属性(サイズ・パーミッション・タイムスタンプ)とデータブロックへのポインタが格納されている。正解
エ.ディレクトリ構造(親・子ディレクトリの一覧)のみが格納されている。

解説

inodeは「ファイルの身分証明書」。名前や中身そのものではなく、ファイルの属性情報(誰のもの、サイズ、いつ更新など)とデータの居場所(ポインタ)が書いてあります。

なぜ ウ が正解か

inodeはUNIX系ファイルシステムのメタデータ構造体で、以下を含みます: ・ファイルサイズ ・所有者(UID/GID) ・パーミッション(読み書き実行権限) ・タイムスタンプ(作成・変更・アクセス時刻) ・データブロックへのポインタ(直接・間接・2重間接) ・ハードリンク数 重要: ファイル名はinodeに含まれず、ディレクトリエントリ(ファイル名→inode番号のマッピング)で管理されます。これによりハードリンク(複数ファイル名が同一inodeを指す)が実現できます。

なぜ ア は間違いか

暗号化キーやチェックサムは標準的なinodeの内容ではありません(暗号化ファイルシステムでは拡張属性として扱われる場合があります)。inodeの核心はファイル属性とデータブロックポインタです。

なぜ イ は間違いか

ファイル名はinodeに含まれません。ファイル名はディレクトリの構造(ディレクトリエントリ)に格納され、inode番号とのマッピングとして管理されます。また生のデータブロック内容もinodeには含まれません。

なぜ エ は間違いか

ディレクトリ構造はディレクトリファイル(ファイル名とinode番号のマッピングリスト)として管理され、inodeに格納されるのはそのメタデータ(どのブロックにディレクトリエントリがあるかのポインタ)です。

出典: AI生成問題(学習用)