by shigemk2

当面は技術的なことしか書かない

inode

inode - Wikipedia

ext2などのUnixファイルシステムで古くから使われているデータ構造のこと。
inode にはファイル、ディレクトリなどのファイルシステム上のオブジェクトに関する基本情報が格納される。

Linuxでは、このようなデータのカーネルでのメモリ上の表現を struct inode と呼ぶ。
inodeは以下のような情報が格納されている。

  • ファイルの長さ(バイト数)
  • デバイスID(ファイルを格納しているデバイスを識別)
  • ファイル所有者のユーザーID
  • ファイルのグループID
  • ファイルシステム内でファイルを識別する inode 番号
  • ファイルモード(ファイルパーミッション
  • 最終 inode 更新時(ctime)、最終ファイル更新時(mtime)、最終参照時(atime) を示すタイムスタンプ群
  • その inode を指すハードリンクがいくつあるかを示す参照カウント

なお、inodeは番号で識別される。
inode番号とは、その inode が記録されているデバイス上で唯一の整数値である。
全てのファイルは inode に物理的にリンクされている。
プログラムがファイルをファイル名で参照するとき、システムはそのファイル名に対応する inode を検索する。

そのため、ハードリンクで同じものがリンクされている場合、
inodeの番号も同じになる。

そして、inodeはls -iとかで確認出来る。