Respuestas:
Hay un comando simple incorporado que lo extraerá:
rvm implode
Esto eliminará el rvm/
directorio y todos los rubíes creados dentro de él. Para eliminar el rastro final de rvm, también debe eliminar la gema rvm:
gem uninstall rvm
Si ha realizado modificaciones en su, PATH
es posible que también desee realizarlas. Verifique su .bashrc
, .profile
y .bash_profile
archivos, entre otras cosas.
También puede tener un /etc/rvmrc
archivo, o uno en su directorio de inicio ~/.rvmrc
que también deba eliminarse.
bash
comportan cosas cuando saca los ejecutables del PATH
.
~/.zshrc
Si las otras respuestas no eliminan RVM lo suficiente, la página de solución de problemas de RVM contiene esta sección:
¿Cómo limpio completamente todos los rastros de RVM de mi sistema, incluso para las instalaciones de todo el sistema?
Aquí hay un script personalizado que denominamos como
cleanout-rvm
. Si bien definitivamente puede usarlorvm implode
como usuario habitual orvmsudo rvm implode
para una instalación en todo el sistema, este script es útil ya que se sale completamente de RVM y limpia RVM sin usar RVM en sí mismo, sin dejar rastros.#!/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."
Al usar implode
y ves:
Psychologist intervened, cancelling implosion, crisis avoided :)
Entonces es posible que desee utilizar --force
rvm implode --force
Luego, elimine RVM de las siguientes ubicaciones:
rm -rf /usr/local/rvm
sudo rm /etc/profile.d/rvm.sh
sudo rm /etc/rvmrc
sudo rm ~/.rvmrc
Verifique los siguientes archivos y elimine o comente las referencias a RVM:
~/.bashrc
~/.bash_profile
~/.profile
~/.zshrc
~/.zlogin
Comente / elimine las siguientes líneas de / etc / profile:
source /etc/profile.d/sm.sh
source /etc/profile.d/rvm.sh
/ etc / profile es un archivo de solo lectura, así que use:
sudo vim /etc/profile
Y después de hacer el cambio, escribe usando una explosión.
:w!
Finalmente vuelva a iniciar sesión / reinicie su terminal.
sudo
inicialmente, por lo que ninguno de sus archivos estará en las rutas /etc
o /usr
. Sólo cuando se instaló utilizando el multi-usuario o con la sudo
va a ver eso, y su existencia son fuertes indicios de que la documentación de instalación RVM fue NO siguieron a instalarlo en el primer lugar.
Mucha gente comete un error común al pensar que 'implode rvm' lo hace. Debe eliminar todos los rastros de cualquier archivo .rm. Además, tomará algunas eliminaciones manuales de la raíz. Asegúrese de que se elimine y también todas las versiones de ruby que instaló usándolo.
Elimine el script de carga RVM de /.bash_rc o /.zsh_rc, luego use:
rm -rf /.rvm
O:
rvm implode
rm -rf /.rvm
o rm -rf ~/.rvm
?
Correr:
rvm implode
Ahora necesita desinstalar la gema RVM usando:
gem uninstall rvm
Compruebe si hay archivos RVM restantes en su directorio de inicio, en caso afirmativo, elimínelos.
Vaya al directorio de inicio y enumere todos los archivos ocultos:
ls -a
rm .rvm
rm .rvmrc
gem uninstall rvm
lo que fallará.
Tenga en cuenta que si instaló RVM a través de apt-get, debe ejecutar algunos pasos adicionales rvm implode
o apt-get remove ruby-rvm
para que realmente se desinstale.
Consulte " Instalación de RVM en Ubuntu ".
Si todavía recibe un mensaje env: ruby_executable_hooks: No such file or directory
al llamar a un paquete de Ruby, eso significa que RVM le dejó un pequeño regalo en su$PATH
.
Ejecute lo siguiente para encontrar los scripts ofensivos:
grep '#!/usr/bin/env ruby_executable_hooks' /usr/local/bin/*
Luego rm
todos los partidos. Tendrá que reinstalar todas esas bibliotecas con un RVM libre gem
, por supuesto.
Para otros novatos de shell que intentan arreglar la variable PATH
Después de seguir las instrucciones en la respuesta aceptada, verifique y modifique su variable PATH si es necesario:
env | grep PATH
si ve "rvm" en cualquier lugar, debe averiguar dónde está configurando PATH y modificar. Lo estaba configurando en 3 archivos, así que verifique todos los siguientes archivos:
vim .bashrc
Elimine las líneas en el archivo que hace referencia a rvm con el comando dd. : wq para guardar y salir.
source .bashrc
para "recargar"
Repita este proceso (comenzando con el comando vim) para .profile y .bash_profile
Según la documentación de resolución de problemas de RVM " ¿Cómo elimino completamente todos los rastros de RVM de mi sistema, incluso para las instalaciones de todo el sistema? "
Aquí hay un script personalizado que llamamos 'cleanout-rvm'. Si bien definitivamente puede usarlo
rvm implode
como usuario habitual orvmsudo rvm implode
para una instalación en todo el sistema, este script es útil ya que se sale completamente de RVM y limpia RVM sin usar RVM en sí mismo, sin dejar rastros.#!/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."
Estoy ejecutando Ubuntu 19.04 y seguí todas las instrucciones anteriores y algo más. Finalmente, lo que funcionó para mí fue correr
sudo apt autoremove rvm
y ahora, cuando intento reinstalar RVM, ya no existe. RVM es invasivo, por decir lo menos.
Intenté los comandos anteriores para eliminar RVM de macOS, pero de alguna manera todavía aparecía en la ruta.
Esto es lo que hice, que funcionó:
$ open ~/.bash_profile
Agregue a su perfil de bash lo siguiente:
unset GEM_PATH
unset MY_RUBY_HOME
unset GEM_HOME
Luego, en la terminal ejecute:
$ source ~/.bash_profile
grep
para esas variables en su directorio de inicio y las probabilidades son buenas, descubrirá dónde. En una instalación multiusuario podrían estar en /env/bash_profile
.
rvm
, podría ser su 'intromisión', perorbenv
es una alternativa que vale la pena. Aún puede administrar múltiples versiones de Ruby en su sistema, pero no anula los comandos de shell, no administra gemas ( Bundler es más que suficiente) y no necesita cargarse en el shell.