Jam*_*ude 17 windows symlink macos
我只是想知道 Windows 系统如何处理符号链接(当通过 Linuxln -s
在 Windows 本机支持的文件系统上创建时,并且支持符号链接,例如 NTFS)。我最好的猜测是它不会识别它们,但我不完全确定。
另外,Mac 遇到一个时会怎么做?
0xC*_*22L 13
当我们谈论非本地磁盘时,取决于Windows版本和服务器端的配置。
从 Windows Vista 开始,Windows 确实有符号链接的概念,但语义有所不同。但这里更重要的问题应该是路径名,它遵循不同的语法。对于初学者:unixoid 端的单根目录树和 Windows 端的几个驱动器号作为根。
在 unixoid 方面,符号链接只是带有特殊标志的文本文件。在 Windows 端,底层机制称为重新分析点。这告诉对象管理器将它传递给特定的注册过滤器(元数据存储在重新分析点中)。Windows 2000 已经引入了一种称为连接点的重新分析点(大致但不完全是目录符号链接)。在 Vista 中,他们引入了文件和目录的符号链接,也在远程驱动器上。并且在某种程度上也支持远程驱动器上的符号链接。
重点是文件系统驱动程序(在本地运行时)是否会对 Windows 看到的路径进行任何调整。在这种情况下,它适用于某些本地/相对符号链接。对于作为目标的绝对路径,推断其含义将变得困难且不可能。远程符号链接(到“网络共享”)也是如此。
至于 Mac 方面,我不知道,作为一个单独的问题可能有意义。但是只要服务器端传达了这是一个符号链接的信息,我认为没有问题,因为它们都遵循 SUS 语义(与 Windows 不同)。
考虑 Linux 侧挂载点:
/dev/sda1 /
/dev/sda2 /home
/dev/sda3 /var
Run Code Online (Sandbox Code Playgroud)
现在考虑一个/home/paul/fstab
指向/etc/fstab
. 它们位于两个不同的卷上,Windows - 如果能够通过文件系统驱动程序看到它们(它确实有效!) - 无法按照/etc/fstab
描述的方式判断属于一起。因此\paul\fstab
,即使已翻译,Windows 将在文件夹下看到的链接也会指向\etc\fstab
,而/dev/sda2
. 如果该符号链接指向相对路径,../../etc/fstab
事情根本不会改变。
要点:因此,虽然可以想象您可以在某些极端情况下使用它,但围栏两侧的语义和语法不同的事实使得您不太可能找到一种实用且通用的方法。
归档时间: |
|
查看次数: |
21146 次 |
最近记录: |