2

我刚刚在一个全新的 Ubuntu 10.04 服务器上安装了 Ruby 企业版。我去安装我的第一个 gem,遇到了一个我以前从未见过的奇怪问题。

没有 sudoing,如果我只输入“gem”,我就会得到关于 gem 的简介。我可以切换到 root 并执行gem install gemname或提供 gem exe 的完整路径,但如果我这样做了,sudo gem install gemname我会收到一个奇怪的错误sudo: gem: command not found

如果我不gem install gemname使用 sudo,它会告诉我我无权更改 gem 文件夹(这很公平)。基本上,当我 sudo 时,似乎发生了一些有趣的事情。

我已将 Ruby bin 路径添加到 .bashrc 文件中的 PATH 变量中,如下所示:

export PATH=/opt/ruby-enterprise-1.8.7-2011.01/bin:$PATH

然后用 .bashrc 重新加载source。任何想法,任何人?

4

3 回答 3

0

尝试这个:

gem install sqlite3-ruby
于 2011-06-15T11:55:32.283 回答
0

尝试sudo -s然后gem install gemname

Long Answer .bashrc 文件只影响你所在的 bash shell,sudo 不知道,因为 sudo 不直接查看你的 .bashrc。你可以用sudo -s它来解决这个问题。您还可以sudo -E在运行 sudo 命令时尝试保留环境。

使用 /etc/profile 来更改 PATH 而不是 .bashrc 也可以。

于 2011-02-14T01:06:37.240 回答
0

如果您使用的是 RVM,请使用rvmsudo gem install gemname.

于 2012-03-29T21:11:30.500 回答