Скачайте Go с go.dev/dl, запустите установщик для своей системы, откройте новый терминал и выполните go version. На Windows и macOS это вся установка. На Linux нужно распаковать архив и добавить одну папку в PATH. Ниже разобрана каждая система, затем проверки и ошибки, с которыми реально сталкиваются.
Чтобы попробовать Go, устанавливать его не обязательно. Эта программа запускается в браузере на той же версии Go, что использует сайт, и сообщает, на чём она работает:
Когда Go будет установлен локально, та же программа выведет данные вашей машины.
Какой файл скачать
На странице загрузки для каждой операционной системы и архитектуры процессора свой файл:
| Система | Файл | Примечания |
|---|---|---|
| Windows, большинство ПК | go1.24.5.windows-amd64.msi | amd64 означает 64-битный Intel или AMD |
| Windows на ARM | go1.24.5.windows-arm64.msi | Surface Pro X, ноутбуки на Snapdragon |
| macOS, Apple Silicon (M1 и новее) | go1.24.5.darwin-arm64.pkg | darwin это macOS |
| macOS, Intel | go1.24.5.darwin-amd64.pkg | |
| Linux, большинство серверов и ПК | go1.24.5.linux-amd64.tar.gz | |
| Linux на ARM | go1.24.5.linux-arm64.tar.gz | Raspberry Pi 4 и 5 с 64-битной ОС, AWS Graviton |
В примерах указана версия 1.24.5. Берите самый свежий стабильный релиз: шаги от версии к версии не меняются.
Установка Go на Windows
- Скачайте файл
.msiи запустите его. - Оставьте настройки по умолчанию. Go установится в
C:\Program Files\Go, а установщик добавитC:\Program Files\Go\binвPATH. - Закройте все открытые окна Command Prompt и PowerShell и откройте новое. В терминалах, которые были открыты во время установки, остался старый
PATH. - Проверьте установку:
go version
go version go1.24.5 windows/amd64
Если вам удобнее пакетный менеджер, подойдёт и winget:
winget install GoLang.Go
Установка Go на macOS
Через официальный пакет
Скачайте .pkg для своего процессора и откройте его. Он установит Go в /usr/local/go и добавит /usr/local/go/bin в PATH через файл /etc/paths.d/go. Откройте новое окно Terminal и выполните:
go version
go version go1.24.5 darwin/arm64
Через Homebrew
brew install go
go version
Homebrew кладёт Go в свой префикс (/opt/homebrew на Apple Silicon) и создаёт ссылку на go в папке, которая уже есть в PATH. Обновить потом можно командой brew upgrade go.
Выберите один способ. Если стоят и .pkg, и Homebrew, в PATH окажутся два бинарника go, и победит тот, что идёт первым. which go покажет, какой из них использует оболочка.
Установка Go на Linux и Ubuntu
Официальный способ работает в любом дистрибутиве. Сначала удалите предыдущую установку: если распаковать архив поверх старого дерева, файлы двух версий перемешаются и тулчейн сломается:
cd ~/Downloads
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.5.linux-amd64.tar.gz
Затем добавьте Go в PATH. Допишите эту строку в ~/.profile (bash) или ~/.zshrc (zsh):
export PATH=$PATH:/usr/local/go/bin
Загрузите её в текущую оболочку и проверьте:
source ~/.profile
go version
go version go1.24.5 linux/amd64
Пакеты Ubuntu: apt и snap
В Ubuntu есть два коротких пути, и у каждого свои компромиссы:
# Distribution package: easy, but usually several releases old
sudo apt install golang-go
# Snap: tracks current Go releases
sudo snap install go --classic
Версия из apt важнее, чем кажется. Модули указывают минимальную версию Go в go.mod. Начиная с Go 1.21 модуль с go 1.23 не соберётся более старым тулчейном, если Go не сможет скачать для вас новый, а тулчейны старше 1.21 всё равно пытаются собрать код и падают на первой же новой возможности (см. «Как обновлять Go» ниже). Если ставите Go из apt, выполните go version и сравните с go.dev/dl.
Проверка установки
Рабочую установку подтверждают три команды:
go version
go env GOROOT GOPATH
which go
go version go1.24.5 linux/amd64
/usr/local/go
/home/ana/go
/usr/local/go/bin/go
GOROOTэто папка, куда установлен сам Go. Никогда не кладите туда свой код; задавать эту переменную вам не нужно.GOPATHпо умолчанию равен$HOME/go(%USERPROFILE%\goна Windows). Go хранит загруженные модули в$GOPATH/pkg/mod, а программы, собранныеgo install, кладёт в$GOPATH/bin.which go(where goна Windows) показывает, какой именно бинарник запускает оболочка. Пользуйтесь этой командой каждый раз, когдаgo versionсообщает неожиданную версию.
Запуск первой программы
Код может лежать в любой папке. Создайте папку, инициализируйте модуль и напишите файл:
mkdir hello
cd hello
go mod init example.com/hello
go: creating new go.mod: module example.com/hello
Сохраните это как main.go в той же папке:
Затем запустите:
go run .
Go is installed and working.
go run . компилирует пакет в текущей папке и запускает его. Каждая строка программы разобрана на странице hello world, а шаг go mod init описан в разделе про модули Go.
Добавьте GOPATH/bin в PATH
Утилиты, установленные через go install, попадают в $HOME/go/bin, а этой папки по умолчанию нет в PATH. Если вы установили утилиту, а оболочка её не находит, добавьте и эту папку:
go install golang.org/x/tools/cmd/goimports@latest
export PATH=$PATH:$(go env GOPATH)/bin
goimports -h
Запишите строку с export в ~/.profile или ~/.zshrc, чтобы она работала и в новых терминалах. На Windows установщик уже добавляет %USERPROFILE%\go\bin в пользовательский PATH.
Как обновлять Go
Чтобы обновиться, установите новый релиз тем же способом, каким ставили старый. На Linux это значит повторить шаги rm -rf /usr/local/go и tar; удаление не пропускайте.
Начиная с Go 1.21 команда go умеет сама скачивать более новый тулчейн. Если в go.mod модуля написано go 1.24, а у вас установлен Go 1.22, go build скачает Go 1.24 в кеш модулей и соберёт им, если GOTOOLCHAIN оставлен в значении по умолчанию auto. Установленный Go при этом не меняется; новым релизом собирается только этот модуль.
Чтобы держать старую версию для тестов, установите её рядом:
go install golang.org/dl/go1.23.4@latest
go1.23.4 download
go1.23.4 version
Частые ошибки установки
go: command not found или zsh: command not found: go. Оболочка не находит бинарник. На Linux проверьте, что /usr/local/go/bin есть в строке export PATH того файла, который ваша оболочка реально читает (~/.zshrc для zsh, ~/.profile или ~/.bashrc для bash), и откройте новый терминал. echo $PATH покажет, что видит оболочка.
'go' is not recognized as an internal or external command (Windows). Закройте и снова откройте терминал. Если не помогло, откройте «Изменение системных переменных среды», нажмите «Переменные среды» и убедитесь, что C:\Program Files\Go\bin есть в Path. Встроенный терминал VS Code наследует окружение, с которым был запущен VS Code, поэтому перезапустите и его.
go version после обновления показывает старую версию. В PATH две установки. Выполните which -a go (или where go на Windows) и удалите лишнюю; часто это пакет apt в /usr/bin/go, который перекрывает /usr/local/go/bin/go.
go: go.mod file not found in current directory or any parent directory. Go установлен правильно; вы запустили go build или go run . вне модуля. Сначала выполните go mod init example.com/yourname в папке проекта.
Странные ошибки компиляции в стандартной библиотеке после обновления на Linux. Новый архив распаковали поверх старого дерева. Удалите /usr/local/go целиком и распакуйте заново.
Permission denied при распаковке. Владелец /usr/local это root, поэтому команды rm и tar нужно запускать через sudo. Для вашего собственного кода sudo не нужен никогда.
Настройка редактора
Подойдёт любой редактор, но поставьте поддержку Go, чтобы получить автодополнение, подсветку ошибок и форматирование при сохранении. В VS Code установите официальное расширение Go (его выпускает команда Go в Google); при первом открытии файла .go оно предложит установить gopls, языковой сервер Go. Основной коммерческий вариант это GoLand от JetBrains. Vim и Neovim работают с gopls через свои LSP-клиенты.
Часто задаваемые вопросы
Как установить Golang?
Скачайте установщик для своей системы с go.dev/dl. На Windows запустите .msi, на macOS запустите .pkg (или brew install go), а на Linux распакуйте архив в /usr/local и добавьте /usr/local/go/bin в PATH. Откройте новый терминал и выполните go version, чтобы проверить.
Как исправить ошибку «go: command not found»?
Оболочка не находит бинарник go в PATH. На Linux добавьте export PATH=$PATH:/usr/local/go/bin в ~/.profile (или в ~/.zshrc для zsh) и откройте новый терминал. После установщиков на Windows и macOS обычно достаточно закрыть терминал и открыть заново, потому что терминал хранит тот PATH, с которым он был запущен.
Как установить Go на Ubuntu?
Используйте официальный архив: sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.24.5.linux-amd64.tar.gz, затем добавьте /usr/local/go/bin в PATH. sudo apt install golang-go тоже работает, но пакет Ubuntu часто отстаёт на несколько релизов. sudo snap install go --classic следует за актуальными релизами.
Нужно ли настраивать GOPATH?
Нет. Начиная с Go 1.16 режим модулей включён по умолчанию, поэтому код может лежать в любой папке. GOPATH по умолчанию равен $HOME/go и используется только для кеша загруженных модулей и для бинарников, которые собирает go install: они попадают в $HOME/go/bin.
Как узнать, какая версия Go установлена?
Выполните go version. Команда выведет что-то вроде go version go1.24.5 linux/amd64: номер релиза, затем операционную систему и архитектуру процессора. go env показывает всю конфигурацию, включая GOROOT (куда установлен Go) и GOPATH.