前言
一般来说我们直接在window下安装IDE工具和语言安装包即可,Windows下操作也比较友好,一般来说不需要在linux下安装GO或者写GO。我的英文实在太差,受不了IDEA的英文界面,网络原因没有办法进行汉化,突发奇想,是不是能够直接在linux上安装GO ,从而达到我的要求,于是开始查询资料寻找解决办法。由于我使用的是普通用户,没有权限在/usr/local下操作,也没有权限修改环境变量文件,于是我开始了研究如何在受限权限下安装GO。
一般下的linux安装GO
linux下使用GO,不要IDE工具,直接安装,直接在终端使用即可
linux下正常安装我就不详细说明了,大概写下步骤,网上教程很多
-
先下载安装包到电脑上,使用xftp工具上传至linux服务器。或者使用wget工具直接下载到linux上。略
-
在linux上解压安装包,解压包放到/usr/local下
-
修改环境变量文件/etc/profile,在最后面加上即可
export GOPATH=/home/go #GO的工作目录,写的代码放置位置,可以自己设定 export GOROOT=/usr/local/go #GO的安装路径 export PATH=$PATH:$GOROOT/bin #GO安装路径下的bin目录路径
-
source /etc/profile,使环境变量生效
-
执行go version命令,可以查看到版本即成功
[root@localhost ~]# go version go version go1.11.5 linux/amd64
二般的linux下安装GO
首先了解是如何受限的
- 使用的是普通用户,没有权限在/usr/local下操作
- 没有权限修改/etc/profile文件,无法修改全局的环境变量文件,就无法使用go安装包,执行go命令
解决思路
-
即go的安装包是不是一定得在/usr/local安装,据我所知,大部分的除了yum一类的软件安装,安装目录是可以更改的,只是有些可能会出现故障和错误,也不是一定非得/usr/local,这个目录只是一般大部分人会安装在这里
-
即没有权限修改/etc/profile,这个文件是全局变量,此文件的修改会影响到所有用户,但是linux系统是多用户系统,由此可知一定得修改全局变量吗,不是的,在每个普通用户的家目录都有一个隐藏文件“.bash_profile”,这个就是本用户的环境变量,不影响以其他用户
[guest@localhost ~]$ ls -a . .. .bash_logout .bash_profile .bashrc .cache .config .mozilla
以上即解决了前面提出的两个问题
执行操作
-
上传或者下载安装包
[guest@localhost ~]$ ls go1.11.5.linux-amd64.tar.gz
-
解压安装包
[guest@localhost ~]$ tar -zxf go1.11.5.linux-amd64.tar.gz [guest@localhost ~]$ ls go go1.11.5.linux-amd64.tar.gz gocache tmp 注:我直接上传到了家目录,也安装在家目录,所以没有移动解压包,如果想放在其他有去权限的目录,直接移动即可,注意后面环境变量改为你放置的目录即可
-
修改环境变量文件
[guest@localhost ~]$ ls -a . .. .bash_history .bash_logout .bash_profile .bashrc .cache .config go go1.11.5.linux-amd64.tar.gz gocache .mozilla tmp [guest@localhost ~]$ vim ./.bash_profile export GOPATH=/home/guest/go_work #修改为实际目录 export GOROOT=/home/guest/go #修改为实际目录 export PATH=$PATH:$GOROOT/bin #修改为实际目录 [guest@localhost ~]$ source .bash_profile
-
创建环境变量的工作目录
[guest@localhost ~]$ mkdir go_work
-
执行go version命令,可以查看到版本即成功
[guest@localhost ~]$ go version go version go1.11.5 linux/amd64
成功!
以上