Гид по технологиям

Установка Go (Golang) на Linux

4 min read Разработка Обновлено 16 Dec 2025
Установка Go на Linux — подробное руководство
Установка Go на Linux — подробное руководство

Логотип Go на фоне исходного кода

Кому полезно

  • Разработчикам, которые хотят начать писать на Go на Linux.
  • Системным администраторам, которым нужно развернуть среду сборки.

Что потребуется

Коротко: доступ в терминал с правами sudo и подключение к интернету для загрузки пакетов.

Предварительные шаги — обновление системы

Перед установкой убедитесь, что система обновлена.

На дистрибутивах на базе Ubuntu и Debian:

sudo apt update && sudo apt upgrade -y

На Arch Linux и производных:

sudo pacman -Syu

На RHEL, CentOS Stream и Fedora:

sudo dnf upgrade

После завершения обновления вы готовы выбрать способ установки.

Способ 1 — установка через пакетный менеджер (быстро и просто)

Этот способ подходит, если вам достаточно версии Go, доступной в репозиториях вашей ОС.

Ubuntu / Debian:

sudo apt install golang -y

Arch Linux:

sudo pacman -S golang --noconfirm

RHEL / Fedora:

sudo dnf install golang -y

Плюсы: быстро, интегрируется с системой обновлений. Минусы: версия в репозиториях может отставать от официального релиза.

Способ 2 — ручная установка из официального архива (рекомендуется для точного контроля версий)

Скачивание и ручная установка Go

  1. Скачайте архив с официального сайта. В примере указан конкретный релиз; замените имя файла на актуальную версию при необходимости:
wget https://go.dev/dl/go1.20.1.linux-amd64.tar.gz
  1. Распакуйте архив в /usr/local (обычная рекомендация от разработчиков Go):
sudo tar -C /usr/local -xvf go1.20.1.linux-amd64.tar.gz
  1. Временная установка переменной PATH (работает в текущем сеансе):
export PATH=$PATH:/usr/local/go/bin
  1. Чтобы изменение сохранялось между сеансами, добавьте в профиль оболочки (пример для bash):
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile
source ~/.profile

Альтернативный метод для системного уровня (требуется sudo): создать файл /etc/profile.d/go.sh с содержимым:

sudo tee /etc/profile.d/go.sh > /dev/null <<'EOF'
export PATH=$PATH:/usr/local/go/bin
EOF
sudo chmod 644 /etc/profile.d/go.sh
  1. Проверьте установку:
go version
which go

Ожидается вывод вида: go version go1.20.1 linux/amd64

Пример простого приложения “Hello, World”

Создайте файл hello.go:

package main

import "fmt"

func main() {
    fmt.Println("Hello, Go on Linux!")
}

Запустите:

go run hello.go

Или соберите бинарь:

go build -o hello
./hello

Удаление Go

Удаление Golang через пакетный менеджер APT

Если вы устанавливали через пакетный менеджер, удалите тем же инструментом:

Ubuntu / Debian:

sudo apt autoremove golang -y

Arch Linux:

sudo pacman -R golang --noconfirm

RHEL / Fedora:

sudo dnf remove golang -y

Если Go был установлен вручную, просто удалите каталог установки и очистите переменные PATH:

Удаление Go вручную

sudo rm -rf /usr/local/go

Затем удалите строки, добавленные в ~/.profile или /etc/profile.d/go.sh, и перезагрузите сессию терминала.

Критерии приёмки

  • Команда go version выводит ожидаемую версию.
  • which go возвращает путь /usr/local/go/bin/go (при ручной установке) или путь в системных каталогах при установке пакетом.
  • Пример go run hello.go печатает ожидаемую строку.

Рекомендации по обновлению и ролям

Мини-методика обновления Go (быстро):

  1. Проверить текущую версию: go version.
  2. Сохранить важные проекты (git push / бэкап).
  3. Если установлен пакетный менеджер — проверить, доступна ли новая версия там. Если нет и нужна последняя стабильная версия — скачать официальный архив и заменить /usr/local/go.
  4. Проверить модули проекта: go list -m all и запустить тесты.

Контрольный список для разработчика:

  • [ ] Установлена версия Go (проверить go version).
  • [ ] PATH настроен и доступен go в терминале.
  • Модули проекта и go.mod корректны.
  • [ ] Минимальные тесты проходят (go test ./...).

Контрольный список для инженера по развёртыванию:

  • Установка автоматизирована в скрипте/Ansible/PKG.
  • Файл /etc/profile.d/go.sh настроен для всех пользователей, если нужно.
  • Документированы шаги отката.

Когда ручная установка лучше, а когда пакеты удобнее

  • Выбирайте пакетный менеджер, если вам важна простота и автоматические обновления вместе с системой. Это удобно для серверов, где не нужна последняя версия Go.
  • Ручная установка подходит, если вам нужна точная версия Go (например, для CI/CD), или если репозиторий дистрибутива содержит устаревшую версию.

Частые ошибки и как их исправить

  • Проблема: go: command not found — скорее всего PATH не добавлен в текущий сеанс. Решение: source ~/.profile или добавить экспорт в ~/.bashrc и перезапустить терминал.
  • Проблема: версия, отличная от ожидаемой — проверьте, не установлен ли параллельно golang из репозиториев (удалите пакет или скорректируйте PATH так, чтобы /usr/local/go/bin был раньше).

Небольшой глоссарий (1 строка на термин)

  • Go / Golang — компилируемый язык программирования от Google.
  • GOPATH — устаревающая переменная для рабочего пространства, сейчас обычно используют модули Go.
  • go.mod — файл управления зависимостями модуля Go.

Краткое резюме

Установка Go на Linux — тривиальная задача: для большинства сценариев достаточно установить пакет из репозитория дистрибутива. Если нужна точная или последняя версия, скачайте официальный tar-архив и распакуйте в /usr/local/go, затем добавьте /usr/local/go/bin в PATH. Всегда проверяйте установку командой go version и запускайте простое приложение для подтверждения работоспособности.

Важно: выбор метода зависит от требований к версии и политике обновлений в вашей организации.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро