Go fork / exec权限被拒绝错误
我最近使用CentOS 6.3将Go安装到了我们的服务器上。安装似乎一切正常。但是,我制作了一个测试“ hello world”脚本,运行时得到以下输出。
fork/exec /tmp/go-build967564990/command-line-arguments/_obj/a.out: permissiondenied
现在运行go env或其他go命令似乎可以正常工作。起初,我认为这是一个权限问题,但是以root用户身份运行时,我会得到相同的结果。一个
回答:
只是猜测:出于安全原因,您的nix可能会禁用在/ tmp中执行程序。它可能在CentOS中是可配置的,但我不知道。
替代解决方案:看来您正在尝试go run
执行Go程序(与C一样是脚本)。尝试(假设$GOPATH=~
,很容易)替代常规构建,即
me:~/src/foo$ go run main.go
尝试
me:~/src/foo$ go build # main.go should not be necessary hereme:~/src/foo$ ./foo
这种方法仍将使用/ tmp-whatever来创建二进制文件IIRC,但不会尝试从那里执行它。
PS: 请勿 以超级用户身份运行这些命令。无需使用正确的设置。
以上是 Go fork / exec权限被拒绝错误 的全部内容, 来源链接: utcz.com/qa/433464.html