创建硬链接是否会创建新的inode?

时间:2015-11-10 16:10:04

标签: filesystems posix symlink inode hardlink

this StackOverflow线程,我发现符号链接有自己的inode,它们与它们的目标不同。这可以通过ls -i进行验证。该命令将显示符号链接及其目标具有不同的inode编号。但硬链接的情况如何呢?创建硬链接是创建新的inode,还是仅在包含目录的数据中添加条目而不创建任何新的inode?换句话说,创建硬链接是否会创建真实的文件?创建符号链接当然可以。

1 个答案:

答案 0 :(得分:2)

用于显示ln -s创建新inode的相同方法可用于单独验证ln。创建硬链接会创建指向同一个inode的目录条目(此处为编号26477281)。

$ touch foo 
$ ls -li foo
26477281 -rw-r--r-- 1 jlliagre jlliagre 0 Nov 10 21:39 foo
$ ln foo bar
$ ls -li foo bar
26477281 -rw-r--r-- 2 jlliagre jlliagre 0 Nov 10 21:39 bar
26477281 -rw-r--r-- 2 jlliagre jlliagre 0 Nov 10 21:39 foo

请注意,创建硬链接后链接计数从1更改为2。