我正在设置服务器,它是Ubuntu 12.04
首先我安装了RVM多用户:
me@ubuntu$ curl -L https://get.rvm.io | sudo bash -s stable
后,正如安装建议的那样,我将自己添加到 RVM 组
usermod -a -G me rvm
已安装的红宝石 rvm insall 1.9.3 --default
然后我尝试安装系统范围的宝石乘客,我得到这个:
me@ubuntu:~$ rvmsudo gem install passenger
sudo: gem: command not found
事实上,任何使用 rvmsudo
运行的命令都只是说sudo : {command}: not found
我需要在系统范围内安装 gem,因为它是生产服务器设置,安装passenger-install-nginx-module
也需要 root 权限,因为它安装 int 到 /opt/nginx/
有什么想法吗?
也许这个错误会影响你。
与其等待固定版本,不如安装旧版本的 rvm:
curl -L https://get.rvm.io | sudo bash -s -- --version 1.16.20
有关详细信息,请参阅 https://rvm.io/rvm/install/。
编辑:此问题现已解决。 rvmsudo
正在为我工作(Ubuntu 12.04)。
我今天也遇到了同样的问题,我没有等待修复或安装旧版本的 rvm,而是将我的 rvmsudo 文件修补回 1.16.x,而不管 rvm 的其余部分。
首先仔细检查 rvmsudo 在系统上的位置:
> which rvmsudo
/usr/local/rvm/bin/rvmsudo
然后将其替换为 1.16.x 中的版本
curl https://raw.github.com/wayneeseguin/rvm/eef67d80409ee3291de83ec4f070bed5aaca6d41/binscripts/rvmsudo > /path/to/rvmsudo
注意:我实际上尝试首先更新到最新版本的 rvm,因为在 rvm 的 github 帐户中@trobter链接到上面的问题被标记为已修复,但修复并不能完全解决问题,因此我通过他们的 github 帐户搜索了 1.16.x 中的 rvmsudo 版本,这确实有效。
这可能是因为您没有将自己添加到 rvm 组中。你说:
usermod -a -G me rvm
它应该是:
usermod -a -G rvm me
此外,我需要在.bashrc
末尾添加以下行:
[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm" # This loads RVM into a shell session.
之后,只需再次登录您的外壳即可。
为 rvmsudo 提供 gem 命令的完整路径?