问题描述
在 VSCode 里为 WSL \home\用户名\
下的文件夹创建文件,弹窗提示:
未能保存“XXX.hpp”: Command failed: "C:\Users\XXXX\AppData\Local\Programs\Microsoft VS Code\bin\code.cmd" --file-write "c:\Users\XXXX\AppData\Roaming\Code\code-elevated-hah3VZ2F" "\\wsl$\Ubuntu-22.04\home\XXXXX\XXXX\XXXX\include\XXX.hpp" Error using --file-write: EPERM: operation not permitted, open '\\wsl$\Ubuntu-22.04\home\XXXXX\XXXX\XXXXX\include\XXX.hpp'
解决方法
XXXX@DESKTOP-XXXX:~/XXX/XXXX/XXXXX$ ls -l
total 0
-rw-r--r-- 1 root root 0 Oct 30 18:37 XXX.hpp
-rw-r--r-- 1 root root 147 Oct 29 12:29 XXXX.hpp
经排查文件和文件夹的用户名和组名都是 root,VSCode 无法访问。这里 XXX.hpp
虽然是在 VSCode 里创建的文件,但它不能访问,非常奇怪。
执行命令
$ sudo chown -R XXXX(当前用户名):XXXX 文件夹名/
XXXX@DESKTOP-XXXX:~$ sudo chown -R XXXX:XXXX rpc-module/
然后就可以在 VSCode 随心所欲地编辑 WSL 内的代码了。