在CentOS上配置Go语言环境是一个相对简单的过程,以下是详细的步骤和一些有用的技巧:
首先,从Go的官方网站golang.org/dl/下载适用于Linux的Go版本安装包。例如,下载Go 1.23版本:
wget https://go.dev/dl/go1.23.linux-amd64.tar.gz
使用tar
命令将下载的压缩包解压到/usr/local
目录:
sudo tar -C /usr/local -xzf go1.23.linux-amd64.tar.gz
为了让系统能够找到Go编译器和工具链,需要配置环境变量。编辑/etc/profile
文件或你的用户主目录下的.bashrc
文件,添加以下内容:
适用于所有用户(编辑/etc/profile
):
sudo nano /etc/profile
在文件末尾添加:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
仅适用于当前用户(编辑.bashrc
):
nano ~/.bashrc
在文件末尾添加:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
保存并退出编辑器,然后运行以下命令使配置生效:
source /etc/profile
或者
source ~/.bashrc
通过以下命令验证Go是否安装成功:
go version
如果显示了Go的版本信息,说明安装成功。
虽然Go 1.11及以上版本引入了Go Modules,但如果你仍然需要设置GOPATH,可以按照以下步骤进行:
mkdir -p $HOME/go/src $HOME/go/bin $HOME/go/pkg
确保GOPATH
环境变量已经设置为你创建的工作空间路径。
Go 1.11及以上版本引入了Go Modules,这是Go语言的官方依赖管理工具。你可以通过以下命令初始化一个新的Go项目:
mkdir myproject
cd myproject
go mod init myproject
然后在go.mod
文件中添加所需的依赖。
为了进一步验证安装,你可以创建一个简单的Go程序来运行。例如,创建一个hello.go
文件,并输入以下简单的Go程序代码:
package main
import "fmt"
func main() {
fmt.Println("Hello, Go!")
}
使用以下命令运行该程序:
go run hello.go
如果输出了Hello, Go!
,则说明Go语言环境已经配置完成。
使用文本编辑器创建一个新的systemd服务文件,例如/etc/systemd/system/my-go-app.service
:
sudo nano /etc/systemd/system/my-go-app.service
在编辑器中添加以下内容,根据你的实际情况修改ExecStart
和WorkingDirectory
的路径为你的Go项目路径和可执行文件名:
[Unit]
Description=My Go Application
After=network.target
[Service]
Type=simple
ExecStart=/path/to/your/go/executable
WorkingDirectory=/path/to/your/go/project
Restart=always
User=root
# 或者指定一个非root用户,以更安全的方式运行
[Install]
WantedBy=multi-user.target
重新加载systemd配置以应用新的服务文件:
sudo systemctl daemon-reload
启动并设置开机自启动:
sudo systemctl start my-go-app
sudo systemctl enable my-go-app
检查服务状态,确保服务已经正确启动并且没有错误:
sudo systemctl status my-go-app
如果有日志输出,可以通过查看日志来诊断问题:
sudo journalctl -u my-go-app.service
以上步骤应该能够帮助你成功在CentOS上配置Go语言环境。如果有任何问题,欢迎随时提问。