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

Установка и управление Ruby с помощью RVM на Ubuntu

• 5 min read • DevOps • Обновлено 23 Nov 2025
RVM на Ubuntu: установка и управление Ruby
RVM на Ubuntu: установка и управление Ruby

Что такое RVM

RVM — это инструмент для управления версиями Ruby. Одной строкой: он направляет вызовы ruby/gem к выбранной версии с помощью переменных окружения и ссылок.

Краткое определение: RVM — «менеджер версий Ruby», который устанавливает Ruby в пользовательскую директорию и переключает окружение по требованию.

Как это работает

Обычно RVM устанавливают либо для конкретного пользователя, либо системно. RVM сохраняет разные версии Ruby и при активации одной из них перенастраивает PATH и переменные окружения. Это похоже на набор символических ссылок и настроек окружения, а не на виртуальную машину — процессы запускают реальный исполняемый файл Ruby выбранной версии.

Важно: RVM может использовать «gemsets» — изолированные наборы гемов для одной версии Ruby, чтобы избежать конфликтов между проектами.

Подготовка и установка

  1. Установите зависимости сборки. На Ubuntu выполните:
sudo apt-get install git build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev
  1. Установите RVM с официального инсталлятора (стабильная ветка):
\curl -sSL https://get.rvm.io | bash -s stable

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

  1. После установки RVM вы увидите сообщение от разработчиков RVM и инструкции по следующему шагу.

Добавление Ruby

Чтобы установить конкретную версию Ruby, используйте команду rvm install. Пример для Ruby 1.8.7:

rvm install 1.8.7

Установка RVM и вывод терминала с компиляцией Ruby 1.8.7

RVM обработает конфигурацию, компиляцию и установку RubyGems.

Вывод терминала после успешной установки Ruby 1.8.7

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

Чтобы RVM мог перехватывать вызовы Ruby, добавьте загрузку RVM в ваш профиль оболочки. В файл ~/.bashrc или ~/.bash_profile добавьте строку:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

Перезапустите оболочку (закройте и откройте терминал или выполните команду source ~/.bashrc).

Проверьте установку:

type rvm | head -1

Ожидаемый ответ: «rvm is a function». Если это не так, проверьте, что строка добавлена в правильный профиль оболочки и что профиль загружается.

Управление версиями Ruby

Выберите установленную версию:

rvm use 1.8.7

RVM отобразит подтверждение и путь к исполняемому файлу Ruby. Проверить путь можно через стандартную команду which ruby.

Установка дополнительных версий выполняется тем же способом. Гемы устанавливаются и удаляются как обычно, но они привязаны к выбранной версии или к «gemset», если вы его используете.

Когда RVM может не подойти (контрпримеры)

  • Если вам нужно системно управлять Ruby для всех пользователей через пакетный менеджер системы (apt), лучше использовать пакеты Ubuntu.
  • В контейнерах Docker часто удобнее собрать образ с нужной версией Ruby напрямую, минуя RVM.
  • Для минималистичных окружений или CI/CD предпочтительнее rbenv или системные пакеты, так как они проще и имеют меньшую область влияния.

Альтернативные подходы

  • rbenv — лёгкий менеджер версий Ruby, работает через shims и имеет более простой дизайн.
  • chruby + ruby-install — минималистичный набор: ruby-install для установки, chruby для переключения.
  • Системные пакеты apt / snap — подходят для одноразовой установки, но сложнее с несколькими версиями.
  • Docker — создаёт изолированное окружение с предустановленным Ruby, полезно для продакшн- и CI-сборок.

Ментальная модель

Думайте о RVM как о менеджере, который подставляет в PATH нужные бинарники и настраивает переменные окружения. Он не виртуализует систему — он просто перенаправляет команды к нужной версии Ruby.

Краткая «карта риска» и типичные ошибки

  • Ошибка: «rvm: команда не найдена» — обычно строка инициализации не добавлена в используемый shell.
  • Ошибка компиляции — отсутствуют зависимости сборки; проверьте установку пакетов build-essential и dev-библиотек.
  • Конфликты с system Ruby — убедитесь, что PATH указывает на RVM-путь первым.

Чек-листы по ролям

Для разработчика:

  • Установить зависимости сборки.
  • Установить RVM в пользовательский профиль.
  • Установить нужную версию Ruby и gemset.
  • Добавить файл .ruby-version или .ruby-gemset в проект.

Для системного администратора:

  • Решить: системная или пользовательская установка RVM.
  • Ограничить права и проверить безопасность исполняемых скриптов.
  • Документировать версию Ruby и gemset для каждой службы.

Советы по миграции и совместимости

  • При обновлении Ruby сначала установите новую версию рядом с текущей.
  • Используйте gemset для постепенного переноса гемов: установите гемы в новый gemset, запустите тесты.
  • Проверьте совместимость гемов и C-расширений (нужна перекомпиляция при смене мажорной версии Ruby).

Устранение неполадок (runbook)

  1. Проверьте, загрузился ли RVM в оболочку: выполните type rvm.
  2. Если нет, проверьте содержимое ~/.bashrc, ~/.bash_profile и ~/.profile на наличие строки загрузки RVM.
  3. Для проблем со сборкой проверьте логи сборки: RVM обычно сохраняет их в /home//.rvm/log/.
  4. При подозрении на повреждённые установки используйте rvm implode (только если вы готовы удалить все версии) и переустановите.

Важно: команда rvm implode удаляет все версии и gemsets; применяйте с осторожностью.

Факты и оценки

  • RVM по умолчанию устанавливает Ruby в директорию пользователя (~/.rvm).
  • Подходящ для разработки и локального тестирования. Для продакшна рассмотрите контейнеры или системные пакеты.

Краткий словарь

  • gemset — изолированный набор гемов для одной версии Ruby.
  • gem — библиотека Ruby, устанавливаемая через rubygems.
  • shim — прокси-скрипт, используемый некоторыми менеджерами версий (rbenv).

Социальный превью

OG заголовок: RVM на Ubuntu — установка и управление Ruby OG описание: Простая инструкция по установке RVM на Ubuntu, добавлению версий Ruby и базовому устранению неполадок.

Короткое объявление (100–200 слов): Ускорьте разработку на Ruby с помощью RVM: этот менеджер версий позволяет устанавливать и переключаться между несколькими версиями Ruby без конфликтов. В руководстве описаны подготовка окружения, официальный способ установки, добавление версий Ruby, базовая настройка оболочки и типичные ошибки. Также рассмотрены альтернативы (rbenv, chruby, Docker), советы по миграции и полезные чек-листы для разработчиков и администраторов. Следуя инструкции, вы легко настроите локальное окружение для разработки и тестирования приложений на разных версиях Ruby.

Итог

RVM упрощает управление версиями Ruby на Ubuntu: он автоматизирует сборку и переключение между версиями, минимизирует конфликты гемов и позволяет разработчику быстро проверять совместимость приложений с разными версиями Ruby.

Краткие выводы:

  • Установите зависимости сборки, затем RVM через официальный скрипт.
  • Добавьте инициализацию RVM в профиль оболочки и перезапустите терминал.
  • Используйте rvm install и rvm use для установки и переключения версий.
  • Рассмотрите альтернативы (rbenv, chruby, Docker) если нужен иной подход.
Поделиться: 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 быстро