Как удалить Ruby из / usr / local? - PullRequest
20 голосов
/ 07 апреля 2010

Все работало нормально, пока мы не решили обновить ruby ​​до 1.8.7 с 1.8.6, и вот тогда весь ад вышел из строя.Когда мы скомпилировали Ruby 1.8.7 из исходного кода, он был установлен в / usr / local / bin, а Ruby 1.8.6 остался в / usr / bin.В настоящее время мы удалили ruby ​​1.8.6 и некоторым движением удалили файлы ruby ​​1.8.7 из /usr/local.

, когда мы пытаемся «какой ruby» указывает на / usr / local.Если бы кто-нибудь мог помочь нам в том, что нам нужно сделать, чтобы вернуться на правильный путь, мы были бы очень благодарны. А также за любую идею, как мы можем удалить ruby ​​из / usr / local.мы попробовали yum удалить ruby, который удалил ruby ​​из /usr/bin. Спасибо и ура!

Ответы [ 6 ]

21 голосов
/ 20 января 2011

Редактировать: как предлагается в комментариях. Это решение для ОС Linux. Это также, если вы установили ruby ​​вручную из менеджера пакетов.

Если вы хотите иметь несколько версий ruby, лучше иметь RVM . В этом случае вам не нужно удалять ruby ​​более старой версии.

Тем не менее, если хотите удалить, выполните следующие действия:

Сначала вы должны найти, где находится Ruby:

whereis ruby

выведет список всех мест, где он существует в вашей системе, затем вы можете удалить их все явно. Или вы можете использовать что-то вроде этого:

rm -rf /usr/local/lib/ruby
rm -rf /usr/lib/ruby
rm -f /usr/local/bin/ruby
rm -f /usr/bin/ruby
rm -f /usr/local/bin/irb
rm -f /usr/bin/irb
rm -f /usr/local/bin/gem
rm -f /usr/bin/gem
12 голосов
/ 08 апреля 2010

Не рекомендуется удалять 1.8.6, если она установлена ​​в /usr/bin. Это принадлежит ОС и, как ожидается, будет там.

Если вы поместите /usr/local/bin в свой PATH до /usr/bin, то все, что вы установили в /usr/local/bin, будет найдено до любого с таким же именем в /usr/bin, эффективно перезаписывая или обновляя его, фактически не делая этого. Вы все еще можете связаться с ними, явно используя /usr/bin в вашем #! строка вызова интерпретатора вверху вашего кода.

@ Анураг рекомендовал использовать RVM, который я буду вторым. Я использую его для управления 1.8.7 и 1.9.1 в дополнение к ОС 1.8.6.

2 голосов
/ 07 апреля 2010

Создайте символическую ссылку в / usr / bin с именем 'ruby' и укажите на нее последний установленный ruby.

Вы можете использовать что-то вроде ln -s /usr/bin/ruby /to/the/installed/ruby/binary

Надеюсь, это поможет.

1 голос
/ 12 декабря 2016

Если ruby ​​был установлен следующим образом:

./configure --prefix=/usr/local
make
sudo make install

Вы можете удалить его следующим образом:

Проверить установленную версию ruby;давайте предположим, что 2.1.2

wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.2.tar.bz2
bunzip ...
tar xfv ...
cd ruby-2.1.2
./configure --prefix=/usr/local
make
sudo checkinstall
  # will build deb or rpm package and try to install it

После установки вы можете удалить пакет, и он удалит каталоги / файлы / и т. д.

sudo rpm -e ruby # or dpkg -P ruby (for Debian-like systems)

Возможно, остались некоторые артефакты:

Removing ruby ...
  warning: while removing ruby, directory '/usr/local/lib/ruby/gems/2.1.0/gems' not empty so not removed.
  ...

Удалите их вручную.

1 голос
/ 01 мая 2014

сделать так:

sudo apt purge ruby
0 голосов
/ 09 октября 2017

sudo make uninstall справились со мной, используя tar Ruby 2.4 со страницы официальных загрузок.

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