我在~/.rubies
下ruby-install安装了许多红宝石:
ls .rubies
ruby-1.9.3-p545 ruby-2.0.0-p598 ruby-2.1.3 ruby-2.1.5
ruby-2.0.0-p451 ruby-2.1.2 ruby-2.1.4 ruby-2.2.0
我想卸载ruby-install安装的ruby之一,我该怎么办?
答案 0 :(得分:13)
不幸的是ruby-install
只是下载并编译了Ruby,而没有删除它的选项,与RVM
或rbenv
不同。
因此,您可能需要在此处运行一些手动命令来删除所有已安装的文件。
通常ruby-install
会在~/.rubies/
文件夹中安装红宝石。
如果您不确定使用ruby-install
安装了哪个ruby,请找到文件.installed.list
,因为它在Ruby安装期间包含已安装文件的列表。如果您想快速找到它,只需运行locate .installed.list
,您就可以获得它们的简短列表。
然后在要删除的版本的文件上运行cat
,以确保哪个是您要删除的ruby安装的根文件夹。
然后您可以删除目标版本所在的文件夹。
如果您要删除ruby-1.9.3-p545
,请运行:
rm -Rf ~/.rubies/ruby-1.9.3-p545
答案 1 :(得分:1)
如果您安装了软件包2.3x(+)并且需要将其卸载,则根目录中会有一个卸载可执行文件。转到C:/并且你会在那里看到ruby文件夹,里面会有unin.exe。这一切都取决于您选择安装它的位置。
答案 2 :(得分:0)
你只需删除红宝石所在的位置。
例如,卸载由ruby-install安装的ruby(默认安装位置为~/.rubies
):
rm ~/.rubies/ruby-2.2.0
如果在删除Ruby 2.2.0-preview2后出现此类错误并安装了Ruby 2.2.0-p0,例如:
$ bundle -v
zsh: /Users/Juan/.gem/ruby/2.2.0/bin/bundle: bad interpreter:
/Users/Juan/.rubies/ruby-2.2.0-preview2/bin/ruby: no such file or directory
你需要运行
gem pristin --only-executables
因为每当ruby更新或者移动/命名时,由于RubyGems为所有gem可执行文件生成显式#!/path/to/ruby
,因此需要使用ruby可执行文件的新路径重新生成gem bin存根。
答案 3 :(得分:0)
如果您通过dpkg或yum安装soft,何时卸载它,您还应该使用dpkg或yum来清除它。
例如,我们想要unintall fcitx,
sudo apt-get purge -y fcitx
否则,手动进行软安装,使用配置&&制造&& make install,只需删除卸载时安装的目录。
为你举例。只是
rm -rf~ / .rubies / ruby-2.2.0
如果您怀疑目标ruby是否清除,只需使用find命令进行确认。
找〜/ -name“ ruby-2.2.0 ”
答案 4 :(得分:0)
我的lubuntu虚拟机出现了同样的问题!我从登录界面进入shell(按CNTR + ALT + F3
)并检查ruby和gem的版本:
ruby -v
gem -v
然后按照chad的建议运行sudo apt-get purge -y ruby
。它成功地去除了红宝石和宝石。
然后我重新启动:
reboot
我能够再次正常登录!
答案 5 :(得分:0)
根据feature request中的响应,删除旧版本的红宝石的最佳方法是返回到src
目录并运行make uninstall
或rake uninstall
。默认情况下,ruby-install
在安装过程中将$HOME/src/ruby-$version
用于未包装的红宝石版本源。
例如,删除ruby版本2.6.3:
cd $HOME/src/ruby-2.6.3/ && make uninstall
不幸的是,即使此错误/请求已于2016年打开,但ruby-install
仍未实现此功能。
如果您使用默认位置安装了ruby版本,则应该安全地删除$HOME/.rubies/
中的特定子文件夹。
rm -rf $HOME/.rubies/ruby-2.6.3
值得注意的是,可能有必要手动删除随该红宝石版本安装的所有宝石。
例如
rm -rf $HOME/.gem/ruby/ruby-2.6.3