.GOPATH/pkg/mod/github.com/sirupsen/logrus@v1.6.0/terminal_check_unix.go:6:8: rename .GOPATH/pkg/mod/golang.org/x/sys@v0.0.0-20190624142023-c5567b49c5d0.tmp-506425660 .GOPATH/pkg/mod/golang.org/x/sys@v0.0.0-20190624142023-c5567b49c5d0: permission denied
Makefile:16: recipe for target 'build' failed
windows10 支持Ubuntu子系统(wsl)之后用起来真是爽歪歪,升级到go1.13 之后,使用go mod download 设置proxy 包依赖完美解决了,但是最近wsl 中编译频繁遇到编译过程提示rename permission denied ,一般来讲如果是root 用户 ,已经拥有最高权限了 ,那么为何还是 permission denied;
网上目前存在的答案大概有如下2种:
1.chmod +wr -R $gopath/go/src/mod/
2. chmod 777 $gopath/go/src/mod/
3. 关闭McAfee 实时扫描 (https://blog.csdn.net/Jackeyjin/article/details/106467103)
but 依然不能解决问题,本来想在带网络的安全模式实验,发现并不行;
因为系统是公司装的,自然不能关闭McAfee;
相同的代码在linux 可正常编译,因此还是权限问题;
后来摸索一番后发现,wsl.exe bash.exe Ubuntu1804.exe的默认所有权都在 TrustedInstaller ,不是超级用户,自然会被McAfee扫描阻止;
因此只要把 Ubuntu1804.exe 的属性 安全 设置为 完全控制, 以管理员身份运行此程序 就可以了;
重新编译,果然 success;
补充:上述操作可能导致wsl.exe 无法使用,谨慎操作;
可以尝试 sudo su 后继续执行go mod