ソフトウェア
Linuxのファイルシステムにおけるハードリンクに関する記述として、適切なものはどれか。
ア.異なるファイルシステム(別パーティション)に存在するファイルに対してもハードリンクを作成できる。
イ.元のファイル名を削除した後も、ハードリンクを通じてファイルのデータにアクセスできる。正解
ウ.ハードリンクはリンク先のパス名を格納した特殊ファイルとして実装されている。
エ.通常ユーザはディレクトリに対してもハードリンクを自由に作成できる。
解説
ハードリンクは「同じ実体に別名をつける」仕組みです。ファイルの本体はinode(アイノード)という管理票で、名前はその票を指す付箋に過ぎません。付箋を1枚剥がしても、票が残っている限り実体は消えません。
なぜ イ が正解か
Linuxでは、ファイルの実体(データブロックとメタ情報)はinode(アイノード)という構造体で管理されます。ハードリンクを作成すると、同じinodeを指すディレクトリエントリが追加され、inode内の「リンクカウント」が1増加します。元のファイル名(ディレクトリエントリ)を削除してもカウントが1減るだけで、0にならない限りinodeもデータブロックも解放されません。そのため、ハードリンク経由でファイルに引き続きアクセスできます。
出典: AI生成問題(学習用)