我正在尝试了解UNIX文件系统如何处理inode。据我所知,目录只是表示一个表,其中包含每个子目录或文件的[name:inode]形式的条目。
我感到困惑的是这些目录如何构成一个结构。如果我有一个目录'root'包含一个子目录'home',其中包含一个文件'file.txt',那么我相信根目录会有一个条目['home':( home associated inode)]但是这个链接是怎么回事到'主页'目录表?
非常感谢任何帮助或指导, 本
答案 0 :(得分:2)
您的理解大多是正确的。这是一张可能会有所帮助的图片。我将假设根目录已知为inode 1.因此我们可能有:
inode 1:
type: directory
contents:
usr 17
etc 49
home 57
inode 57:
type: directory
contents:
dmr 201
scs 857
ben 981
inode 981:
type: directory
contents:
.bashrc 1045
projects 1191
file.txt 2043
inode 2043:
type: file
contents:
This is
my text file.
我已经在此处显示了文本文件的完整路径(或至少是完整路径)为/home/ben/file.txt
的情况。
(我还做了一个很大的简化。通常,文件的内容不存储在inode中,而是存储在其他磁盘块中,其中包含inode指向其他块的指针。)