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, .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.
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.
~/.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 implodeals normaler Benutzer oderrvmsudo 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."
Bei der Verwendung implodeund 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 /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.
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 /.rvmoder 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 rvmwird daher scheitern.
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.
Siehe " Installieren von RVM unter Ubuntu ".
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:
grep '#!/usr/bin/env ruby_executable_hooks' /usr/local/bin/*
Dann rmalle 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 .bashrczum "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 implodeals normaler Benutzer oderrvmsudo 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."
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
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.
rvm- es könnte seine "Aufdringlichkeit" sein -, sind aberrbenveine 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.