Installation de Go langage de programmation sous Linux n'est pas un gros problème. L'installation et la configuration du langage Go ne prend que quelques minutes. La bonne chose est qu'il est maintenant encore plus facile d'installer Golang sous Linux en utilisant Update-golang script.
Update-golang est un script shell permettant de récupérer et d'installer facilement les dernières versions de Golang avec une interaction minimale de l'utilisateur. N'importe qui peut désormais installer facilement une version Go stable sur sa machine Linux à l'aide de ce script. Tout est automatisé ! Exécutez simplement ce script et asseyez-vous. Ce script effectuera les actions suivantes :
- Tout d'abord, le script Update-golang recherchera le dernier binaire Golang disponible à partir de la page d'historique des versions de Golang.
- Ensuite, il trouvera la version et l'architecture du système d'exploitation de votre système Linux pour télécharger le binaire correspondant. Les fichiers téléchargés seront conservés sous
/usr/local
annuaire. Vous pouvez les supprimer après avoir installé Go. - Une fois le bon binaire Go téléchargé, il est installé dans
/usr/local/go
emplacement. - Ensuite, le chemin
/usr/local/go/bin
est ajouté à votre$PATH
. - Et ensuite, il configurera le chemin GOROOT.
- Enfin, il testera l'installation de Golang en exécutant un
hello world
programme.
Ce script n'est pas seulement destiné à une nouvelle installation, vous pouvez également l'utiliser pour mettre à jour la version Go actuellement installée vers la prochaine version disponible !
Installer Golang sous Linux à l'aide du script Update-golang
Téléchargez le script Update-golang en clonant son dépôt depuis GitHub :
$ git clone https://github.com/udhos/update-golang
La commande ci-dessus clonera le contenu du référentiel officiel update-golang dans un répertoire local nommé update-golang
. Cd dans ce répertoire :
$ cd update-golang
Il est toujours recommandé de vérifier l'intégrité d'un script téléchargé sur Internet. Faisons donc cela en vérifiant la valeur CHECKSUM du script update-golang :
$ wget -qO hash.txt https://raw.githubusercontent.com/udhos/update-golang/master/update-golang.sh.sha256
$ sha256sum -c hash.txt
Si vous obtenez une sortie OK, vous êtes prêt à partir.
update-golang.sh: OK
Après avoir vérifié le chekcsum, exécutez la commande suivante pour installer la dernière version de Golang sur votre machine Linux :
$ sudo ./update-golang.sh
Exemple de résultat :
update-golang.sh :version 0.24update-golang.sh :find_latest :dernière version trouvée :1.16.2update-golang.sh :utilisateur :uid=0(root) gid=0(root) groups=0(root )update-golang.sh :RELEASE_LIST=https://golang.org/dl/update-golang.sh :SOURCE=https://storage.googleapis.com/golangupdate-golang.sh : DESTINATION=/usr/localupdate- golang.sh :RELEASE=1.16.2update-golang.sh :OS=linuxupdate-golang.sh :ARCH_PROBE=uname -mupdate-golang.sh :ARCH=amd64update-golang.sh :PROFILED=/etc/profile.d/golang_path .shupdate-golang.sh :CACHE=/usr/localupdate-golang.sh :GOPATH=update-golang.sh :DEBUG=update-golang.sh :update-golang.sh :installera golang go1.16.2.linux-amd64 comme :/usr/local/goupdate-golang.sh :https://storage.googleapis.com/golang/go1.16.2.linux-amd64.tar.gz est distant--2021-03-30 06:02:35 -- https://storage.googleapis.com/golang/go1.16.2.linux-amd64.tar.gzRésolution de storage.googleapis.com (storage.googleapis.com)... 2404:6800:4009:81f::2010 , 2404:6800:4009:820::2010, 2404:6800:4009:81d::2010, ...Connexion to storage.googleapis.com (storage.googleapis.com)|2404:6800:4009:81f::2010|:443... connected.HTTP request sent, en attente de réponse... 200 OKLength :129010536 (123M) [application /octet-stream]Enregistrement vers :'/usr/local/go1.16.2.linux-amd64.tar.gz'/usr/local/go1.16.2.linux-amd64.t 100 %[============================================================>] 123.03M 501KB/s en 5m 2s 2021-03-30 06:07:40 (417 KB/s) - '/usr/local/go1.16.2.linux-amd64.tar.gz' enregistré [129010536/129010536]update-golang.sh :remove_old_link :lien symbolique introuvable pour l'ancien installupdate-golang.sh :décompresser :tar -x -f /usr/local/go1.16.2.linux-amd64.tar.gzupdate-golang. sh :profile_path_add :émission d'un nouveau /usr/local/go/bin vers /etc/profile.d/golang_path.shupdate-golang.sh :profile_path_add :émission de $HOME/go/bin vers /etc/profile.d/golang_path.shupdate -golang.sh :golang go1.16.2.linux-amd64 installé sur :/usr/local/goupdate-golang.sh :testing :/usr/local/go/bin/go versionupdate-golang.sh :unsudo :running_as_root:ostechnix :/usr/local/g o/bin/go versionupdate-golang.sh :aller version go1.16.2 linux/amd64update-golang.sh :/usr/local/go/bin/go version :SUCCESSupdate-golang.sh :unsudo :running_as_root:ostechnix :mktemp - t hello-tmpXXXXXXXXupdate-golang.sh :unsudo :running_as_root:ostechnix :tee /tmp/hello-tmpqGBVcjhy.goupdate-golang.sh :testing :/usr/local/go/bin/go run /tmp/hello-tmpqGBVcjhy.goupdate -golang.sh :unsudo :running_as_root:ostechnix :/usr/local/go/bin/go run /tmp/hello-tmpqGBVcjhy.goupdate-golang.sh :bonjour, worldupdate-golang.sh :/usr/local/go/ bin/go run /tmp/hello-tmpqGBVcjhy.go :SUCCESSupdate-golang.sh :running_as_root :yesupdate-golang.sh :forçage récursif de la propriété du cache de construction [/home/ostechnix/.cache/go-build] à 1000:1000![]()
Vérifiez la version de Golang et les informations sur l'environnement
Pour vérifier la version de Go installée, exécutez :
$ go version go version go1.16.2 linux/amd64
Comme vous pouvez le voir, le script Update-golang a installé la version Go 1.16.2 . Il s'agit de la dernière version stable de Go au moment de la rédaction de ce guide.
Pour imprimer les informations sur l'environnement Go, exécutez :
$ go env
Exemple de résultat :
GO111MODULE="" GOARCH="amd64" GOBIN="" GOCACHE="/home/ostechnix/.cache/go-build" GOENV="/home/ostechnix/.config/go/env" GOEXE="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOINSECURE="" GOMODCACHE="/home/ostechnix/go/pkg/mod" GONOPROXY="" GONOSUMDB="" GOOS="linux" GOPATH="/home/ostechnix/go" GOPRIVATE="" GOPROXY="https://proxy.golang.org,direct" GOROOT="/usr/local/go" GOSUMDB="sum.golang.org" GOTMPDIR="" GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64" GOVCS="" GOVERSION="go1.16.2" GCCGO="gccgo" AR="ar" CC="gcc" CXX="g++" CGO_ENABLED="1" GOMOD="/dev/null" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build883237217=/tmp/go-build -gno-record-gcc-switches"
Installez la version bêta ou la version candidate (RC) de Golang
Par défaut, le script Update-golang installera la dernière version stable. Si vous souhaitez installer des versions bêta ou des versions candidates, mentionnez explicitement la version comme ci-dessous :
Installez la version bêta de Golang :
$ sudo RELEASE=1.9beta1 ./update-golang.sh
Installer la version candidate (RC) :
$ sudo RELEASE=1.11rc1 ./update-golang.sh
Installation Golang par utilisateur
Par défaut, le script Update-golang installe Golang à l'échelle du système. Si vous souhaitez installer Golang pour l'utilisateur actuel, créez simplement un répertoire d'installation, par exemple
~/golang
:$ mkdir ~/golang
Et puis installez GO en utilisant la commande :
$ DESTINATION=~/golang PROFILED=~/.profile ./update-golang.sh
Veuillez noter que l'installation par utilisateur n'a pas besoin de
root
ousudo
autorisation.Empêcher la mise en cache des fichiers téléchargés
Comme mentionné précédemment, le script Update-golang conservera les archives téléchargées dans
/usr/local
annuaire. Si vous ne voulez pas mettre en cache les fichiers d'archive, utilisez simplement-declutter
choix :$ sudo ./update-golang.sh -declutter
Cette fois, les fichiers d'installation ne seront pas mis en cache.
Supprimer Golang
Pour annuler toutes les étapes effectuées par le script Update-golang, accédez au répertoire cloné et exécutez :
$ sudo ./update-golang.sh remove
Cette commande supprimera Go et toutes les entrées associées du $PATH.
update-golang.sh: version 0.24 update-golang.sh: find_latest: found last release: 1.16.2 update-golang.sh: remove: found symlink for old install: /usr/local/go1.16.2.linux-amd64 update-golang.sh: remove: removing symlink: /usr/local/go update-golang.sh: remove: removing dir: /usr/local/go1.16.2.linux-amd64 update-golang.sh: profile_path_remove: removing old settings from: /etc/profile.d/golang_path.sh