我已经安装了ruby 1.9.3p0
,执行命令时ruby -v
会显示已安装的版本1.9.3p0
。当我尝试通过命令删除它时,sudo apt-get remove ruby1.9.3p0
它显示package not found so not removed
。我该怎么办?
答案1
软件包名称为 ruby1.9.1,但软件版本为 1.9.3,因此运行以下命令将其删除:
sudo apt-get remove ruby1.9.1 libruby1.9.1
答案2
您确定在运行 ruby 时运行的是系统 ruby 而不是 rvm 或 rbenv ruby 吗?
$ which ruby
/home/jrwren/.rvm/rubies/ruby-1.9.2-p0/bin/ruby
/usr/bin/ruby 使用替代方案 - 你可以通过 man update-alternatives 了解更多信息
$ ls -l /usr/bin/ruby
lrwxrwxrwx 1 root root 22 Oct 11 2011 /usr/bin/ruby -> /etc/alternatives/ruby
$ ls -l /etc/alternatives/ruby
lrwxrwxrwx 1 root root 18 Oct 12 16:57 /etc/alternatives/ruby -> /usr/bin/ruby1.9.1
因此,ruby 最终是指向 /usr/bin/ruby1.9.1 的符号链接。您可以使用 -S 询问 dpkg 此文件属于哪个包
$ dpkg -S /usr/bin/ruby1.9.1
ruby1.9.1: /usr/bin/ruby1.9.1
并删除该包
$ sudo apt-get remove ruby1.9.1
此时,替代系统将启动,并将 /usr/bin/ruby 符号链接到您系统上的另一个 ruby 版本(如果已安装)。我找到了 ruby 1.8。如果要删除该版本,请重复此过程。
答案3
只需简单尝试sudo apt-get remove ruby
,或者在按下之前输入并按sudo apt-get remove ruby
多次,看看您可以删除有关 ruby 的哪些内容。Enter
Tab
答案4
尝试这个,
sudo apt-get --purge remove ruby1.9.3p0
它还将删除所有依赖包。