Почему я получаю "rvm: команда не найдена" в Ubuntu?

Я пытаюсь настроить Siri Proxy и подхожу к шагам:

rvmsudo rvm install 1.9.3
rvm use 1.9.3 --default
rvmsudo gem install eventmachine CFPropertyList httparty json uuidtools

Но я не могу сделать их из-за этих ошибок:

rvm: command not found
rvmsudo: command not found

Я знаю, что это связано с тем, что Ruby Version Manager не установлен или неправильно настроен. Я использую Ubuntu 11.04 и у меня есть только доступ по SSH.

Вот что я сделал заранее, чтобы установить и инициализировать Ruby:

sudo apt-get install nano ruby build-essential 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 ncurses-dev automake libtool bison subversion
bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile

3 ответа

Проблема в том, что команды rvm а также rvmsudo не в вашем PATH, PATH переменная, в которой перечислены все каталоги, в которых ищутся команды.

Вам нужно выяснить, где rvm а также rvmsudo команды фактически расположены; это может быть в /usr/local где-то или в /opt, Если программное обеспечение RVM было установлено в /usr/local Я предполагаю, что это будет работать просто отлично; проверять /opt,

Затем добавьте каталоги, которые содержат команды к вашему PATH (в командной строке и в .profile):

export PATH=$PATH:/opt/rvm/bin:/opt/rvm/sbin

(Каталоги просто примеры.) Использование $PATH сохраняет ваш текущий путь и добавляет два новых каталога в конце. Каталоги ищутся слева направо и разделяются :,

Подробнее об этом можно узнать в man bash или же man sh или же man ksh в зависимости от вашей оболочки.

В Ubuntu вам нужно использовать ~/.bashrc вместо ~/.bash_profile в случае установки на пользователя, поэтому сделайте:

echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bashrc

или если вы используете Ubuntu 12.04:

echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm" # Load RVM function' >> ~/.bashrc

и после этого:

source ~/.bashrc

и проверить с помощью:

type rvm | head -1

вы должны получить: RVM является функцией

Для последней установки необходимо, чтобы пользователи были добавлены в группу.rvmа затем нужно снова войти в систему.

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

Добавить пользователя в группу можно следующим образом:

      sudo usermod -a -G rvm <user>

Двоичные файлы также могут находиться в разных местах в зависимости от метода, который вы использовали во время установки. они у меня были в/usr/share/rvm/

Вы также можете посмотреть/usr/local/rvm/scripts/rvm

Затем вы добавляете эту строку в конец~/.bashrc

      [[ -s /usr/share/rvm/scripts/rvm ]] && source /usr/share/rvm/scripts/rvm

Примечание. Если вы используете оболочку, отличную отbashвам может потребоваться добавить путь соответствующим образом.

Например, если вы используетеzshоболочки добавьте приведенные выше строки в~/.zshrcфайл.

Другие вопросы по тегам