Golang的linux运行环境的安装与配置

很多新手在学go时,linux下的配置环境一头雾水,总结下,可供参考!

--------------------------------------Golang的运行环境的安装与配置--------------------------------------

将压缩包放在/home/tools/下

解压

tar -zxvf go1.23.6.linux-amd64.tar.gz

进入:cd /usr/local

进行软连接(直接运行命令,不要建立go文件夹)

ln -s /home/tools/go/ go

变为全局命令:

echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc # 持久化配置

source ~/.bashrc # 立即生效

查看go版本

root@localhost bin\]# go version go version go1.23.6 linux/amd64 --------------------------------------配置golang的环境参数-------------------------------------- 编辑 /etc/profile 文件,添加以下内容: export GOROOT=/usr/local/go export GOPATH=/data/go 设置自己的工作目录 export PATH=$PATH:$GOROOT/bin:$GOPATH/bin export GO111MODULE=on export GOPROXY=https://goproxy.cn,direct 国内修改为cn 生效配置: source /etc/profile \[root@localhost gate_svr\]# vim /etc/profile \[root@localhost gate_svr\]# source /etc/profile 清除go的缓存和包缓存: \[root@localhost gate_svr\]# go clean -cache \[root@localhost gate_svr\]# go clean -modcache 说明: GOROOT 为 Golang 安装路径 GOPATH 为工作空间目录,需包含 src、pkg(依赖库)、bin 子目录‌ GOPROXY 用于加速依赖包下载‌ ‌验证环境‌ go version # 查看版本 go env # 检查环境变量 ‌创建目录结构‌ mkdir -p $GOPATH/{src,pkg,bin} 需确保工作空间与 GOROOT 路径不同。 设置用户权限 sudo chown -R root:root /data/go sudo chmod 775 /data/go 开始会遇到:编译代码遇到网络链接各种库连接被拒绝的问题: go: downloading github.com/xuri/excelize/v2 v2.4.1 ../../common/component/log/log.go:5:2: github.com/natefinch/lumberjack@v2.0.0+incompatible: Get "https://goproxy.cn/github.com/natefinch/lumberjack/@v/v2.0.0+incompatible.zip": dial tcp: lookup goproxy.cn on \[::1\]:53: read udp \[::1\]:58615-\>\[::1\]:53: read: connection refused 解决办法: 看看网络是否通畅, nslookup [www.baidu.com](http://www.baidu.com "www.baidu.com") ![](https://i-blog.csdnimg.cn/direct/4e77bfe366f94bb9a1f4028c35c3864d.png) 有IP的情况下,防火墙或者dns解析的问题: echo "nameserver 8.8.8.8" \| sudo tee /etc/resolv.conf echo "nameserver 8.8.4.4" \| sudo tee -a /etc/resolv.conf systemctl restatus NetworkManager 重启网卡 ![](https://i-blog.csdnimg.cn/direct/8f2e1a3f82c149a89476435194903c6c.png) *** ** * ** *** --------------------------------------测试工作目录-------------------------------------- ‌创建测试程序‌ mkdir -p /data/go/src/hello vim /data/go/src/hello/main.go 内容: package main import "fmt" func main() { fmt.Println("Workspace path: /data/go") } ‌编译运行‌ cd /data/go/src/hello go build # 生成二进制文件到当前目录 ./main # 运行程序 简单的生成go.mod文件: go mod init hello go mod tidy

相关推荐
我爱学习好爱好爱2 小时前
Ansible 常用模块详解:yum、service/systemd、copy实战
linux·服务器·ansible
papaofdoudou2 小时前
LINUX VFIO被IOMMUFD取代
linux·运维·服务器
平生不喜凡桃李3 小时前
浅谈 Linux 中 namespace 相关系统调用
java·linux·服务器
YMWM_4 小时前
【问题】thor上的cubLas
linux·python·thor
虾..4 小时前
多路复用 --- select系统调用
服务器·数据库·sql
杨云龙UP4 小时前
mysqldump逻辑备份文件恢复总结:全库恢复、单库恢复,一篇讲明白
linux·运维·服务器·数据库·mysql·adb
舰长1155 小时前
linux系统服务器加固1、中风险 未设置登录失败处理功能和登录连接超时处理功能。2、中风险 未限制默认账户的访问权限。3、中风险 未实现管理用户的权限分离。
linux·运维·服务器
mounter6255 小时前
Linux 7.0 重磅更新:详解 nullfs 如何重塑根文件系统挂载与内核线程隔离
linux·运维·服务器·kernel
色空大师5 小时前
【网站搭建实操(一)环境部署】
java·linux·数据库·mysql·网站搭建
-Da-6 小时前
Unix哲学:一切皆文件与网络通信的统一抽象
服务器·unix