以 root 身份运行 Go 程序时排除“sudo go run main.go”错误
尝试使用 gopacket 捕获网络数据包时,您运行命令“sudo go run main.go”时可能会遇到错误,指出“exec:go:在 $PATH 中找不到可执行文件”。出现此错误的原因是您的环境变量没有为 root 用户配置。
与使用“sudo go run ...”的方法相反,请考虑先使用“go build”在没有 root 权限的情况下构建二进制文件,或者“去安装吧。”构建二进制文件后,使用“sudo”执行它。
例如,如果您在名为 mycapt 的文件夹中使用 main.go,请按照以下步骤操作:
cd mycapt go build sudo ./mycapt
或者,您可以使用:
go install sudo $GOPATH/bin/mycapt
通过构建二进制文件然后使用 sudo 运行它,您可以确保二进制文件具有适当的权限执行必要的操作。
以上是为什么'sudo go run main.go”会失败并显示'exec:go:在$ PATH中找不到可执行文件”?的详细内容。更多信息请关注PHP中文网其他相关文章!