相关概念:
链接:简单说,链接就是一种文件共享的方式,是POSIX中的概念,主流文件系统都支持链接文件。
inode:在Linux文件系统中,保存在磁盘的上的文件不管是什么类型,都给他分配一个编号,称为索引节点号inode。
Linux用ln命令创建软、硬链接。
1、软链接
创建软链接:ln -s 源文件 软链接文件
示例:在/opt目录下创建一个/tmp/test文件的软链接slnfile1
总结:
1、软链接相当于Windows的快捷方式
2、软链接里面存放的是源文件的路径,指向源文件
3、删除源文件,软链接文件依然存在,但是无法通过软链接访问源文件,已经失效,并且白字红底闪烁
4、软链接和源文件是不通的文件,iNode号不同,文件类型也不同
5、所有连接文件的权限都是777,而实际权限是由链接指向的源文件权限决定的
2、硬链接
创建硬链接:ln 源文件 硬链接文件
示例:在/opt目录下创建/tmp/test文件的硬链接hlnfile1
总结:
1、具有相同iNode节点号的多个文件,互为硬链接文件
2、删除硬链接文件或者源文件任意之一,文件实体并未被删除,只有删除了所有硬链接文件和源文件,文件实体才被删除
3、硬链接文件只是文件的另一个入口
4、链接文件和源文件属性相同
5、不能跨分区,不能对目录使用
3、硬链接和软链接区别
1、软链接其实就是创建一个新文件,这个文件就是用来指向其他文件的,软链接文件的inode号跟源文件的inod不同
2、硬链接是不会创建inode号的,他只是在源文件的inode link count域里再增加1,因此硬链接不可以跨文件系统,软链接可以
3、硬链接是一个文件别名
4、硬链接不可以对不存在的文件和目录创建,软链接可以