使用本地管理员帐户创建从 Windows 到 WSL 的符号链接

使用本地管理员帐户创建从 Windows 到 WSL 的符号链接

我正在尝试在 Windows 和 WSL/Linux 之间共享一个配置文件。

该文件位于 wsl/linux 中,我想从 windows 链接到它。

这是我使用本地管理员帐户尝试执行的命令:

New-Item -ItemType SymbolicLink -Path ".\.config\nvim" -Target "\\wsl$\Ubuntu\home\username\.config\nvim"

但这会引发这个错误:

New-Item : Cannot find path '\\wsl$\Ubuntu\home\username\.config\nvim' because it does not exist.
At line:1 char:1
+ New-Item -ItemType SymbolicLink -Path ".\.config\nvim" -Target "\\wsl ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (\\wsl$\Ubuntu\home\username\.config\nvim:String) [New-Item], ItemNotFound
   Exception
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.NewItemCommand

本地管理员帐户看不到 wsl 目录。

我的用户帐户看到了

cd "\\wsl$\Ubuntu\home\username\.config\nvim"
pwd

Path
----
Microsoft.PowerShell.Core\FileSystem::\\wsl$\Ubuntu\home\username\.config\nvim

如何在不使我的用户帐户成为管理员的情况下创建符号链接?

答案1

确保 PowerShell 在没有管理权限的情况下运行,并使用mklink以下格式的命令。

cmd /c mklink /D "C:\Users\YourUsername\.config\nvim" "\\wsl$\Ubuntu\home\username\.config\nvim"

支持资源

  • 链接

    海拔

    默认情况下,只有管理员可以创建符号链接。可以在以下位置授予安全设置“创建符号链接”: Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment\

    创建符号链接需要提升权限,Windows 10 build 14972但从无需提升控制台即可创建符号链接作为管理员 -但这要求您启用开发人员模式。

相关内容