Jawaban:
Ada perintah sederhana bawaan yang akan menariknya:
rvm implode
Ini akan menghapus rvm/
direktori dan semua rubi yang ada di dalamnya. Untuk menghapus jejak terakhir dari rvm, Anda juga harus menghapus permata rvm:
gem uninstall rvm
Jika Anda telah membuat modifikasi pada Anda, PATH
Anda mungkin ingin menariknya juga. Periksa .bashrc
, .profile
dan .bash_profile
file Anda, antara lain.
Anda mungkin juga memiliki /etc/rvmrc
file, atau satu di direktori home Anda ~/.rvmrc
yang mungkin perlu dihapus juga.
bash
berperilaku ketika Anda menarik executable dari PATH
.
~/.zshrc
Jika jawaban lain tidak cukup menghapus RVM untuk Anda, halaman Pemecahan Masalah RVM berisi bagian ini:
Bagaimana cara saya membersihkan semua jejak RVM dari sistem saya, termasuk untuk pemasangan sistem yang luas?
Berikut ini skrip khusus yang kami beri nama
cleanout-rvm
. Meskipun Anda dapat menggunakanrvm implode
sebagai pengguna biasa ataurvmsudo rvm implode
untuk pemasangan sistem secara luas, skrip ini berguna karena langkahnya benar-benar di luar RVM dan membersihkan RVM tanpa menggunakan RVM itu sendiri, tanpa meninggalkan jejak.#!/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."
Saat menggunakan implode
dan Anda melihat:
Psychologist intervened, cancelling implosion, crisis avoided :)
Maka Anda mungkin ingin menggunakan --force
rvm implode --force
Kemudian hapus RVM dari lokasi berikut:
rm -rf /usr/local/rvm
sudo rm /etc/profile.d/rvm.sh
sudo rm /etc/rvmrc
sudo rm ~/.rvmrc
Periksa file berikut dan hapus atau komentar referensi ke RVM:
~/.bashrc
~/.bash_profile
~/.profile
~/.zshrc
~/.zlogin
Beri komentar / hapus baris berikut dari / etc / profile:
source /etc/profile.d/sm.sh
source /etc/profile.d/rvm.sh
/ etc / profile adalah file read-only jadi gunakan:
sudo vim /etc/profile
Dan setelah melakukan perubahan tulis menggunakan bang!
:w!
Terakhir login ulang / restart terminal Anda.
sudo
awalnya, jadi tidak ada file yang ada di jalur /etc
atau /usr
. Hanya ketika itu dipasang menggunakan multi-user atau dengan sudo
akan Anda lihat itu, dan keberadaan mereka adalah petunjuk yang kuat bahwa dokumentasi instalasi RVM itu tidak diikuti untuk menginstalnya di tempat pertama.
Banyak orang melakukan kesalahan umum dengan berpikir bahwa 'rvm implode' melakukannya. Anda perlu menghapus semua jejak file .rm. Juga, itu akan mengambil beberapa penghapusan manual dari root. Pastikan, itu terhapus dan juga semua versi ruby yang Anda instal menggunakannya.
Hapus skrip memuat RVM dari /.bash_rc atau /.zsh_rc, lalu gunakan:
rm -rf /.rvm
Atau:
rvm implode
rm -rf /.rvm
atau rm -rf ~/.rvm
?
Lari:
rvm implode
Sekarang Anda perlu menghapus permata RVM menggunakan:
gem uninstall rvm
Periksa apakah ada file RVM yang tersisa di direktori home Anda, jika ya hapuslah.
Buka direktori home dan daftarkan semua file tersembunyi:
ls -a
rm .rvm
rm .rvmrc
gem uninstall rvm
akan gagal.
Perhatikan bahwa jika Anda menginstal RVM melalui apt-get, Anda harus menjalankan beberapa langkah lebih lanjut daripada rvm implode
atau apt-get remove ruby-rvm
untuk benar-benar menghapus instalannya.
Lihat " Menginstal RVM di Ubuntu ".
Jika Anda masih mendapatkan env: ruby_executable_hooks: No such file or directory
ketika menelepon beberapa paket Ruby, itu berarti RVM meninggalkan sedikit hadiah untuk Anda di $PATH
.
Jalankan yang berikut ini untuk menemukan skrip yang menyinggung:
grep '#!/usr/bin/env ruby_executable_hooks' /usr/local/bin/*
Kemudian rm
semua pertandingan. Anda harus menginstal ulang semua perpustakaan itu dengan bebas RVM gem
, tentu saja.
Untuk pemula shell lainnya mencoba untuk memperbaiki variabel PATH
Setelah mengikuti instruksi dalam jawaban yang diterima, periksa dan modifikasi variabel PATH Anda jika perlu:
env | grep PATH
jika Anda melihat "rvm" di mana saja, Anda perlu mencari tahu di mana Anda mengatur PATH dan memodifikasi. Saya mengaturnya dalam 3 file - jadi periksa semua file berikut:
vim .bashrc
Hapus baris-baris dalam file referensi rvm menggunakan perintah dd. : wq untuk menyimpan dan keluar.
source .bashrc
untuk "memuat ulang"
Ulangi proses ini (dimulai dengan perintah vim) untuk .profile dan .bash_profile
Per dokumentasi pemecahan masalah RVM " Bagaimana cara saya membersihkan semua jejak RVM dari sistem saya, termasuk untuk pemasangan di seluruh sistem? ":
Berikut ini skrip khusus yang kami beri nama 'cleanout-rvm'. Meskipun Anda dapat menggunakan
rvm implode
sebagai pengguna biasa ataurvmsudo rvm implode
untuk pemasangan sistem secara luas, skrip ini berguna karena langkahnya benar-benar di luar RVM dan membersihkan RVM tanpa menggunakan RVM itu sendiri, tanpa meninggalkan jejak.#!/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."
Saya menjalankan Ubuntu 19.04 dan mengikuti semua instruksi di atas dan kemudian beberapa. Akhirnya, yang berhasil bagi saya adalah lari
sudo apt autoremove rvm
dan sekarang ketika saya mencoba dan menginstal ulang RVM itu benar-benar hilang. RVM bersifat invasif, untuk sedikitnya.
Saya mencoba perintah di atas untuk menghapus RVM dari macOS, tetapi entah bagaimana itu masih muncul di jalan.
Inilah yang saya lakukan, yang berhasil:
$ open ~/.bash_profile
Tambahkan ke profil bash Anda berikut ini:
unset GEM_PATH
unset MY_RUBY_HOME
unset GEM_HOME
Kemudian di terminal run:
$ source ~/.bash_profile
grep
untuk variabel-variabel tersebut di direktori home Anda dan peluangnya bagus Anda akan mengetahui di mana. Dalam instalasi multi-user mereka bisa di /env/bash_profile
.
rvm
- ini bisa menjadi 'keganjilannya' - tetapirbenv
merupakan alternatif yang bermanfaat. Anda masih dapat mengelola beberapa versi Ruby di sistem Anda, tetapi itu tidak mengesampingkan perintah shell, tidak mengelola permata ( Bundler lebih dari cukup), dan tidak perlu dimuat dalam shell.