乐趣区

关于ubuntu:ubuntu常用知识2

明天简略聊聊链接,Let’s do it!

一、软硬链接

当咱们须要在不同的目录,用到雷同的文件时,咱们不须要在每一个须要的目录下都放一个必须雷同的文件,咱们只有在某个固定的目录,放上该文件,而后在其它的目录下用 ln 命令链接(link)它就能够。
命令格局:
建设:ln (-s) source_address target_address
删除:rm -rf target_address
不加 - s 代表硬链接,加 - s 代表软链接。

软硬链接特点

软链接会在你的指标地位上生成一个源文件的镜像,其实并不占用任何贮存空间或者占用极小的空间。而硬链接会在你选定地位上生成一个与源文件大小雷同的文件。软硬链接均具备同步性,无论更改指标文件还是源文件都会影响其余。软链接删除源文件时,指标文件还在,但因为找不到源文件会报错。硬链接无论删除的是源文件还是指标文件,只有有一个文件存在,那这个文件仍旧存在。

应用上软链接比硬链接更灵便,具体表现为:
1. 软链接可跨文件系统应用,比方能够应用 ln -s windowsfile.txt bb 命令将 bb 链接到 windows 的文件 windowsfile.txt。但硬链接就不能够。
2. 软链接能够链接目录,硬链接不能够。

解释

linux 零碎最要害的一个概念就是一切都是文件,即使是咱们所说的是硬盘,Linux 也会认为它是一个文件。而 linux 拜访文件的形式有两种,一种是将节点号作为文件指针,另一种是通过文件路径名作为文件指针。实际上,咱们每建设一个新文件,实质上建设了指向该文件的节点,它的别名才是它的文件名即路径名。硬链接间接应用节点号作为拜访文件指针,每建设一个硬链接都会使节点链接数加 1,只有节点链接数不为 0,该文件就始终存在。软链接将文件门路别名作为文件导向,所以当删除了源文件时,别名不存在,软链接就生效了。

这就导致了一个景象:即新建一个文件 test,咱们对其别离建设硬链接 hard 与软链接 soft,而后咱们将 test 删除。咱们发现通过 hard 仍可拜访文件(零碎逻辑为首先判断节点链接数不为 0,则不删除源文件,只管它的路径名曾经不存在,但仍能够通过它的硬链接拜访该节点标号的文件),然而 soft 曾经生效了(零碎逻辑尽管判断节点数不为 0,但因为 soft 是通过门路别名拜访文件的,所以即便文件存在,它也拜访不到了)

退出移动版