Установка Rust на Windows, Linux и macOS - Академия Selectel

Установка Rust на Windows, Linux и macOS

Виктория Лаврова
Виктория Лаврова Тестировщик SELECTOS
31 марта 2026

Рассказываем, как начать использовать Rust и сделать первые шаги в написании кода.

Изображение записи

Введение

Rust — современный язык программирования, который выбирают не только системные программисты, но и команды разработчиков. Он сочетает в себе безопасность, быстроту и высокую производительность. Компилятор Rust еще при сборке выявляет многие ошибки, связанные с памятью, типами и потоками. Это уменьшает вероятность проблем во время выполнения программы. 

Вместе с современными инструментами и доступными материалами язык становится удобным как для обучения, так и для разработки.

В этой статье мы разберемся, с чего начать использование языка Rust. Чтобы сделать первые шаги в написании кода, нам нужно корректно установить компилятор и инструменты разработки.

В большинстве популярных операционных систем есть возможность установить Rust через менеджер пакетов. Например, для Debian, Ubuntu, SELECTOS это будет команда:


      sudo apt install rustс cargo
# или, если в репозитории есть rustup,
sudo apt install -y rustup && rustup default stable

В командах выше:

  • rustc — компилятор Rust и документация rustdoc;
  • сargo — менеджер зависимостей и инструмент сборки;
  • rustup — менеджер инструментов и установщик Rust, который предоставляет механизм управления версиями языка, компонентами и целевыми платформами. Базовые команды позволяют обновлять toolchain (набор инструментов), переключать версии компилятора и устанавливать дополнительные инструменты разработки.
    Версии Rust в пакетном менеджере могут отставать от актуальных. Рекомендую использовать способ установки rustup, указанный на официальном сайте. Это даст вам возможность актуализировать rustup, устанавливать любую поддерживаемую версию Rust и удобно осуществлять необходимые настройки инструментария. 

Ниже разберем, как сделать это в часто используемых ОС.

Установка Rust

Подготовка для Linux и macOS

Перед установкой Rust необходимо установить компоновщик (linker) и компилятор C. Если оба уже имеются в системе, шаг подготовки можно пропустить.

Для Linux на базе Debian, Ubuntu или SELECTOS введите команду:


      sudo apt install gcс

Если в вашем дистрибутиве другой пакетный менеджер (не apt), то необходимо использовать именно его в команде выше. Вместо gcc можно также установить альтернативный компилятор clang, оба пакета при установке автоматически подтягивают нужные зависимости, которые включают в себя компоновщик.

Для macOS введите команду:


      xcode-select --install

Подготовка для Windows

Для установки Rust на Windows необходимо, чтобы в системе были составляющие продукта Visual Studio Build Tools для C++: Microsoft Visual C++ Compiler и набор инструментов для разработки под Windows нужной версии (например, Windows 11 SDK). Если вы уверены в наличии данных компонентов, данный шаг можно пропустить.

Чтобы установить эти инструменты, зайдите на сайт и нажмите кнопку Загрузить Build Tools. Скачается установочный файл.

В открывшемся окне выберите Разработка классических приложений на C++. Если у вас в распоряжении не так много памяти или вы не собираетесь заниматься разработкой приложений на C++, можно установить только указанные ранее компоненты. Это MCVS для x64/x86 (последние поддерживаемые версии обычно в конце списка) и SDK — вы найдете их во вкладке Отдельные компоненты.

Во вкладке Языковые пакеты выберите английский языковой пакет вместе с русским и нажмите Установить. После установки перезагрузите компьютер.

Запуск установки Rust на Linux и macOS

Чтобы установить Rust на любую Unix-подобную ОС, в том числе и macOS, воспользуйтесь командой в консоли:


      curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Запуск установки Rust на Windows

Теперь перейдем к установке Rust. Скачайте установочный файл по ссылке и затем запустите его, используя PowerShell. Далее все команды для ОС Windows будут указаны для случая использования PowerShell:


      & C:\path_to_file\rustup-init

Процесс установки на всех ОС

После запуска команды появится информация об установке компилятора языка программирования Rust и Cargo. Вы увидите, в каких директориях будут после установки храниться необходимые для работы исполняемые файлы и метаданные, возможности изменения некоторых настроек, а также текущие параметры установки. 

Вывод в терминал после запуска установки на Linux:


      info: downloading installer

Welcome to Rust!

This will download and install the official compiler for the Rust
programming language, and its package manager, Cargo.

Rustup metadata and toolchains will be installed into the Rustup
home directory, located at:

  /root/.rustup

This can be modified with the RUSTUP_HOME environment variable.

The Cargo home directory is located at:

  /root/.cargo

This can be modified with the CARGO_HOME environment variable.

The cargo, rustc, rustup and other commands will be added to
Cargo's bin directory, located at:

  /root/.cargo/bin

This path will then be added to your PATH environment variable by
modifying the profile files located at:

  /root/.profile
  /root/.bashrc

You can uninstall at any time with rustup self uninstall and
these changes will be reverted.

Current installation options:

   default host triple: x86_64-unknown-linux-gnu
     default toolchain: stable (default)
               profile: default
  modify PATH variable: yes

Вывод в терминале после запуска установки на macOS:


      info: downloading installer

Welcome to Rust!

This will download and install the official compiler for the Rust
programming language, and its package manager, Cargo.

Rustup metadata and toolchains will be installed into the Rustup
home directory, located at:

  /Users/admin/.rustup

This can be modified with the RUSTUP_HOME environment variable.

The Cargo home directory is located at:

  /Users/admin/.cargo

This can be modified with the CARGO_HOME environment variable.

The cargo, rustc, rustup and other commands will be added to
Cargo's bin directory, located at:

  /Users/admin/.cargo/bin

This path will then be added to your PATH environment variable by
modifying the profile files located at:

  /Users/admin/.profile
  /Users/admin/.zshenv

You can uninstall at any time with rustup self uninstall and
these changes will be reverted.

Current installation options:

   default host triple: aarch64-apple-darwin
     default toolchain: stable (default)
               profile: default
  modify PATH variable: yes

Вывод в терминале после запуска установки на Windows:


      Welcome to Rust!

This will download and install the official compiler for the Rust
programming language, and its package manager, Cargo.

Rustup metadata and toolchains will be installed into the Rustup
home directory, located at:

  C:\Users\Workstation\.rustup

This can be modified with the RUSTUP_HOME environment variable.

The Cargo home directory is located at:

  C:\Users\Workstation\.cargo

This can be modified with the CARGO_HOME environment variable.

The cargo, rustc, rustup and other commands will be added to
Cargo's bin directory, located at:

  C:\Users\Workstation\.cargo\bin

This path will then be added to your PATH environment variable by
modifying the PATH registry key at HKEY_CURRENT_USER\Environment.

You can uninstall at any time with rustup self uninstall and
these changes will be reverted.

Current installation options:

   default host triple: x86_64-pc-windows-msvc
     default toolchain: stable (default)
               profile: default
  modify PATH variable: yes

Далее вы сможете продолжить установку с указанными параметрами, настроить их или отменить установку.


      1) Proceed with standard installation (default - just press enter)
2) Customize installation
3) Cancel installation
>

Если вы передумали проводить установку, можете прервать операцию с помощью Ctrl + C или ввести 3 и нажать Enter

Вывод в процессе установки для Linux при выборе настроек по умолчанию:


      info: profile set to 'default'
info: default host triple is x86_64-unknown-linux-gnu
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
info: latest update on 2026-02-12, rust version 1.93.1 (01f6ddf75 2026-02-11)
info: downloading component 'cargo'
 10.3 MiB /  10.3 MiB (100 %)   9.0 MiB/s in  1s         
info: downloading component 'clippy'
info: downloading component 'rust-docs'
 20.7 MiB /  20.7 MiB (100 %)  10.1 MiB/s in  2s         
info: downloading component 'rust-std'
 28.1 MiB /  28.1 MiB (100 %)   9.9 MiB/s in  3s         
info: downloading component 'rustc'
 74.4 MiB /  74.4 MiB (100 %)  11.1 MiB/s in  7s         
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
 20.7 MiB /  20.7 MiB (100 %)   7.3 MiB/s in  2s         
info: installing component 'rust-std'
 28.1 MiB /  28.1 MiB (100 %)  18.3 MiB/s in  2s         
info: installing component 'rustc'
 74.4 MiB /  74.4 MiB (100 %)  20.2 MiB/s in  3s         
info: installing component 'rustfmt'
info: default toolchain set to 'stable-x86_64-unknown-linux-gnu'

  stable-x86_64-unknown-linux-gnu installed - rustc 1.93.1 (01f6ddf75 2026-02-11)


Rust is installed now. Great!

Вывод в процессе установки для macOS при выборе настроек по умолчанию:


      info: profile set to 'default'
info: default host triple is aarch64-apple-darwin
info: syncing channel updates for 'stable-aarch64-apple-darwin'
info: latest update on 2026-02-12, rust version 1.93.1 (01f6ddf75 2026-02-11)
info: downloading component 'cargo'
  8.1 MiB /   8.1 MiB (100 %)   5.9 MiB/s in  1s         
info: downloading component 'clippy'
info: downloading component 'rust-docs'
 20.7 MiB /  20.7 MiB (100 %)   8.1 MiB/s in  2s         
info: downloading component 'rust-std'
 26.2 MiB /  26.2 MiB (100 %)   6.4 MiB/s in  4s         
info: downloading component 'rustc'
 60.8 MiB /  60.8 MiB (100 %)   8.8 MiB/s in  8s         
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
 20.7 MiB /  20.7 MiB (100 %)   8.0 MiB/s in  2s         
info: installing component 'rust-std'
 26.2 MiB /  26.2 MiB (100 %)  19.0 MiB/s in  1s         
info: installing component 'rustc'
 60.8 MiB /  60.8 MiB (100 %)  20.7 MiB/s in  2s         
info: installing component 'rustfmt'
info: default toolchain set to 'stable-aarch64-apple-darwin'

  stable-aarch64-apple-darwin installed - rustc 1.93.1 (01f6ddf75 2026-02-11)

Rust is installed now. Great!

Вывод в процессе установки для Windows при выборе настроек по умолчанию:


      info: profile set to 'default'
info: default host triple is x86_64-pc-windows-msvc
info: syncing channel updates for 'stable-x86_64-pc-windows-msvc'
info: latest update on 2026-02-12, rust version 1.93.1 (01f6ddf75 2026-02-11)
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
 20.7 MiB /  20.7 MiB (100 %)  10.0 MiB/s in  2s
info: downloading component 'rust-std'
 20.9 MiB /  20.9 MiB (100 %)   9.9 MiB/s in  2s
info: downloading component 'rustc'
 68.3 MiB /  68.3 MiB (100 %)  11.3 MiB/s in  6s
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
 20.7 MiB /  20.7 MiB (100 %)   2.3 MiB/s in  6s
info: installing component 'rust-std'
 20.9 MiB /  20.9 MiB (100 %)  18.8 MiB/s in  1s
info: installing component 'rustc'
 68.3 MiB /  68.3 MiB (100 %)  19.8 MiB/s in  3s
info: installing component 'rustfmt'
info: default toolchain set to 'stable-x86_64-pc-windows-msvc'

  stable-x86_64-pc-windows-msvc installed - rustc 1.93.1 (01f6ddf75 2026-02-11)

Rust is installed now. Great!

Дополнительные настройки

Чтобы узнать, какие настройки можно произвести выполнить на данном этапе, введите 2 и нажмите Enter. Потрдебуется ответить на вопросы из таблицы. В круглых скобках указаны возможные варианты ответов, если их ограниченное количество, а в квадратных — значение по умолчанию, если вы ничего не введете и просто нажмете Enter.

ВопросПояснения к нему
Default host triple? [x86_64-unknown-linux-gnu]Идентификатор платформы, описывающий архитектуру центрального процессора (ЦП), вендора и операционную систему, для которой Rust будет компилировать программы по умолчанию.
Обычно принимает значение по умолчанию, если не рассматривается какой-то нестандартный сценарий — например, сборка программы для платформы, отличной от платформы компиляции (иначе, кросс-компиляция).
Если вы сомневаетесь в правильности определения параметра по умолчанию, соотнесите значение в квадратных скобках с результатом команды:Linux/macOS: uname -aWindows: для определения архитектуры ЦП — $env:PROCESSOR_ARCHITECTURE, для определения среды — msvc разработка для Windows, gnu — в остальных специфических случаях.
Примеры значений host triple для разных операционных систем:Linux (x86_64-unknown-linux-gnu, x86_64-unknown-linux-musl);macOS (x86_64-apple-darwin, aarch64-apple-darwin);Windows (x86_64-pc-windows-msvc, x86_64-pc-windows-gnu).
Default toolchain? (stable/beta/nightly/none) [stable]Toolchain (набор инструментов), который будет использоваться по умолчанию. 
Варианты выбора:stable — значение по умолчанию (обновляется каждые 6 недель, используется для разработки);beta — то, что появится в следующей stable версии, включает функции, которые еще не прошли полное тестирование;nightly — выпускается каждую ночь, содержит экспериментальные функции;конкретная версия — (например, nightly-2026-02-15, stable-1.90.0), это удобно для полной совместимости во время разработки;none — ни один toolchain не будет установлен, но после окончания установки для начала работы потребуется установить вручную одну из версий, указанных ранее, или кастомный toolchain.
Profile (which tools and data to install)? (minimal/default/complete) [default]Набор компонентов, который будет установлен:minimal — только rustc, rust-std и cargo;default — то же, что в minimal, + rust-docs, rustfmt, clippy; рекомендован для общего использования;complete  все компоненты, когда-либо включенные в метаданные, не рекомендуется к использованию.
Modify PATH variable? (Y/n)Предлагает добавить путь /root/.cargo/bin в системную переменную PATH. Выбор y или нажатие Enter позволяет запускать инструменты Rust без дополнительных действий. Если выбрать n, переменная PATH остается без изменений. Тогда команды нужно будет запускать, используя полный путь до исполняемых файлов.

Ответив на вопросы, вы снова получите сводку всех назначенных характеристик, которые необходимо проверить. 

После процесса установки

В конце успешной установки нас предупреждают, что для дальнейшей работы нужно обновить консоль. Это позволит корректно примениться всем изменениям, произведенным в окружении (расширение значений PATH). 

Для Linux и macOS:


      To get started you may need to restart your current shell.
This would reload your PATH environment variable to include
Cargo's bin directory ($HOME/.cargo/bin).

Для Windows:


      To get started you may need to restart your current shell.
This would reload its PATH environment variable to include
Cargo's bin directory (%USERPROFILE%\.cargo\bin).

Press the Enter key to continue.

Если это невозможно, например, из-за того, что работа происходит в контейнере или переменная PATH не была изменена, выполните инициализацию Rust в текущей сессии терминала. Используйте команды, которые подсказывает сам установщик для Unix-подобных ОС:


      To configure your current shell, you need to source
the corresponding env file under $HOME/.cargo.

This is usually done by running one of the following (note the leading DOT):
. "$HOME/.cargo/env"            # For sh/bash/zsh/ash/dash/pdksh
source "$HOME/.cargo/env.fish"  # For fish
source $"($nu.home-path)/.cargo/env.nu"  # For nushell

В Windows такой возможности нет.

Сводка команд для начала работы с Rust

Далее хочу привести некоторую сводку команд для разных целей. Она поможет проверить, корректно ли прошла установка, начать работу с кодом и узнать, как произвести некоторые настройки. Вам потребуется добавить новые компоненты или выполнить кросс-компиляцию.

Команды для проверки корректной установки
Вывод текущей версии компилятораrustc –version
Вывод текущей версии Cargocargo –version
Вывод версии менеджера toolchainrustup –version
Проверка наличия Rust в переменной PATHLinux и macOS: echo $PATH | grep -q $HOME/.cargo/bin
Windows: $env:PATH -split ‘;’ -contains “$env:USERPROFILE\.cargo\bin”
Создание, сборка и запуск тестового проекта с помощью Cargo (разбор команд для Сargo приведен ниже)cargo new test_project
cd test_project
cargo run
Команды для получения информации
Вызов справки для rustuprustup –help
Вызов справки для rustcrustc –help
Вызов справки для Cargoсargo –help
Открыть локальную документацию в браузереrustup doc
Список доступных компонент (например, rust-docs, clippy)rustup component list
Выводит все установленные toolchainsrustup toolchain list
Выводит список доступных targets(целевых платформ, для которых компилируется Rust-код)rustup target list
Информация об актиктивной версии  toolchain и обо всех установленных toolchainsrustup show
Команды для настройки
Добавление Rust в переменную PATH для Linux (вариант зависит от используемой оболочки) или macOS (вариант с ~/.zshrc)echo ‘. “$HOME/.cargo/env”‘ | tee -a ~/.bashrc ~/.profileилиecho ‘. “$HOME/.cargo/env”‘ | tee -a ~/.zshenv ~/.profile
Добавление Rust в переменную PATH для Windows[Environment]::SetEnvironmentVariable(
    “PATH”,    [Environment]::GetEnvironmentVariable(“PATH”, “User”) + “;$env:USERPROFILE\.cargo\bin”,”User”)
Добавление компоненты (установка дополнительного иснтрумента)rustup component add rust-docs
Добавление toolchain с определенной версией Rust (например, stable, beta, 1.92.0, nightly-2026-02-15)rustup toolchain install <necessary_version>
Назначение toolchain, используемого в проектах по умолчаниюrustup default <necessary_toolchain>
Добавление нового target (установка необходимых библиотек для компиляции) rustup target add <necessary_target>
Переопеределение toolchain для конкретной директории (проекта)rustup override set <necessary_version>
Отмена предыдущей настройки — возвращение к версии по умолчаниюrustup override unset
Команды для обновления или удаления
Обновление rustup и все toolchains, установленных из официальных источниковrustup update
Обновление только rustuprustup self update
Обновление конкретного toolchain (например, stable, nightly, beta)rustup update <toolchain_name>
Получение информации об обновлениях rustup и toolchainsrustup check
Полное удаление Rust и инструментов для негоrustup self uninstall
Команды для работы с Cargo
Создание нового проекта с базовой структурой по указанному путиcargo new <path>
Собрать проектcargo build
Собирает и запускает проектcargo run
Выполняются все проверки компилятора без создания исполняемого файлаcargo check
Компилирует и выполняет модульные и интеграционные тесты в проектеcargo test
Запускает линтер (если компонента clippy была установлена) для поиска ошибок в коде, также предлагается оптимизация кодаcargo clippy
Форматирование кода проектаcargo fmt
Удаление всех артефактов сборки проектаcargo clean

С чего начать изучать Rust

Знакомство с любым новым инструментом — очень субъективный процесс. В первую очередь рекомендую изучить типы данных, задание функций, работу с управляющими конструкциями и то, как пользоваться Cargo. А после можно переходить более сложным вещам — например, управлением памятью. Вот что можно использовать:

  • книгу The Rust Programming Language на английском (для версий stable, beta и nightly) и русском языках —  она теоретическая и позволит разобраться с основами языка, но после вам потребуется практика;
  • курс Rustling будет отличным дополнением к книге — здесь вы найдете практические задания;
  • курс Comprehensive Rust не очень удобно оформлен, но поможет практиковаться во владении языком. Есть версия на русском;
  • сайт The Rust Bookshelf, где вы найдете еще больше материалов для изучения языка.

Параллельно с изучением источников, указанных выше, стоит разобраться в принципах работы таких структур данных и изучить основы по операционным системам и компьютерным сетям. Уделите особое внимание устройству памяти и работе процессора. 

Легко ли переходить на Rust с других языков

Независимо от опыта разработчика, переход на Rust нельзя назвать легким. Вам придется столкнуться с особенностями языка.

  • Новый подход в управлении памятью: вам предстоит понять, как работает владение (ownership), заимствование (borrowing), перемещение, времена жизни (lifetimes) и срезы, как распределяются данные в памяти.
  • Основы безопасной многопоточности. 
  • Использование типажей (traits), определяющих поведение в обобщенном виде, обобщенных типов данных (generics), отсутствие наследовани.
  • Явная обработка ошибок, которая является частью системы типов и контролируется жестче компилятором.

По отзывам самих разработчиков, переходить на Rust было проще тем, кто до этого писал код на C/C++ и получил опыт системного программирования. 

Заключение

Разобравшись с установкой и настройкой Rust, мы совершили небольшой шаг навстречу знакомству с этим языком программирования. Переход с других языков может потребовать времени для понимания модели владения и заимствования, однако именно эти механизмы формируют надежность кода. 

Необходимые именно вам инструменты и постоянная практика позволят понять сильные стороны Rust и начать их использовать в собственных проектах.