如何安装RVM系统需求,而无需为RVM用户提供sudo访问权限

在我的Debian服务器上,有一个名为“部署者”的用户没有sudo访问权限,并安装了RVM。

使用“部署者”(如1.9.3)安装Ruby时,会触发安装依赖项的任务

 "Installing requirements for debian, might require sudo password." 

失败并停止安装,因为“部署者”不能sudo。

我不想将“部署者”添加到sudoers列表中,也不想为其他用户安装RVM,只是一次性安装依赖项。

什么是安装该依赖关系的正确方法? 或者我如何列出他们手动安装?

4 Solutions collect form web for “如何安装RVM系统需求,而无需为RVM用户提供sudo访问权限”

这确实是RVM的一个新function,称为autolibs ,它会自动安装依赖关系。

如果您已经安装了RVM,并且要求您提供sudo密码,则可以禁用autolibs:

 $ rvm autolibs disable $ rvm requirements # manually install these $ rvm install ruby 

否则,您可以使用以下命令安装不带自动更新的RVM:

 $ \curl -L https://get.rvm.io | bash -s -- --autolibs=read-fail 

我明白动机,但觉得很烦人。 我不想把我的sudo密码放到RVM中,也不是为了捆绑! 请社区,停止这样做。

我更喜欢这个

 $ rvm autolibs fail $ rvm install ruby Searching for binary rubies, this might take some time. Found remote file https://rubies.travis-ci.org/ubuntu/12.04/x86_64/ruby-2.1.1.tar.bz2 Checking requirements for ubuntu. Missing required packages: gawk g++ gcc make libreadline6-dev zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 autoconf libgdbm-dev libncurses5-dev automake libtool bison pkg-config libffi-dev RVM autolibs is now configured with mode '2' => 'check and stop if missing', please run `rvm autolibs enable` to let RVM do its job or run and read `rvm autolibs [help]` or visit https://rvm.io/rvm/autolibs for more information. Requirements installation failed with status: 1. 

那么我可以重新login并运行

 # apt-get install gawk g++ gcc make libreadline6-dev zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 autoconf libgdbm-dev libncurses5-dev automake libtool bison pkg-config libffi-dev 

接受的答案无法将Ruby安装到.rvm/bin/ruby 。 shell脚本以.rvm/wrappers/ruby-2.0.0-p247/ruby ,如果您的构build脚本依赖于这个位置,并且版本号随着时间的推移而变化,那么这是一个痛苦。

这是一个更简单的解决scheme,为我工作:

 \curl -L https://get.rvm.io | bash -s -- --ignore-dotfiles --autolibs=0 --ruby 

.rvm/bin/ruby按预期创build。

资料来源 : http : //blog.sunild.com/2013/07/install-ruby-with-rvm-on-mac-os-108.html

这个问题是在最新的RVM版本中引入的。 不知道到底什么时候,但肯定在过去的3-4个月。

尝试这个:

 rvm get 1.18.8 rvm install <whichever-version-you-want> 

我不知道在1.18.8和1.20.12之间的path上是什么时候引入了这个问题,但是对于我来说,安装在RVM v1.18.8上运行,并且在v1.20.12上运行失败。

  • 在由sudo调用的bash脚本中识别用户
  • 在sudo下运行pip安装是否可以接受?
  • 运行“sudo pip”有什么风险?
  • 如何通过多个sudo和su命令find原始用户?
  • 如何在sudo中运行两个命令?
  • 使用sudo与密码作为参数
  • npm / yeoman安装generator-angular没有sudo
  • 如何解决'sudo:没有tty目前没有askpass程序指定'错误?
  • 如何从PHP调用需要SUDO的shell脚本?
  • vim如何“用sudo写作”技巧工作?
  • 如何给Linux用户sudo访问?