Linux运维学习笔记-软硬链接知识总结

文件链接

 

 

硬链接,通过索引节点来进行链接

 

硬链接原理图

 

硬链接的创建:

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

硬链接知识小结:
1、具有相同Inode节点号的多个文件是互为硬链接文件。

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

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

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

5、硬链接文件就是文件的另一个入口。

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

7、硬链接文件可以用rm命令删除。

8、对于静态文件(没有进程正在调用的文件)来说,当对应硬链接数位0(i_link),文件就被删除。i_link的查看方法(ls -l结构的第三列就是)

 

软链接原理图:

 

软链接或叫符号链接,相当于windows的快捷方式

软链接的创建:

       直接执行命令“ln -s 源文件 硬链接文件”,即可完成创建软链接。

软链接知识小结:

1、 软链接类似windows的快捷方式(可以通过readlink查看其指向)。

2、 软链接类似一个文本文件,里面存放的是源文件的路径,指向源文件实体。

3、 删除源文件,软链接文件依然存放,但是无法访问指向的源文件路径内容了。

4、 失效的时候一般是红字白底闪烁提示。

5、 软链接和源文件是不同类型的文件,也是不同的文件。inode号也不相同。

6、 删除软链接文件可以用rm命令。

目录链接:

①    对于目录,不可以创建硬链接,但可以创建软链接

②    目录的硬链接不能跨越文件系统

③    每个目录下面都有一个硬链接“.”号,和对应上级目录的硬链接“..”。

④    在父目录里面创建一个子目录,父目录的链接数增加1(子目录里都有..来指向父目录)。但是在父目录里创建文件,父目录的链接数不会增加。

 

 

删除文件原理:

 Linux是通过link的数量来控制文件删除的,只有当一个文件不存在任何link的时候,这个文件才会被删除。一般来说,每个文件都有2个link计数器:i_count 和 i_link。

 i_count的意义是当前文件使用者(或被调用)的数量,i_nlink 的意义是介质连接的数量(硬链接的数量);可以理解为i_count是内存引用计数器,i_nlink是磁盘的引用计数器。

 

原文地址:https://www.cnblogs.com/tcheng/p/8595293.html