Почему я получаю "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
файл.