How to Install Go on Ubuntu 18.04

By 

Updated on

3 min read

Go is a modern open-source programming language created by Google. Many popular applications, including Kubernetes, Docker, and Grafana are written in Go.

This tutorial will guide you through the steps of downloading and installing Go on an Ubuntu 18.04 machine.

Prerequisites

Before continuing with this tutorial, make sure you are logged in as a user with sudo privileges .

Installing Go on Ubuntu

Follow the steps below to install Go on Ubuntu 18.04:

1. Downloading the Go tarball

At the time of writing this article, the latest stable version of Go is version 1.13. Before downloading the tarball, visit the official Go downloads page and check if there is a new version available.

To download the Go binary, you can use either wget or curl :

Terminal
wget https://dl.google.com/go/go1.13.linux-amd64.tar.gz

2. Verifying the Go tarball

To verify the tarball checksum you can use the sha256sum command:

Terminal
sha256sum go1.13.linux-amd64.tar.gz

The output will look something like this:

output
68a2297eb099d1a76097905a2ce334e3155004ec08cdea85f24527be3c48e856  go1.13.linux-amd64.tar.gz

Make sure the hash printed from the command above matches the one from the downloads page.

3. Extracting the Go tarball

Use tar to extract the tarball to the /usr/local directory:

Terminal
sudo tar -C /usr/local -xzf go1.13.linux-amd64.tar.gz

4. Adjusting the Path Variable

In order for the system to know where to find the Go executable binaries, we need to adjust the $PATH environment variable. We can do this by appending the following line to the /etc/profile file (for a system-wide installation) or the $HOME/.profile file (for a current user installation):

~/.profilesh
export PATH=$PATH:/usr/local/go/bin

Save the file, and load the new PATH environment variable into the current shell session:

Terminal
source ~/.profile

5. Verifying the Go Installation

Verify the installation by printing the Go version:

Terminal
go version

The output should look something like this:

output
go version go1.13 linux/amd64

Getting Started with Go

We’ll set up a workspace and build a simple “Hello world” program that will simply print the classic “hello world” message.

  1. By default the workspace directory is set to $HOME/go, to create it, type:

    Terminal
    mkdir ~/go
  2. Inside the workspace create a new directory src/hello:

    Terminal
    mkdir -p ~/go/src/hello

    In that directory create a file named hello.go with the following content:

    ~/go/src/hello/hello.gogo
    package main
    
    import "fmt"
    
    func main() {
        fmt.Printf("Hello, World\n")
    }

    You can learn more about Go workspace directory hierarchy here .

  3. To build the file, navigate to the ~/go/src/hello directory and run the go build command:

    Terminal
    cd ~/go/src/hello
    go build

    The command above will build an executable named hello.

  4. You can run the executable by simply executing the command below:

    Terminal
    ./hello

    The output should look something like this:

    output
    Hello, World

Conclusion

Now that you have downloaded and installed Go on your Ubuntu system, you can start developing your Go projects.

If you hit a problem or have feedback, leave a comment below.

Linuxize Weekly Newsletter

A quick weekly roundup of new tutorials, news, and tips.

About the authors

Dejan Panovski

Dejan Panovski

Dejan Panovski is the founder of Linuxize, an RHCSA-certified Linux system administrator and DevOps engineer based in Skopje, Macedonia. Author of 800+ Linux tutorials with 20+ years of experience turning complex Linux tasks into clear, reliable guides.

View author page