一、总结表格
链接类型 | 命令 | 文件类型 | 文件路径 | 空间占用 | 可链接类型 | 本质 | Windows下是否可跨磁盘 | 询问方式 | 源文件与链接文件关联关系 |
---|---|---|---|---|---|---|---|---|---|
符号链接 (软链接) | /d | .symlinkd | 相对路径/绝对路径 | 不占空间 | 只能是目录 | 相当于只是对源目录进行了引用, 可以理解为:只有使用权,没有所有权,可以当作快捷方式。 | 可以跨本地磁盘, 也可以跨网络磁盘(共享目录)。 | 本地访问:通过链接目录所在磁盘路径访问。 网络访问:通过tomcat可实现。 | 源目录移动、重命名或删除后,链接目录无效; 链接目录删除,源目录不受影响; 源目录里面的文件发生变化时(新增、修改、删除),链接目录里面的文件同步发生变化,反之,同样成立。 |
目录联接 (软链接) | /j | .junction | 只能是绝对路径 | 不占空间 | 只能是目录 | 同上,联接点。 | 只能跨本地磁盘。 | 同上。 | 同上。 但是,创建的链接文件夹移动后, 使用相对路径的符号链接会失效, 使用绝对路径的连接点链接仍有效。 |
硬链接 | /h | .源文件类型 | 只能是绝对路径 | 占用空间和源文件一样 | 只能是文件 | 相当于对源文件进行拷贝备份, 可以理解为:执行了复制和粘贴的操作。 | 都不可以。 | 本地访问:通过链接文件所在磁盘路径访问。 网络访问:通过tomcat可实现。 | 源文件删除后,链接文件无效; 链接文件删除,源文件不受影响; 只有将源文件和链接文件全部删除时,才会将文件真正的删除; 当源文件内容发生变化时(修改),链接文件同步发生修改,反之,同样成立。 |
快捷方式 | 批处理 | .lnk | 只能是绝对路径 | 文件大小仅有几百字节Byte,与原文件大小无关。 | 文件和目录均可 | 只能跨本地磁盘 | 本地访问:自动跳转到文件、目录的所在磁盘路径访问。 网络访问:无法通过网络访问到该快捷方式所对应的实际文件。 | 源文件删除,快捷方式失效; 快捷方式删除,源文件不受影响; 只是创建了一个快捷方式。 |
二、详细介绍
1. 符号链接
符号链接(Symbolic Link)
类似于我们熟知的“快捷方式”,是一个指向其它位置的文件,但与快捷方式不同的是,符号链接不会跳转到它所指向的位置,而是类似于“替代”它所指向的文件或文件夹,对操作系统而言,符号链接就是它所指向的文件本身,对符号链接的所有操作就像是对文件本体操作一样,没有区别,利用这一特性,我们将软件保存数据的文件夹“符号链接”到其它分区,数据就会被转移。在linux系统中符号链接也叫作“软链接”。
2. 硬链接
硬链接(Hard Link)
更类似于文件的“复制”,除了文件名称不同之外,你无法区分硬链接和源文件的区别,但硬链接实际并不复制文件和占用空间,它只是和源文件名称共同指向同一块物理空间,硬链接并不会新建inode信息,而是在源文件的inode信息中为链接域增加1,删除源文件或删除硬链接并不会真正删除文件,只有inode链接域为0时文件才会被删除,正因如此,硬链接只能创建在同一分区中,并且不支持文件夹。
3. 目录联接(联接点)
Windows系统中大量使用了一种叫作目录联接(Junction Point)
的文件夹,表面上像是快捷方式或符号链接,有快捷方式的箭头,但你可以将它看作是文件夹形式的硬链接,文件夹属性更像是文件夹本体。这些文件夹的作用大多是为了兼容老的操作系统,通常是隐藏文件夹。
4. 快捷方式
快捷方式
类似于一个“文本”文件,保存了它所指向的链接地址,这种方式执行有些缓慢,而且会占用一部分磁盘空间,而符号链接将链接地址保存在文件系统的inode数据结构中,高效执行且不会占用磁盘空间。
Windows创建快捷方式很简单,在右键菜单的新建菜单中就可以创建快捷方式,之后输入链接地址和名称即可。