Linux学习笔记

来源:互联网 发布:炫踪网络 金利科技 编辑:程序博客网 时间:2024/06/12 00:55

硬链接

       只能引用同一文件系统中的文件。它引用的是文件在文件系统中的物理索引(也称为 inode),但是它不会建立inode,而只是在文件原来的inode link  count域再增加1而已,也因此硬链接是不可以跨越文件系统的。当您移动或删除原始文件时,硬链接不会被破坏,因为它所引用的是文件的物理数据而不是文件在文件结构中的位置。硬链接的文件不需要用户有访问原始文件的权限,也不会显示原始文件的位置,这样有助于文件的安全。如果您删除的文件有相应的硬链接,那么这个文件依然会保留,直到所有对它的引用都被删除3。


软连接

       其实就是新建立一个文件,这个文件就是专门用来指向别的文件的。软连接产生的是一个新的文件,但这个文件的作用就是专门指向某个文件的,删了这个软连接文件,那就等于不需要这个连接,和原来的存在的实体原文件没有任何关系,但删除原来的文件,则相应的软连接不可用(cat那个软链接文件,则提示“没有该文件或目录“),软连接会重新建立一个inode,当然inode的结构跟其他的不一样,他只是一个指明源文件的字符串信息。一旦删除源文件,那么软连接将变得毫无意义。


两者之间的区

硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。可以通过ls  -i来查看一下,这两个文件的inode号是同一个,说明它们是同一个文件;而软链接建立的是一个指向,即链接文件内的内容是指向原文件的指针,它们是两个文件。

软链接可以跨文件系统,硬链接不可以;软链接可以对一个不存在的文件名(filename)进行链接,硬链接不可以,软链接可以对目录进行连接,硬链接不可以。两种链接都可以通过命令  ln 来创建。ln 默认创建的是硬链接。使用 -s 开关可以创建软链接。

原创粉丝点击