栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Ubuntu安装Go环境(sudo: go: command not found)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Ubuntu安装Go环境(sudo: go: command not found)

获取并解压二进制文件
 wget https://studygolang.com/dl/golang/go1.13.4.linux-amd64.tar.gz
 # 解压,权限不够的话要加sudo
 sudo tar xfz go1.17.5.linux-amd64.tar.gz -C /usr/local
配置环境变量
#编辑系统配置文件
vim ~/.bashrc

#最后一行加上如下两行
export GOPATH=/usr/local/go
export PATH=$GOPATH/bin:$PATH

#重新执行初始化文件使修改后的新配置立即生效
source ~/.bashrc

查看是否配置成功(如何处理warning):

go version

#返回了warning
warning: GOPATH set to GOROOT (/usr/local/go) has no effect
go version go1.17.5 linux/amd64

vim ~/.bashrc

#修改一下前面配置的参数
export GOROOT=/usr/local/go  
export GOPATH=$PATH:$GOROOT/bin 

source ~/.bashrc

#重试
go version

#warning消失
go version go1.13.4 linux/amd64
sudo执行提示找不到go

网上下载的go程序,如二进制文件一般要用 ./[xxx] 来执行。如果是在普通用户登录的shell,那么很有可能返回permission denied。此时你会想到加上sudo。然而你又收到了新的错误:

sudo: go: command not found

如果已经配置好了go的环境变量,那么理论上无论是在普通用户还是root用户下都可以正常执行go指令。但使用sudo时实际上参照了单独的配置文件/etc/sudoers,因此sudo go是找不到go的位置的,需要配置该文件:

sudo vim /etc/sudoers

#修改以下行,加入/usr/local/go/bin/,用冒号隔开
Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin
#修改后
Defaults    secure_path = /usr/local/go/bin/:/sbin:/bin:/usr/sbin:/usr/bin

再使用sudo就没有问题了。

Quote

https://askubuntu.com/questions/118263/some-programs-not-found-when-used-with-sudo

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/680385.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号