Рвм не возвращается к системному рубину
Я позволю логу оболочки объяснить себя:
root:~# rvm current
system
root:~# which ruby
/usr/bin/ruby
root:~# rvm use 1.9.2
Using /root/.rvm/gems/ruby-1.9.2-p290
root:~# rvm current
ruby-1.9.2-p290
root:~# which ruby
/root/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
root:~# rvm system
root:~# rvm current
system
root:~# which ruby
/root/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
root:~#
На этом этапе, если rvm утверждает, что текущая установка является "системной", не должен ли ruby указывать обратно на /usr/bin/ruby?
Более того, может ли кто-нибудь объяснить на высоком уровне, что происходит, когда выполняется "rvm [версия]", где [версия] может быть "системой"? Я понимаю, что это путается с путями, на которые указывают текущие "рубин", "драгоценный камень" и т. Д., Но делает ли он какие-то другие вещи под прикрытием?
1 ответ
Это может быть связано с более старой версией rvm, которая не выдает предупреждение, когда use
был сломан, новые версии RVM скажут вам, что вы не можете использовать ruby, потому что RVM не загружается как функция.
Другой момент может заключаться в том, что системный рубт и рубин по умолчанию могут конфликтовать, и даже если вы заставите его работать - он все равно будет указывать на рубин по умолчанию rvm вместо системы.
И последнее - вы установили пользовательский режим rvm для root, это наименее протестированный вариант использования RVM, на самом деле его даже сложно получить, это может быть причиной проблемы.