Risposte:
C'è un semplice comando integrato che lo estrarrà:
rvm implode
Questo rimuoverà la rvm/
directory e tutti i rubini creati al suo interno. Per rimuovere la traccia finale di rvm, è necessario rimuovere anche la gemma rvm:
gem uninstall rvm
Se hai apportato modifiche al tuo PATH
, potresti voler estrarre anche quelle. Controlla i tuoi .bashrc
, .profile
e .bash_profile
file, tra le altre cose.
Potrebbe anche essere presente un /etc/rvmrc
file o uno nella directory home ~/.rvmrc
che potrebbe essere necessario rimuovere.
bash
comportano cose come quando tiri fuori gli eseguibili PATH
.
~/.zshrc
Se le altre risposte non rimuovono RVM abbastanza a fondo per te, la pagina Risoluzione dei problemi di RVM contiene questa sezione:
Come ripulisco completamente tutte le tracce di RVM dal mio sistema, anche per installazioni a livello di sistema?
Ecco uno script personalizzato che chiamiamo come
cleanout-rvm
. Anche se puoi sicuramente utilizzarlorvm implode
come utente normale orvmsudo rvm implode
per un'installazione a livello di sistema, questo script è utile in quanto esce completamente da RVM e pulisce RVM senza utilizzare RVM stesso, senza lasciare tracce.#!/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."
Quando si utilizza implode
e si vede:
Psychologist intervened, cancelling implosion, crisis avoided :)
Quindi potresti voler usare --force
rvm implode --force
Quindi rimuovere RVM dai seguenti percorsi:
rm -rf /usr/local/rvm
sudo rm /etc/profile.d/rvm.sh
sudo rm /etc/rvmrc
sudo rm ~/.rvmrc
Controllare i seguenti file e rimuovere o commentare i riferimenti a RVM:
~/.bashrc
~/.bash_profile
~/.profile
~/.zshrc
~/.zlogin
Commenta / rimuovi le seguenti righe da / etc / profile:
source /etc/profile.d/sm.sh
source /etc/profile.d/rvm.sh
/ etc / profile è un file di sola lettura, quindi usa:
sudo vim /etc/profile
E dopo aver apportato la modifica scrivi con il botto!
:w!
Infine accedi nuovamente / riavvia il tuo terminale.
sudo
inizialmente, quindi nessuno dei suoi file sarà nei percorsi /etc
o /usr
. Solo quando è stato installato utilizzando il multiutente o con sudo
lo vedrai, e la loro esistenza è un forte suggerimento che la documentazione di installazione di RVM NON è stata seguita per installarlo in primo luogo.
Oltre alla risposta di @ tadman, ho rimosso i wrapper /usr/local/bin
e il file /etc/profile.d/rvm
.
Gli involucri includono:
erb
gem
irb
rake
rdoc
ri
ruby
testrb
/usr/local/bin
è /user/local/bin
.
Molte persone fanno un errore comune nel pensare che "rvm implode" lo faccia. Devi eliminare tutte le tracce di qualsiasi file .rm. Inoltre, saranno necessarie alcune eliminazioni manuali da root. Assicurati che venga eliminato e anche tutte le versioni di ruby che hai installato utilizzandolo.
Rimuovere lo script di caricamento RVM da /.bash_rc o /.zsh_rc, quindi utilizzare:
rm -rf /.rvm
O:
rvm implode
rm -rf /.rvm
o rm -rf ~/.rvm
?
Correre:
rvm implode
Ora devi disinstallare la gemma RVM usando:
gem uninstall rvm
Controlla se ci sono file RVM rimanenti nella tua home directory, se sì rimuovili.
Vai alla home directory ed elenca tutti i file nascosti:
ls -a
rm .rvm
rm .rvmrc
gem uninstall rvm
fallirà.
Si noti che se RVM è stato installato tramite apt-get, è necessario eseguire alcuni passaggi aggiuntivi rvm implode
o apt-get remove ruby-rvm
per farlo disinstallare realmente.
Vedi " Installazione di RVM su Ubuntu ".
Se ricevi ancora un messaggio env: ruby_executable_hooks: No such file or directory
quando chiami un pacchetto Ruby, significa che RVM ti ha lasciato un piccolo regalo $PATH
.
Eseguire quanto segue per trovare gli script offensivi:
grep '#!/usr/bin/env ruby_executable_hooks' /usr/local/bin/*
Quindi rm
tutte le partite. gem
Ovviamente dovrai reinstallare tutte quelle librerie con una versione senza RVM .
Per altri neofiti della shell che cercano di correggere la variabile PATH
Dopo aver seguito le istruzioni nella risposta accettata, controlla e modifica la tua variabile PATH se necessario:
env | grep PATH
se vedi "rvm" ovunque, devi capire dove stai impostando PATH e modificarlo. Lo stavo impostando in 3 file, quindi controlla tutti i seguenti file:
vim .bashrc
Elimina le righe nel file che fanno riferimento a rvm usando il comando dd. : wq per salvare ed uscire.
source .bashrc
"ricaricare"
Ripetere questo processo (a partire dal comando vim) per .profile e .bash_profile
Documentazione per la risoluzione dei problemi di RVM " Come posso eliminare completamente tutte le tracce di RVM dal mio sistema, incluso per installazioni a livello di sistema? ":
Ecco uno script personalizzato che chiamiamo 'cleanout-rvm'. Anche se puoi sicuramente utilizzarlo
rvm implode
come utente normale orvmsudo rvm implode
per un'installazione a livello di sistema, questo script è utile in quanto esce completamente da RVM e pulisce RVM senza utilizzare RVM stesso, senza lasciare tracce.#!/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."
Sto eseguendo Ubuntu 19.04 e ho seguito tutte le istruzioni sopra e poi alcune. Alla fine, quello che ha funzionato per me è stato correre
sudo apt autoremove rvm
e ora quando provo a reinstallare RVM in realtà non c'è più. RVM è invasivo, per non dire altro.
Ho provato i comandi sopra per rimuovere RVM da macOS, ma in qualche modo era ancora visibile nel percorso.
Ecco cosa ho fatto, che ha funzionato:
$ open ~/.bash_profile
Aggiungi al tuo profilo bash il seguente:
unset GEM_PATH
unset MY_RUBY_HOME
unset GEM_HOME
Quindi nel terminale eseguire:
$ source ~/.bash_profile
grep
per quelle variabili nella tua home directory e le probabilità sono buone, scoprirai dove. In un'installazione multiutente potrebbero trovarsi /env/bash_profile
.
rvm
- potrebbe essere la sua "ostruzione" - marbenv
è un'alternativa utile. Puoi comunque gestire più versioni di Ruby sul tuo sistema, ma non sovrascrive i comandi della shell, non gestisce i gemset ( Il bundler è più che sufficiente) e non deve essere caricato nella shell.