美文网首页
[译]硬链接与软链接的区别

[译]硬链接与软链接的区别

作者: everfight | 来源:发表于2018-05-04 19:28 被阅读16次

原文摘自:what-is-the-difference-between-a-hard-link-and-a-symbolic-link

一图胜千言。


图片描述图片描述

一例胜百图。
创建两个新文件:

touch blah1
touch blah2

向里面添加点内容

echo "Cat"  > blah1
echo "Dog" > blah2

查看添加的内容:

cat blah1; cat blah2
Cat
Dog

创建硬链接和软链接

ln blah1 blah1-hard
ln -s blah2 blah2-soft

查看下我们创建的东西

ls -l 
blah1
blah1-hard
blah2
blah2-soft -> blah2

修改blah1的名字没有什么影响

mv blah1 blah1-new
cat blah1-hard
Cat

blah1-hard指向的是inode,所以文件的内容没有变化。

mv blah2 blah2-new
ls blah-soft
blah2-soft
cat blah2-soft
cat: blah-soft: No such file or directory

文件的内容没有办法找到,因为软链接是指向的名字,而名字已经被修改了,所以找不到对应的文件。
因此:
blah1被删除了,但是blah1-hard仍然拥有内容。
blah2被删除了,但是blah2-soft是一个指向不存在文件的链接。

补充:
硬链接不能跨越文件系统。 为什么? 硬链接共享相同的inode - 它们指向硬件位置,而不是目录树。 这意味着如果你试图在ext3和ext4之间建立硬连接,那么你会遇到一些问题 - 这些文件系统是不同的,所以他们不能共享inode。

相关文章

  • [译]硬链接与软链接的区别

    原文摘自:what-is-the-difference-between-a-hard-link-and-a-sym...

  • 硬链接与软链接区别

    硬链接与软链接区别: 文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) ...

  • 软链接与硬链接的区别

    这两牵扯到链接,那么先介绍以下链接。在文件系统中,有一种可以把不同的文件相连接到一起的机制,这个机制叫做链接。通俗...

  • linux 软链接与硬链接的区别

    软链接与硬链接的区别 1. 硬链接不会创建inode,即使用的inode都是一样的。软链接会创建新的inode。 ...

  • 链接文件

    ln 软链接和硬链接的区别

  • 硬链接与软链接的联系与区别

    我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (m...

  • 2019-03-29 第二关第一套考试知识点部分题

    理论部分 请说出软链接和硬链接的区别 概念:硬链接与源文件的inode节点号一样,而软链接不一样,相当于windo...

  • 硬链接与软链接

    硬链接 我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数...

  • 软链接与硬链接

    1. 是什么 链接:一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。 【硬链接】(hard lin...

  • 软链接与硬链接

    1. 是什么 链接:一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。 【硬链接】(hard lin...

网友评论

      本文标题:[译]硬链接与软链接的区别

      本文链接:https://www.haomeiwen.com/subject/uvljrftx.html