如何在本地管理员账户下创建从Windows指向WSL的Symbolic Link(无需将普通用户设为管理员)
如何在本地管理员账户下创建从Windows指向WSL的Symbolic Link(无需将普通用户设为管理员)
嗨,我来帮你解决这个问题!你遇到的核心问题是:\\wsl$\这个共享路径是和当前登录的Windows用户绑定的,管理员账户默认无法访问普通用户的WSL实例目录,所以才会提示路径不存在。下面给你几个可行的解决方案,都不需要把普通用户升级为管理员:
方案一:用普通用户创建目录连接(Junction)(推荐)
Junction是Windows的一种目录硬链接,普通用户默认就有权限创建,而且能实现你要的“共享配置文件”的需求:
- 用你的普通用户账户打开非管理员权限的PowerShell(别选“以管理员身份运行”)
- 先确认你能正常访问WSL里的目标目录(你已经验证过这一步没问题):
cd "\\wsl$\Ubuntu\home\username\.config\nvim" pwd - 执行下面的命令创建Junction:
执行成功后,Windows里的New-Item -ItemType Junction -Path ".\.config\nvim" -Target "\\wsl$\Ubuntu\home\username\.config\nvim".config\nvim就会直接指向WSL中的对应目录,和符号链接的使用体验几乎一致。
方案二:给普通用户添加创建符号链接的权限
如果你一定要用Symbolic Link而不是Junction,可以给普通用户单独添加“创建符号链接”的权限,不用升级为管理员:
- 按
Win+R输入gpedit.msc打开本地组策略编辑器 - 依次导航到:
计算机配置 > Windows设置 > 安全设置 > 本地策略 > 用户权限分配 - 找到并双击创建符号链接选项,点击
添加用户或组,把你的普通用户账户加进去 - 重启电脑后,用普通用户打开非管理员PowerShell,执行你原来的命令就能成功了:
New-Item -ItemType SymbolicLink -Path ".\.config\nvim" -Target "\\wsl$\Ubuntu\home\username\.config\nvim"
方案三:让管理员账户能访问WSL目录(不推荐,安全性降低)
如果必须用管理员账户来创建,你可以先修改WSL目录的权限,让管理员能访问:
- 用普通用户启动WSL,执行命令放开目录权限:
sudo chmod -R 777 /home/username/.config/nvim - 切换到管理员账户的PowerShell,先确认能访问目标路径:
cd "\\wsl$\Ubuntu\home\username\.config\nvim" - 再执行你原来的创建符号链接命令即可。
注意:这个方法会让任何用户都能访问该目录,安全性较低,除非必要不建议使用。
备注:内容来源于stack exchange,提问作者mrt181
相关产品推荐
相关产品推荐

