Linux软链接和硬链接

  • 文件的组织:文件通常是由文件数据元数据组成的,元数据属于文件的属性,例如文件的名字,大小,创建事件,所有者等,真实数据则是文件数据的保存位置,文件名是文件的属性,并不属于文件的数据,系统标识文件是通过Inode号码来进行识别的;软链接和硬链接都是文件共享的一种方式,并且可以隐藏文件系统路径,并且保证安全

  • 硬链接:是具有相同Inode号码,但是文件名不同的文件,每一个文件都有自己对应的inode,当多个目录都指向同一个inode时这些链接就是硬链接,文件被硬链接的次数如果小于1在删除,文件就会被删除;

    • 文件具有相同的inode号码以及真实数据存储区域;
    • 硬链接只能够对于那些已经存在的文件创建
    • 硬链接不支持跨于文件系统进行创建;
    • 硬链接不能够对于目录进行创建;
    • 删除硬链接并不影响具有相同inode号码的其他硬链接文件;
  • 对于不存在文件创建硬链接
    Linux软链接和硬链接
    • 查看Inode号码是否相同,对于链接文件仍然是普通文件,前面的标示为-;
      Linux软链接和硬链接
    • 不能够交叉文件系统创建,这里存在一个挂载的文件系统,和当前系统的文件系统
      Linux软链接和硬链接
    • 不能够对于目录创建硬链接
      Linux软链接和硬链接
    • 当文件被链接的次数增加,这个数值就会增加
      Linux软链接和硬链接
    • 软链接:拥有自己的数据区域和元数据区域,数据区域存储的是链接指向文件的inode号码,以及自己的inode号码;
      • 软连接本身是一个文件,拥有自己独立的文件属性和权限;
      • 可以对不存在文件或者目录创建软链接;
      • 软链接可以交叉文件系统进行创建;
      • 软链接可以对于文件或者目录进行创建;
      • 创建软连接不会导致i_link数目增加
  • 可以对于不存在的文件创建软链接
    Linux软链接和硬链接
  • 两个文件的权限和inode号码是不一样的
    Linux软链接和硬链接
  • 跨文件系统进行创建
    Linux软链接和硬链接
  • 软链接不会导致i_link数目的增加
    Linux软链接和硬链接
  • 软链接支持给一个软链接创建软连接
    Linux软链接和硬链接
  • 关于find命令在这里的几个关键用法
  • 查找某个文件的软连接
    Linux软链接和硬链接
  • 找出所有的软链接文件,通过指定文件的类型来制定
    Linux软链接和硬链接