Linux 硬链接与软链接详解(1)老男孩教育

linux 系统中,链接可分为两种:一硬( Hard Link ),另一种为软链接 或符号(Symbolic Link or Soft link )

硬链接: ln [ 源文件 ] [ 目标文件 ]

软链接: ln -s [ 源文件 ] [ 目标文件 ](目标文件不能时先存在)

 

硬链接是指通过索引节点( iNode )来进行链接的,在 linux 文件系统中,保存在磁盘分区的 文件不管是什么类型都会给他分配一个编号,这被称为索引节点( index inode )简称 iNode ,即在系统中文件的编号。

linux 文件系统中, 多个文件名 指向 同一个索引节点 (iNode )是正常允许的,这种情况就称 为硬链接。

硬链接.png

硬链接的创建:

直接执行命令:“ln [源文件] [硬链接文件]”即可完成创建

 

硬链接小结:

1)具有相同的iNode 节点号的多个文件是互为硬链接

2)删除硬链接文件或者删除源文件任意之一,文件实体并未被删除

3)只有删除源文件以及所有对应的硬链接文件,文件实体才会被删除

4)当所有的硬链接文件及源文件被删除后,再存放新的数据会占用这个文件的空间,或者磁盘fsck检查的时候,删除的数据也会被系统回收

5)硬链接文件就是文件的另一个入口(相当于超市的前门、后门一样)

6)可以通过给文件设置硬链接文件,来防止重要文件被误删

7)通过执行命令“ln 源文件 硬链接文件”,即可完成创建硬链接

8)硬链接文件是普通文件,因此可以用rm 命令删除

9)对于静态文件(没有进程调用的文件)来讲,当对应硬链接数为0(i_link),文件就被删除,i_link

的查看方法(ls -l 结果的第三列就是)

10)互为硬链接的文件 改变其中任何一个文件的权限 其他文件权限跟着变