简介
在linux中一般包含两种链接
- 硬链接 (hard link)
- inode相同
- 不能链接目录,可以链接多个文件
- 链接数据会变化
- 删除源文件不会影响链接文件
ln file[file2 file3] targetfile(targetDir)
- 软链接(符号链接) (symbolic link)
- inode不同
- 可以链接不同的文件系统、目录(绝对路径)
- 文件属性标明出是软链接
- 链接数目不变
- 有链接次数限制
- 软链接文件大小与源文件不一样
- 删除源文件链接文件不可用
ln -s file[file2 file3](sourceDir) targetfile(targetDir)
例子
ls -il
可看到hard与hardlink的inode值一样说明是同一个文件;而soft与softlink不是同一个文件。
软链接会显示指向文件,两文件的链接数也不一样。
编辑任一文件都会影响到链接到的文件。
索引节点(inode):在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号,我们可以将inode简单理解成一个指针,它永远指向本文件的具体存储位置。文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存在,从而实现文件的快速访问。系统是通过索引节点(而不是文件名)来定位每一个文件。