Closed. This question is off-topic. It is not currently accepting answers. Learn more。
想改进这个问题吗?Update the question所以堆栈溢出的值小于aa>。
去年关门了。
假设我创建了一个文件。一个新的inode已经创建。
然后我创建了一个指向该文件的软链接,并删除了硬链接。
iNoD仍然存在吗?它是否指向内存中的同一位置?
软链接是否连接到连接到内存的inode,这是找不到文件的原因,还是软链接失去了与inode的连接?
谢谢您。
如果删除文件,索引节点将消失。
想改进这个问题吗?Update the question所以堆栈溢出的值小于aa>。
去年关门了。
假设我创建了一个文件。一个新的inode已经创建。
然后我创建了一个指向该文件的软链接,并删除了硬链接。
iNoD仍然存在吗?它是否指向内存中的同一位置?
软链接是否连接到连接到内存的inode,这是找不到文件的原因,还是软链接失去了与inode的连接?
谢谢您。
最佳答案
这是一个话题,而且不止一个问题,但是:
Linux中的软链接未连接到索引节点。它只有文件名(见软链接的大小?名称的长度是链接到!)。即使重命名原始文件也会断开链接。
[bart@localhost link]$ touch foo
[bart@localhost link]$ ln -s foo bar
[bart@localhost link]$ ls -la
lrwxrwxrwx 1 bart bart 3 Dec 13 21:09 bar -> foo
-rw-rw-r-- 1 bart bart 0 Dec 13 21:09 foo
[bart@localhost link]$ mv foo foo2
[bart@localhost link]$ ls -la
lrwxrwxrwx 1 bart bart 3 Dec 13 21:09 bar -> foo
-rw-rw-r-- 1 bart bart 0 Dec 13 21:09 foo2
[bart@localhost link]$ cat bar
cat: bar: No such file or directory
如果删除文件,索引节点将消失。
07-24 13:41