为了绕过无法从 WSL2 Ubuntu 22.04 中挂载 NFS我试过:
- 在 Windows 中挂载 NFS 共享。
- 创建从 WSL2 到 Windows 的符号链接。
第一步成功了——我运行了mount 172.16.0.113:/mnt/share/yocto-cache z:
。它现在是只读的,但我稍后会查看。
不幸的是,我无法让第二步发挥作用。我看了WSL:使用 Windows 中的 WSL 符号链接文件夹但:
- 从 cmd(以管理员身份运行),
mklink /d \\wsl$\Ubuntu-22.04\home\tom\cache z:\
失败The device does not support symbolic links.
- 从 Powershell(以管理员身份运行)
New-Item -ItemType SymbolicLink -Path "\\wsl$\Ubuntu-22.04\home\tom\cache" -Target "z:\"
失败New-Item: Symbolic links are not supported for the specified path.
- 从 Powershell(以管理员身份运行)
cmd /c mklink /d \\wsl$\Ubuntu-22.04\home\tom\cache z:\
失败The device does not support symbolic links.
第二种和第三种方法确实会导致在\home\tom\cache
WSL2 中创建目录,但仅此而已。
为了进一步调试这个问题,我尝试在 Windows 中进行符号链接。从 Powershell(以管理员身份运行)可以New-Item -ItemType SymbolicLink -Path "c:\yocto-cache" -Target "z:"
正常工作,我可以从 WSL2 将 C:\cache 查看为 /mnt/c/cache,但我似乎没有权限实际查看它:
$ ll /mnt/c/cache
lrwxrwxrwx 1 tom tom 7 May 24 16:19 /mnt/c/cache -> /mnt/z/