链接命令:In
- In -s [原文件] [目标文件]
- 命令英文原意:link
- 功能描述:生成链接文件
- 选项: -s 创建软链接
硬链接特征:
- 拥有相同的i节点和存储block块,可以看做是同一个文件
- 可通过i节点识别
- 不能跨分区
- 不能针对目录使用
在格式化时,第一将分区划分为等大小的block数据块,该数据块通常为4KB。
第二建立分区表,并为每个文件建立一个相关数据。
当用户搜索某个文件时,会先到分区表中查找文件所对应的block存储位置,接着到相应位置取出,并返回给用户。
硬链接与原文件拥有相同的i节点。因此,与原文件非常相似。
当删除原文件或硬链接文件的任何一文件,不影响文件索引操作。
可看做,同一个文件的不通进入点。它是同样的存储空间。
把一个删掉,另一个只要文件名还在,依然可以使用。
ln ./source/abc ./target/bcd.hard 创建后,引用计数+1
ls -i ./source/abc ./target/bcd.hard 可使用ls -i 来查看文件i节点号
不建议创建硬链接文件
- 文件太过隐蔽,除了有i节点这样一个标识之外,很难区分它是不是硬链接
- 硬链接限制较多,不能跨分区,不能针对目录,使用当中容易出现错误使用方法
软连接(推荐使用):
- 1.类似windows快捷方式
- 2.软连接拥有自己的i节点和block块,但数据块只保存原文件的文件名和I节点,没有实际的文件数据
- 3.lrwxrwxrwx l软连接 软连接的文件权限都为rwxrwxrwx
- 4.修改任意文件,另一个都改变
- 5.删除原文件,软连接不能使用
- 6.创建软链接,原文件一定要写绝对路径。否则,软链接会到它所在的同一目录去找原文件。
Q&A
软链接是记录块中记录的是目标文件名,而不是目标文件inode,如果是inode,删除目标文件,因为有硬链接的存在,使得inode依然存在,则软连接依然有效,所以记录的不是文件inode;删除目标文件,在新建一个相同文件名的文件(内容不同),则软连接就再次有效了,所以软连接记录的是目标文件名,而不是inode;此时,硬链接和软连接的数据是不同的
巴拉巴拉
走过的路越多,越喜欢宅着。
见过的人越多,越喜欢孩子。
—《我不》
技术太弱,想着闭门修炼,奈何琐事太多,欲望太满,慢慢去提升专注力和学习效率吧~
日常做梦有一众大神带我遨游在技术的海洋,可惜~笨成这个损色儿~安个环境都能出bug~要命呀~
恩,任重而道远,日常加鸡血~