Yiges

关于链接

Dev/System

关于“链接”的一则简单介绍

Written byYiges.M.x.
2022/9/24
2026/2/19

本文主要有关 Linux(Windows) 下 软连接/硬链接/(符号链接、快捷方式) 等的区别与用法:

软连接 与 硬链接

链接是 POSIX 中的概念,主流文件系统都支持链接文件。类似于快捷方式(win)或替身(mac),主要分为软连接(符号链接)/硬链接。

原始意义下的大致区别即为:

  • 软连接是创建一个文件,有自己的元数据,与目标文件的node不同,访问时替换为目标路径,删除源文件即不能正常访问,删除链接不影响源文件。
  • 硬链接是创建一个入口,与目标文件有相同的元数据,node相同,指向磁盘中同一块区域,只要保留多个硬链接(包括源文件)中的一个即可正常访问。

Linux

创建命令

ln -s src dest  # soft link
ln src dest  # hard link

Linux下,万物皆文件,完全遵守POSIX,不存在目录与文件的不同,也不存在分区的问题,因为挂载后(本质也是链接)与本磁盘文件已经没有本质区别了。所以所有链接都和上述区别相同:

Windows

创建命令

CMD命令
mklink [ /D | /H | /J ] Link Target

Windows下,情况稍微复杂一些:( Ref1 Ref2

1664124852239.png

NameStorageTarget TypeTarget LocationBehave Like
Short CutSave as a FileFile & DirLocal (Different Partition)/ RemoteSoft Link
Symbolic Link (Soft Link)Registered to the FSFile & DirLocal (Different Partition)/ RemoteSoft Link
Hard Link (File Hard Link)Registered to the FSFileSame PartitionHard Link
Junciton Point (Dir Hard Link)Registered to the FSDirLocal (Different Partition)
cc-by-nc-sa 4.0
Copyright © 2018 - 2026 Yiges.M.x., all rights reserved.
蜀ICP备2024099498号-1
公安京公网安备11010802044966

On this page