Antworten:
Es ist ein einfacher Befehl eingebaut, der es abruft:
rvm implode
Dadurch werden das rvm/
Verzeichnis und alle darin erstellten Rubine entfernt. Um die letzte Spur von rvm zu entfernen, müssen Sie auch den rvm-Edelstein entfernen:
gem uninstall rvm
Wenn Sie Änderungen an Ihrem vorgenommen haben PATH
, möchten Sie diese möglicherweise auch abrufen. Prüfen Sie .bashrc
, .profile
und .bash_profile
Dateien, unter anderem.
Möglicherweise haben Sie auch eine /etc/rvmrc
Datei oder eine in Ihrem Home-Verzeichnis ~/.rvmrc
, die möglicherweise ebenfalls entfernt werden muss.
bash
unterbrochen werden, bis Sie eine neue Shell erstellen, da sich solche Dinge genau so verhalten, wenn Sie ausführbare Dateien aus der Shell herausziehen PATH
.
~/.zshrc
Wenn die anderen Antworten RVM nicht vollständig genug für Sie entfernen, enthält die Seite zur Fehlerbehebung von RVM diesen Abschnitt:
Wie kann ich alle Spuren von RVM vollständig von meinem System entfernen, auch bei systemweiten Installationen?
Hier ist ein benutzerdefiniertes Skript, das wir nennen
cleanout-rvm
. Während Sie es definitivrvm implode
als normaler Benutzer oderrvmsudo rvm implode
für eine systemweite Installation verwenden können, ist dieses Skript nützlich, da es vollständig außerhalb von RVM ausgeführt wird und RVM ohne Verwendung von RVM selbst bereinigt und keine Spuren hinterlässt.#!/bin/bash /usr/bin/sudo rm -rf $HOME/.rvm $HOME/.rvmrc /etc/rvmrc /etc/profile.d/rvm.sh /usr/local/rvm /usr/local/bin/rvm /usr/bin/sudo /usr/sbin/groupdel rvm /bin/echo "RVM is removed. Please check all .bashrc|.bash_profile|.profile|.zshrc for RVM source lines and delete or comment out if this was a Per-User installation."
Bei der Verwendung implode
und Sie sehen:
Psychologist intervened, cancelling implosion, crisis avoided :)
Dann möchten Sie vielleicht verwenden --force
rvm implode --force
Entfernen Sie dann RVM von den folgenden Stellen:
rm -rf /usr/local/rvm
sudo rm /etc/profile.d/rvm.sh
sudo rm /etc/rvmrc
sudo rm ~/.rvmrc
Überprüfen Sie die folgenden Dateien und entfernen oder kommentieren Sie Verweise auf RVM:
~/.bashrc
~/.bash_profile
~/.profile
~/.zshrc
~/.zlogin
Kommentieren / entfernen Sie die folgenden Zeilen aus / etc / profile:
source /etc/profile.d/sm.sh
source /etc/profile.d/rvm.sh
/ etc / profile ist eine schreibgeschützte Datei. Verwenden Sie daher:
sudo vim /etc/profile
Und nachdem Sie die Änderung vorgenommen haben, schreiben Sie mit einem Knall!
:w!
Zum Schluss melden Sie sich erneut an / starten Sie Ihr Terminal neu.
sudo
, sodass sich keine seiner Dateien in den Pfaden /etc
oder befindet /usr
. Es wurde nur , wenn es installiert , um die Multi-User verwenden oder mit sudo
Sie werden sehen , dass, und ihre Existenz sind starke Hinweise darauf , dass die RVM - Installationsdokumentation war NICHT in erster Linie zu installieren gefolgt.
Viele Leute machen einen häufigen Fehler zu denken, dass 'rvm implode' es tut. Sie müssen alle Spuren von .rm-Dateien löschen. Außerdem werden einige manuelle Löschungen von root benötigt. Stellen Sie sicher, dass es gelöscht wird und auch alle Ruby-Versionen, die Sie damit installiert haben.
Entfernen Sie das RVM-Ladeskript aus /.bash_rc oder /.zsh_rc und verwenden Sie dann:
rm -rf /.rvm
Oder:
rvm implode
rm -rf /.rvm
oder rm -rf ~/.rvm
?
Lauf:
rvm implode
Jetzt müssen Sie das RVM-Juwel deinstallieren, indem Sie:
gem uninstall rvm
Überprüfen Sie, ob sich noch RVM-Dateien in Ihrem Home-Verzeichnis befinden. Wenn ja, entfernen Sie diese.
Gehen Sie zum Home-Verzeichnis und listen Sie alle versteckten Dateien auf:
ls -a
rm .rvm
rm .rvmrc
gem uninstall rvm
wird daher scheitern.
Beachten Sie, dass , wenn Sie RVM über apt-get installiert, Sie haben als einige weitere Schritte ausführen rvm implode
oder apt-get remove ruby-rvm
es deinstallieren , um wirklich zu bekommen.
Siehe " Installieren von RVM unter Ubuntu ".
Wenn Sie env: ruby_executable_hooks: No such file or directory
beim Aufrufen eines Ruby-Pakets immer noch ein erhalten , bedeutet dies, dass RVM ein kleines Geschenk für Sie hinterlassen hat$PATH
.
Führen Sie die folgenden Schritte aus, um die fehlerhaften Skripte zu finden:
grep '#!/usr/bin/env ruby_executable_hooks' /usr/local/bin/*
Dann rm
alle Streichhölzer. Natürlich müssen Sie alle diese Bibliotheken mit einem RVM-freien neu installieren gem
.
Für andere Shell-Neulinge, die versuchen, die Variable PATH zu reparieren
Nachdem Sie die Anweisungen in der akzeptierten Antwort befolgt haben, überprüfen und ändern Sie gegebenenfalls Ihre PATH-Variable:
env | grep PATH
Wenn Sie irgendwo "rvm" sehen, müssen Sie herausfinden, wo Sie PATH einstellen und ändern. Ich habe es in 3 Dateien eingestellt - überprüfen Sie also alle folgenden Dateien:
vim .bashrc
Löschen Sie die Zeilen in der Datei, die auf rvm verweist, mit dem Befehl dd. : wq zum Speichern und Beenden.
source .bashrc
zum "Nachladen"
Wiederholen Sie diesen Vorgang (beginnend mit dem Befehl vim) für .profile und .bash_profile
Gemäß der RVM-Dokumentation zur Fehlerbehebung " Wie entferne ich alle Spuren von RVM vollständig von meinem System, auch bei systemweiten Installationen? ":
Hier ist ein benutzerdefiniertes Skript, das wir als 'cleanout-rvm' bezeichnen. Während Sie es definitiv
rvm implode
als normaler Benutzer oderrvmsudo rvm implode
für eine systemweite Installation verwenden können, ist dieses Skript nützlich, da es vollständig außerhalb von RVM ausgeführt wird und RVM ohne Verwendung von RVM selbst bereinigt und keine Spuren hinterlässt.#!/bin/bash /usr/bin/sudo rm -rf $HOME/.rvm $HOME/.rvmrc /etc/rvmrc /etc/profile.d/rvm.sh /usr/local/rvm /usr/local/bin/rvm /usr/bin/sudo /usr/sbin/groupdel rvm /bin/echo "RVM is removed. Please check all .bashrc|.bash_profile|.profile|.zshrc for RVM source lines and delete or comment out if this was a Per-User installation."
Ich verwende Ubuntu 19.04 und habe alle obigen und einige Anweisungen befolgt. Schließlich funktionierte es für mich, zu rennen
sudo apt autoremove rvm
und jetzt, wenn ich versuche, RVM neu zu installieren, ist es tatsächlich weg. RVM ist, gelinde gesagt, invasiv.
Ich habe die obigen Befehle versucht, um RVM von macOS zu entfernen, aber irgendwie wurde es immer noch im Pfad angezeigt.
Folgendes habe ich getan, was funktioniert hat:
$ open ~/.bash_profile
Fügen Sie Ihrem Bash-Profil Folgendes hinzu:
unset GEM_PATH
unset MY_RUBY_HOME
unset GEM_HOME
Dann im Terminal laufen:
$ source ~/.bash_profile
grep
Für diese Variablen in Ihrem Home-Verzeichnis und die guten Chancen finden Sie heraus, wo. In einer Mehrbenutzerinstallation könnten sie sich in befinden /env/bash_profile
.
rvm
- es könnte seine "Aufdringlichkeit" sein -, sind aberrbenv
eine lohnende Alternative. Sie können immer noch mehrere Ruby-Versionen auf Ihrem System verwalten, aber es überschreibt keine Shell-Befehle, verwaltet keine Gemsets ( Bundler ist mehr als ausreichend) und muss nicht in die Shell geladen werden.