前言
在linux中 任何软件、文件、文件夹 都可以看做是一块数据块
每个数据块都拥有自己的inode节点 可以是多个 当一块数据没有inode引用了 那么这个数据块就可以擦除了
那么在linux中 想要在任意地方去访问这个数据块 通过ln 命令建立软连接或者硬链接
- 软连接
建一个类似windows中的快捷方式的一个连接到数据块的inode上
调用路径是 软连接->inode>数据块 - 硬链接
直接建立一个对这个数据块的新inode 这个数据块的引用计数+1
调用路径 新inode>数据块
实例
软连接
建立软连接
1 | ls -s 源文件 软连接文件名 |
如果软连接的源文件 被删除了 那么这个软连接会变成红色
硬链接
硬链接的inode数是一样的指向的是同一个数据块
建立硬链接
1 | ln 源文件 硬链接名称 |
注意:
- 硬链接不允许跨分区、跨文件系统建立
- 不允许对目录建立硬链接 必要的话需要通过root用户 ln -d 强行建立硬链接
ln -n选项
-n –no-dereference 当做没有引用 配合 -f 强制更新软连接地址
文件a b
c软连接指向a 这个时候要把c软连接指向到b 必须使用 ls -snf b c
总结
通过ln 对其他文件、目录建立方便使用的连接 大部分时候使用软连接就够了