![有没有办法正确地获取从 Windows 子系统 Linux 文件到 Windows 文件的管理访问权限?](https://linux22.com/image/1588646/%E6%9C%89%E6%B2%A1%E6%9C%89%E5%8A%9E%E6%B3%95%E6%AD%A3%E7%A1%AE%E5%9C%B0%E8%8E%B7%E5%8F%96%E4%BB%8E%20Windows%20%E5%AD%90%E7%B3%BB%E7%BB%9F%20Linux%20%E6%96%87%E4%BB%B6%E5%88%B0%20Windows%20%E6%96%87%E4%BB%B6%E7%9A%84%E7%AE%A1%E7%90%86%E8%AE%BF%E9%97%AE%E6%9D%83%E9%99%90%EF%BC%9F.png)
有没有办法使用 WSL 以管理权限访问 Windows 文件?
sudo vi /mnt/c/Users/a/admin/file.txt
答案1
我编写了一个脚本,使这变得简单:https://github.com/Chronial/wsl-sudo。使用它,您只需运行wudo vi /mnt/c/Users/a/admin/file.txt
。它的行为就像普通的 sudo 一样,但授予您 Windows 管理员权限而不是 Unix 管理员权限。
如果您所需要的只是一个具有管理员权限的 shell,那么您只需运行powershell.exe Start-Process -Verb runas -FilePath wsl
。
答案2
有没有办法使用 WSL 以管理权限访问 Windows 文件?
是的;要做到这一点,所需要做的就是提升启动 WSL 实例的命令提示符。
具有 Windows 管理员权限的 Bash 会话可以访问 cd /mnt/c/Users/Administrator,而没有管理员权限的 Bash 会话将会看到“权限被拒绝”错误。
微软对 WSL 实例内的权限描述如下: