当前位置: 首页 > Linux

Linux中软链接和硬链接的区别

时间:2023-04-07 01:04:44 Linux

硬链接硬链接是通过索引节点建立的链接。在Linux中,允许多个文件指向同一个索引节点,这样的链接就是硬链接。硬链接只能在同一文件系统中的文件之间进行链接,不能创建目录。如果删除了硬链接对应的源文件,硬链接文件仍然存在,并保留了原来的内容,可以防止文件因误操作而被误删除。由于硬链接是inode号相同但文件名不同的文件,删除硬链接文件不会影响其他inode号相同的文件。通过lnrumenz.txt创建硬链接rumenz123.txt不能创建目录硬链接,只能创建文件。作为文件的副本存在,但不占用实际空间。文件名具有相同的索引节点和数据块。硬链接只能在同一个文件系统中创建,不能跨文件系统创建硬链接。删除其中一个硬链接文件不会影响具有相同索引节点号的其他文件。只能创建现有文件。适用场景用于数据文件镜像,防止误删软链接。软链接(也称为符号链接)不同于硬链接。一个文件的用户数据块中存储的内容是另一个文件的路径名。软链接就是一个普通的文件,只是数据块的内容有点特殊。可以在文件或目录上创建软链接。软链接主要用于以下两个方面:一是方便管理,比如可以将复杂路径下的文件链接到简单的路径下,方便用户访问;二是解决文件系统磁盘空间不足的问题。比如某个文件系统的空间已经用完了,现在必须在该文件系统下新建一个目录来存放大量的文件,那么就可以链接到另一个文件系统中剩余空间较多的目录文件系统这样就可以很好的解决空间不足的问题。删除软链接不影响指向的文件,但如果删除指向的原文件,则相关的软链接成为死链接。ln-srumenz.txtrumenz123.txt以另一种文件路径的形式存放。可以创建跨文件系统,但不能创建硬链接。目录可以链接。它有自己的文件属性和权限。可以为不存在的文件或目录创建软链接。可以在文件或目录上创建软链接。创建软链接时,链接计数i_nlink不会递增。删除软链接不影响指向的文件,但如果删除指向的原文件,相关的软链接称为死链接(即悬挂链接,如果重新创建指向的路径文件,则死链接可以被删除)恢复正常的软链接)。无论是硬链接还是软链接,都不会复制原文件,只会占用极小的磁盘空间。适用场景方便文件管理,将复杂路径下的文件链接到简单路径下访问。解决某个目录空间不足的问题。如何查看一个文件的硬链接文件>ls-iltotal81806727-rw-r--r--2rootroot137May620:14one.txt1806727-rw-r--r--2rootroot137May620:14tow.txt硬链接文件的inode号相同。可以看出,由于one.txt和tow.txt互为硬链接,所以它们的inode号是相同的。>find/-inum1806727查看整个文件系统。哪些文件是one.txt的硬链接。如何查看文件的软链接>find-typel-execls-l{}\;|grep'rumenz.txt'知道一个软链接文件,如何找到真实路径//realpath软链接文件>realpath/etc/rc.local/etc/rc.d/rc.local原文链接:https://rumenz.com/rumenbiji/...微信公众号:入门