目录
1.构建Linux的路径结构,让我们可以使用 . .. 来进行路径定位
一、软链接
ln -s 目标文件 链接文件
1)理解软链接
软链接是一个独立的文件,因为有独立的inode number
软链接的内容:目标文件所对应的路径字符串
其就类似于Windows中的快捷方式
若是把目标文件删除掉,即类似于删掉.exe可执行文件导致软链接无效
删除掉软链接可以用 rm 或者 unlink 删掉:
2)软链接的用途
bin:可执行文件
conf:配置文件
log:日志
如果需要执行目录bin中的可执行文件,都需要一大串的字符串路径:
这样会很麻烦,这时候就可以使用软链接来建立一个快捷方式:
二、硬链接
ln 目标文件 链接文件
1)理解硬链接
硬链接不是一个独立的文件,因为没有独立的inode number,用的是目标文件的inode
硬链接就是一个文件名和inode的映射关系,建立硬链接,就是在指定目录下,添加一个新的文件名和inode nuber的映射关系!
当我们将目标文件删除时,仍然可以使用硬链接
因此硬链接类似于一个重命名
这一列的数字属性为硬链接数(引用计数)
为什么目录默认的引用计数会为2呢??
因为在一个目录里面,都会存在一个隐藏的名称为 . 的硬链接
当我们再到目录里创建一个目录时:
这时,引用计数变为了3
任何一个目录,刚开始新建的时候,引用计数一定是 2
目录A内部,新建一个目录,会让日录的引用计数自动 +1
一个目录内部有几个目录:A的引用计数 -2
例:
在Linux系统中,不允许给目录建立硬链接 -- 避免路径环绕
不会;
因为文件名是固定的,所有的系统指令在设定的时候,几乎都能知道是干嘛的
2)硬链接的用途
1.构建Linux的路径结构,让我们可以使用 . .. 来进行路径定位
通过cd .. 即可进入上一级目录
2.一般用硬链接来做文件备份
ln original_file.txt backup_file.txt
这里,
ln
是创建链接的命令,original_file.txt
是源文件,backup_file.txt
是要创建的硬链接文件(也就是备份文件)。
3)属性中的硬链接数
也就是文件的磁盘级引用计数:有多少个文件名字符串通过inode number指向我
这个我指的是inode