Nie jestem pewien swoich zamiarów usunięcia rvm- może to być jego „natrętność” - ale rbenvjest to warta alternatywa. Nadal możesz zarządzać wieloma wersjami Ruby w systemie, ale nie zastępuje poleceń powłoki, nie zarządza zestawami gemów ( Bundler jest więcej niż wystarczający) i nie musi być ładowany do powłoki.
Jochem Schulenklopper,
Odpowiedzi:
923
Jest wbudowane proste polecenie, które je wyciągnie:
rvm implode
Spowoduje to usunięcie rvm/katalogu i wszystkich wbudowanych w nim rubinów. Aby usunąć ostatni ślad rvm, musisz również usunąć klejnot rvm:
gem uninstall rvm
Jeśli wprowadziłeś modyfikacje, PATHmożesz je również wyciągnąć. Sprawdzić .bashrc, .profilei .bash_profileplików, między innymi.
Możesz także mieć /etc/rvmrcplik lub jeden z katalogu domowego, ~/.rvmrcktóry również może wymagać usunięcia.
+1 za zanotowanie ustawień profilu i odinstalowanie klejnotu, jeśli nie posłuchałeś Wayne'a i nie zainstalowałeś go jako klejnotu. :)
Jed Schneider
7
Jeśli - podobnie jak ja - masz skonfigurowane wartości RVM dla pasażera, upewnij się, że później ponownie zainstalujesz pasażera.
berkes
4
Może to tymczasowo zepsuć się, dopóki nie utworzysz nowej powłoki, ponieważ tak właśnie bashzachowują się rzeczy, gdy wyciągasz pliki wykonywalne z PATH.
tadman
14
Miałem też odniesienie do RVM w~/.zshrc
Nate Cook
8
Czy ktoś jeszcze uważa, że odinstalowanie rvm powinno być łatwiejsze? Dobry sos.
Jak całkowicie usunąć wszystkie ślady RVM z mojego systemu, w tym w przypadku instalacji w całym systemie?
Oto niestandardowy skrypt, który nazywamy jako cleanout-rvm. Chociaż zdecydowanie można go używać rvm implodejako zwykłego użytkownika lub rvmsudo rvm implodedo instalacji całego systemu, skrypt ten jest użyteczny, ponieważ całkowicie wykracza poza RVM i czyści RVM bez korzystania z samego RVM, nie pozostawiając żadnych śladów.
#!/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."
Co sprawia, że pojawia się ten początkowy komunikat?
Newbyte
1
Jeśli RVM został zainstalowany dla jednego użytkownika, nie powinien był być wykonywany przy użyciu sudopoczątkowo, więc żaden z jego plików nie będzie w ścieżkach /etclub /usr. Tylko wtedy, gdy został zainstalowany przy użyciu wielu użytkowników lub z sudo, zobaczysz to, a ich istnienie jest mocną wskazówką, że dokumentacja instalacyjna RVM NIE była przestrzegana, aby zainstalować ją w pierwszej kolejności.
Tin Man
17
Oprócz odpowiedzi @ tadmana usunąłem opakowania /usr/local/bini plik /etc/profile.d/rvm.
Wiele osób często popełnia błąd, myśląc, że robi to „implode rvm”. Musisz usunąć wszystkie ślady plików .rm. Ponadto zajmie to ręczne usunięcie z katalogu głównego. Upewnij się, że zostanie usunięty, a także wszystkie zainstalowane w nim wersje Ruby.
Uwaga: RVM nie jest klejnotem, więc gem uninstall rvmzawiedzie.
Tin Man
3
Pamiętaj, że jeśli zainstalowałeś RVM przez apt-get, musisz wykonać kilka dalszych kroków rvm implodelub apt-get remove ruby-rvm, aby naprawdę odinstalować.
Dla innych początkujących użytkowników powłoki próbujących naprawić zmienną PATH
Po wykonaniu instrukcji z zaakceptowanej odpowiedzi sprawdź i zmodyfikuj zmienną PATH, jeśli to konieczne:
env | grep PATH
jeśli widzisz gdziekolwiek „rvm”, musisz dowiedzieć się, gdzie ustawiasz ŚCIEŻKĘ i zmodyfikować. Ustawiałem go w 3 plikach - sprawdź więc wszystkie następujące pliki:
vim .bashrc
Usuń linie w pliku odwołujące się do rvm za pomocą polecenia dd. : wq, aby zapisać i wyjść. source .bashrc„przeładować”
Powtórz ten proces (zaczynając od komendy vim) dla .profile i .bash_profile
Oto niestandardowy skrypt, który nazywamy „cleanout-rvm”. Chociaż zdecydowanie można go używać rvm implodejako zwykłego użytkownika lub rvmsudo rvm implodedo instalacji całego systemu, skrypt ten jest użyteczny, ponieważ całkowicie wykracza poza RVM i czyści RVM bez korzystania z samego RVM, nie pozostawiając żadnych śladów.
#!/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."
Korzystam z systemu Ubuntu 19.04 i postępowałem zgodnie ze wszystkimi powyższymi instrukcjami, a następnie kilkoma. Wreszcie działało dla mnie bieganie
sudo apt autoremove rvm
a teraz, gdy próbuję ponownie zainstalować RVM, właściwie go nie ma. RVM jest co najmniej inwazyjne.
Istnieje wiele prób wyjaśnienia, w jaki sposób zainstalować RVM w Internecie, a większość z nich jest bardzo nieaktualna i zupełnie błędna, ponieważ aplikacja znacznie się rozwinęła od czasu jej wydania. Witryna RVM jest ostatecznym źródłem informacji na temat instalowania, usuwania lub korzystania z niej. Istnieje wiele stron, ponieważ jest to elastyczne narzędzie, ale jeśli wykonasz podstawową instalację, okaże się, że nie jest to wcale inwazyjne i dość łatwe w zarządzaniu lub usuwaniu.
Tin Man
-1
Próbowałem powyższych poleceń, aby usunąć RVM z macOS, ale jakoś nadal pojawiał się na ścieżce.
Musi być gdzieś zainicjowany; grepdla tych zmiennych w twoim katalogu domowym i szanse są dobre, dowiesz się gdzie. Mogą być w instalacji dla wielu użytkowników /env/bash_profile.
Tin Man
Użyłem grep. Zapomniałem wspomnieć. Przeprosiny.
Sumi
Możesz edytować swoją odpowiedź i poprawiać ją, aby dokładniej pokazać, co zrobiłeś. Pamiętaj, że SO nie dotyczy natychmiastowego rozwiązania dla OP, ale dotyczy długoterminowych odpowiedzi dla innych, którzy szukają rozwiązań w przyszłości. Ludzie zapominają, że nie jest to witryna typu „chwycić za punkt”, chodzi o wprowadzenie pozytywnych zmian w kodzie programisty.
rvm
- może to być jego „natrętność” - alerbenv
jest to warta alternatywa. Nadal możesz zarządzać wieloma wersjami Ruby w systemie, ale nie zastępuje poleceń powłoki, nie zarządza zestawami gemów ( Bundler jest więcej niż wystarczający) i nie musi być ładowany do powłoki.Odpowiedzi:
Jest wbudowane proste polecenie, które je wyciągnie:
Spowoduje to usunięcie
rvm/
katalogu i wszystkich wbudowanych w nim rubinów. Aby usunąć ostatni ślad rvm, musisz również usunąć klejnot rvm:Jeśli wprowadziłeś modyfikacje,
PATH
możesz je również wyciągnąć. Sprawdzić.bashrc
,.profile
i.bash_profile
plików, między innymi.Możesz także mieć
/etc/rvmrc
plik lub jeden z katalogu domowego,~/.rvmrc
który również może wymagać usunięcia.źródło
bash
zachowują się rzeczy, gdy wyciągasz pliki wykonywalne zPATH
.~/.zshrc
Jeśli inne odpowiedzi nie usuwają RVM w sposób wystarczający dla Ciebie, strona Rozwiązywanie problemów RVM zawiera tę sekcję:
źródło
Podczas używania
implode
zobaczysz:Następnie możesz użyć
--force
Następnie usuń RVM z następujących lokalizacji:
Sprawdź następujące pliki i usuń lub skomentuj odniesienia do RVM:
Skomentuj / usuń następujące linie z / etc / profile:
/ etc / profile jest plikiem tylko do odczytu, więc użyj:
A po dokonaniu zmiany napisz za pomocą huku!
Na koniec zaloguj się ponownie / uruchom ponownie terminal.
źródło
sudo
początkowo, więc żaden z jego plików nie będzie w ścieżkach/etc
lub/usr
. Tylko wtedy, gdy został zainstalowany przy użyciu wielu użytkowników lub zsudo
, zobaczysz to, a ich istnienie jest mocną wskazówką, że dokumentacja instalacyjna RVM NIE była przestrzegana, aby zainstalować ją w pierwszej kolejności.Oprócz odpowiedzi @ tadmana usunąłem opakowania
/usr/local/bin
i plik/etc/profile.d/rvm
.Opakowania obejmują:
źródło
/usr/local/bin
nie jest/user/local/bin
.Wiele osób często popełnia błąd, myśląc, że robi to „implode rvm”. Musisz usunąć wszystkie ślady plików .rm. Ponadto zajmie to ręczne usunięcie z katalogu głównego. Upewnij się, że zostanie usunięty, a także wszystkie zainstalowane w nim wersje Ruby.
źródło
Usuń skrypt ładujący RVM z /.bash_rc lub /.zsh_rc, a następnie użyj:
Lub:
źródło
rm -rf /.rvm
czyrm -rf ~/.rvm
?Biegać:
Teraz musisz odinstalować klejnot RVM, używając:
Sprawdź, czy w twoim katalogu domowym są jakieś pliki RVM, jeśli tak, usuń je.
Przejdź do katalogu domowego i wyświetl wszystkie ukryte pliki:
źródło
gem uninstall rvm
zawiedzie.Pamiętaj, że jeśli zainstalowałeś RVM przez apt-get, musisz wykonać kilka dalszych kroków
rvm implode
lubapt-get remove ruby-rvm
, aby naprawdę odinstalować.Zobacz „ Instalowanie RVM na Ubuntu ”.
źródło
Jeśli nadal
env: ruby_executable_hooks: No such file or directory
dzwonisz po pakiet Ruby, oznacza to, że RVM zostawił ci mały prezent$PATH
.Uruchom następujące polecenie, aby znaleźć szkodliwe skrypty:
Następnie
rm
wszystkie mecze. Oczywiście będziesz musiał ponownie zainstalować wszystkie te biblioteki z RVM-freegem
.źródło
Dla innych początkujących użytkowników powłoki próbujących naprawić zmienną PATH
Po wykonaniu instrukcji z zaakceptowanej odpowiedzi sprawdź i zmodyfikuj zmienną PATH, jeśli to konieczne:
jeśli widzisz gdziekolwiek „rvm”, musisz dowiedzieć się, gdzie ustawiasz ŚCIEŻKĘ i zmodyfikować. Ustawiałem go w 3 plikach - sprawdź więc wszystkie następujące pliki:
Usuń linie w pliku odwołujące się do rvm za pomocą polecenia dd. : wq, aby zapisać i wyjść.
source .bashrc
„przeładować”Powtórz ten proces (zaczynając od komendy vim) dla .profile i .bash_profile
źródło
Dokumentacja dotycząca rozwiązywania problemów według RVM „ Jak całkowicie usunąć wszystkie ślady RVM z mojego systemu, w tym w przypadku instalacji w całym systemie? ”:
źródło
Korzystam z systemu Ubuntu 19.04 i postępowałem zgodnie ze wszystkimi powyższymi instrukcjami, a następnie kilkoma. Wreszcie działało dla mnie bieganie
a teraz, gdy próbuję ponownie zainstalować RVM, właściwie go nie ma. RVM jest co najmniej inwazyjne.
źródło
Próbowałem powyższych poleceń, aby usunąć RVM z macOS, ale jakoś nadal pojawiał się na ścieżce.
Oto co zrobiłem, co zadziałało:
Dodaj do swojego profilu bash:
Następnie w biegu terminalowym:
źródło
grep
dla tych zmiennych w twoim katalogu domowym i szanse są dobre, dowiesz się gdzie. Mogą być w instalacji dla wielu użytkowników/env/bash_profile
.