Linux----硬链接与符号链接(软链接)

发布于:2022-12-25 ⋅ 阅读:(184) ⋅ 点赞:(0)


前言

Linux文件链接分两种,一种被称为硬链接,另一种被称为符号链接。


一、创建命令

  • 创建硬链接的shell命令:ln –d
  • 注意:默认情况下(即ln命令不带任何选项),ln命令产生硬链接。
  • 创建符号链接的shell命令:ln –s

二、区别

硬链接:多个文件名指向同一个i节点。

  • 硬连接的作用是允许一个文件拥有多个有效路径名。只删除一个链接并不影响i节点本身和其它的链接,只有当最后一个链接被删除后,文件的数据块及目录的链接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬链接文件均被删除。

符号链接:也叫软连接。

  • 软链接文件类似于Windows的快捷方式,它实际上是一个特殊的文件。在符号链接中,文件内容实际上是一个文本文件,其中包含所链接的文件的位置信息。

实例

  • 假设有文件file1和file2,创建file1的硬链接h_file1,创建file2的符号链接s_file2。
  • 当删掉源文件file1时,那么磁盘上file1对应的数据文件是不会被删除的,因为i节点上记录了该文件的硬链接数,只有硬链接数是0的时候,删除文件名的时候,对应的数据在磁盘上才会删除。
  • 当删除源文件file2时,s_file2将无法使用,因为它链接的文件已经不存在。

下图描述了文件hello.c、硬链接h_hello.c和符号链接s_hello.c之间的关系。

在这里插入图片描述

总结

注意区别,软连接相当于快捷方式
硬链接相当于多出一个


网站公告

今日签到

点亮在社区的每一天
去签到