UNIX文件系统如何与节点形成结构

时间:2016-04-22 12:12:34

标签: unix directory filesystems inode

我正在尝试了解UNIX文件系统如何处理inode。据我所知,目录只是表示一个表,其中包含每个子目录或文件的[name:inode]形式的条目。

我感到困惑的是这些目录如何构成一个结构。如果我有一个目录'root'包含一个子目录'home',其中包含一个文件'file.txt',那么我相信根目录会有一个条目['home':( home associated inode)]但是这个链接是怎么回事到'主页'目录表?

非常感谢任何帮助或指导, 本

1 个答案:

答案 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指向其他块的指针。)