Sie sind sich nicht sicher über Ihre Absichten zu entfernen rvm- es könnte seine "Aufdringlichkeit" sein -, sind aber rbenveine 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.
Jochem Schulenklopper
Antworten:
923
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, .profileund .bash_profileDateien, unter anderem.
Möglicherweise haben Sie auch eine /etc/rvmrcDatei oder eine in Ihrem Home-Verzeichnis ~/.rvmrc, die möglicherweise ebenfalls entfernt werden muss.
+1 für das Notieren der Profileinstellungen und die Deinstallation des Edelsteins, wenn Sie Wayne nicht zuerst angehört und als Edelstein installiert haben. :)
Jed Schneider
7
Wenn Sie - wie ich - rvm im Passagier konfiguriert haben, stellen Sie sicher, dass Sie den Passagier auch danach neu installieren.
berkes
4
Es kann vorübergehend bashunterbrochen werden, bis Sie eine neue Shell erstellen, da sich solche Dinge genau so verhalten, wenn Sie ausführbare Dateien aus der Shell herausziehen PATH.
Tadman
14
Ich hatte auch einen Hinweis auf RVM in~/.zshrc
Nate Cook
8
Hat noch jemand das Gefühl, dass die Deinstallation von rvm einfacher sein sollte? Gute Soße.
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 definitiv rvm implodeals normaler Benutzer oder rvmsudo rvm implodefü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."
Wenn RVM für einen einzelnen Benutzer installiert wurde, sollte es ursprünglich nicht verwendet worden sein sudo, sodass sich keine seiner Dateien in den Pfaden /etcoder befindet /usr. Es wurde nur , wenn es installiert , um die Multi-User verwenden oder mit sudoSie werden sehen , dass, und ihre Existenz sind starke Hinweise darauf , dass die RVM - Installationsdokumentation war NICHT in erster Linie zu installieren gefolgt.
Der Blechmann
17
Zusätzlich zu @ tadmans Antwort habe ich sowohl die Wrapper /usr/local/binals auch die Datei entfernt /etc/profile.d/rvm.
Hinweis: ist es /usr/local/binnicht /user/local/bin.
Bfontaine
7
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.
Hinweis: RVM ist kein Juwel und gem uninstall rvmwird daher scheitern.
Der Blechmann
3
Beachten Sie, dass , wenn Sie RVM über apt-get installiert, Sie haben als einige weitere Schritte ausführen rvm implodeoder apt-get remove ruby-rvmes deinstallieren , um wirklich zu bekommen.
Wenn Sie env: ruby_executable_hooks: No such file or directorybeim 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:
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 .bashrczum "Nachladen"
Wiederholen Sie diesen Vorgang (beginnend mit dem Befehl vim) für .profile und .bash_profile
Hier ist ein benutzerdefiniertes Skript, das wir als 'cleanout-rvm' bezeichnen. Während Sie es definitiv rvm implodeals normaler Benutzer oder rvmsudo rvm implodefü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."
Es gibt zahlreiche Versuche zu erklären, wie RVM über das Internet installiert werden kann, und die meisten sind sehr veraltet und völlig falsch, da die Anwendung in den Jahren seit ihrer Veröffentlichung stark gewachsen ist. Die Website von RVM ist die endgültige Quelle für Informationen zum Installieren, Löschen oder Verwenden. Es gibt viele Seiten, da es sich um ein flexibles Tool handelt. Wenn Sie jedoch die Basisinstallation befolgen, werden Sie feststellen, dass es überhaupt nicht invasiv und recht einfach zu verwalten oder zu entfernen ist.
Der Blechmann
-1
Ich habe die obigen Befehle versucht, um RVM von macOS zu entfernen, aber irgendwie wurde es immer noch im Pfad angezeigt.
Es muss irgendwo initialisiert werden; grepFü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.
Der Blechmann
Ich habe grep benutzt. Ich vergaß zu erwähnen. Entschuldigung.
Sumi
Es ist in Ordnung, Ihre Antwort zu bearbeiten und zu ändern, um genauer zu zeigen, was Sie getan haben. Denken Sie daran, bei SO geht es nicht um die unmittelbare Lösung für das OP, sondern um langfristige Antworten für andere in der Zukunft, die nach Lösungen suchen. Die Leute vergessen, dass es sich nicht um eine Grab-a-Point-Site handelt, sondern darum, den Code der Programmierer positiv zu ändern.
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.Antworten:
Es ist ein einfacher Befehl eingebaut, der es abruft:
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: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.quelle
bash
unterbrochen werden, bis Sie eine neue Shell erstellen, da sich solche Dinge genau so verhalten, wenn Sie ausführbare Dateien aus der Shell herausziehenPATH
.~/.zshrc
Wenn die anderen Antworten RVM nicht vollständig genug für Sie entfernen, enthält die Seite zur Fehlerbehebung von RVM diesen Abschnitt:
quelle
Bei der Verwendung
implode
und Sie sehen:Dann möchten Sie vielleicht verwenden
--force
Entfernen Sie dann RVM von den folgenden Stellen:
Überprüfen Sie die folgenden Dateien und entfernen oder kommentieren Sie Verweise auf RVM:
Kommentieren / entfernen Sie die folgenden Zeilen aus / etc / profile:
/ etc / profile ist eine schreibgeschützte Datei. Verwenden Sie daher:
Und nachdem Sie die Änderung vorgenommen haben, schreiben Sie mit einem Knall!
Zum Schluss melden Sie sich erneut an / starten Sie Ihr Terminal neu.
quelle
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 mitsudo
Sie werden sehen , dass, und ihre Existenz sind starke Hinweise darauf , dass die RVM - Installationsdokumentation war NICHT in erster Linie zu installieren gefolgt.Zusätzlich zu @ tadmans Antwort habe ich sowohl die Wrapper
/usr/local/bin
als auch die Datei entfernt/etc/profile.d/rvm
.Die Wrapper enthalten:
quelle
/usr/local/bin
nicht/user/local/bin
.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.
quelle
Entfernen Sie das RVM-Ladeskript aus /.bash_rc oder /.zsh_rc und verwenden Sie dann:
Oder:
quelle
rm -rf /.rvm
oderrm -rf ~/.rvm
?Lauf:
Jetzt müssen Sie das RVM-Juwel deinstallieren, indem Sie:
Ü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:
quelle
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
oderapt-get remove ruby-rvm
es deinstallieren , um wirklich zu bekommen.Siehe " Installieren von RVM unter Ubuntu ".
quelle
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:
Dann
rm
alle Streichhölzer. Natürlich müssen Sie alle diese Bibliotheken mit einem RVM-freien neu installierengem
.quelle
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:
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:
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
quelle
Gemäß der RVM-Dokumentation zur Fehlerbehebung " Wie entferne ich alle Spuren von RVM vollständig von meinem System, auch bei systemweiten Installationen? ":
quelle
Ich verwende Ubuntu 19.04 und habe alle obigen und einige Anweisungen befolgt. Schließlich funktionierte es für mich, zu rennen
und jetzt, wenn ich versuche, RVM neu zu installieren, ist es tatsächlich weg. RVM ist, gelinde gesagt, invasiv.
quelle
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:
Fügen Sie Ihrem Bash-Profil Folgendes hinzu:
Dann im Terminal laufen:
quelle
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
.