连接文件 : ln
Linux下面有两种连接文件:一种是硬连接(hard link),一种是符号连接(symbolic link).
- hard link : 用鸟哥的话来说,它是”在某个目录下新建一条文件名连接到某个inode号码的关联记录.”上一次我们提到每个文件会占用一个inode记录权限和数据存放的block号.
hard link 可以简单理解为一条关联数据的途径,就是新建一个指向这个inode的连接(注意不是增加inode),等于说原来有个连接A指向源文件target,你可以通过打开A来读取target,现在你新建一个B硬连接到target,所以你也可以通过打开B读取target,而且你无论是修改A或者B,target文件都会更新你的修改,而如果你删除了B,A,源文件target还是会存在.
★ 新建hard link并不会增加inode和block的数量.
★ 建立的hard link不能跨越文件系统,简单来说就是文件系统必须相同才可以连接.
★ 建立的hard link不能连接到目录,因为目录下可能会有很多子文件,子文件的连接怎么创建呢?考虑的连带的文件需要相当复杂度去关联,所以鸟哥说目前linux不支持目录建立hard link.
在命令行中,可以用ln 源文件 连接创建硬连接
如上面例子: ln target B 即可建立B到target的硬连接