如何在没有root访问权限的情况下安装rvm?

Jas*_*oss 15 ruby installation rvm

我想travis在没有红宝石宝石的机器上安装宝石,而我没有root.(我想加密与travis一起使用的东西.)我决定尝试安装rvm,因为https://rvm.io/rvm/install表明这是一种在没有root的情况下安装ruby的简单方法.但是,我马上就遇到了问题:

jgross@cagnode17:~$ \curl -L https://get.rvm.io | bash -s stable --ruby
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 13961  100 13961    0     0  15390      0 --:--:-- --:--:-- --:--:--  170k
Please read and follow further instructions.
Press ENTER to continue.
Downloading RVM from wayneeseguin branch stable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1083k  100 1083k    0     0   200k      0  0:00:05  0:00:05 --:--:--  199k

Installing RVM to /afs/csail.mit.edu/u/j/jgross/.rvm/
    RVM PATH line found in /afs/csail.mit.edu/u/j/jgross/.bashrc /afs/csail.mit.edu/u/j/jgross/.zshrc.
    RVM sourcing line found in /afs/csail.mit.edu/u/j/jgross/.bash_profile /afs/csail.mit.edu/u/j/jgross/.zprofile.
Installation of RVM in /afs/csail.mit.edu/u/j/jgross/.rvm/ is almost complete:

  * To start using RVM you need to run `source /afs/csail.mit.edu/u/j/jgross/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.

# Jason Gross,
#
#   Thank you for using RVM!
#   I sincerely hope that RVM helps to make your life easier and more enjoyable!!!
#
# ~Wayne

# In case of problems:
#      run and read: rvm notes
#         read docs: http://rvm.io/
#        talk to us: http://webchat.freenode.net/?channels=rvm (http://freenode.net/faq.shtml#plusr)
#   read cheatsheet: http://cheat.errtheblog.com/s/rvm
#  watch screencast: http://screencasts.org/episodes/how-to-use-rvm
# open a bug report: https://github.com/wayneeseguin/rvm/issues

rvm 1.22.2 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

Searching for binary rubies, this might take some time.
Checking requirements for debian.
Installing requirements for debian.
jgross password required for 'apt-get --quiet --yes update': 
Sorry, try again.
jgross password required for 'apt-get --quiet --yes update': 
Sorry, try again.
jgross password required for 'apt-get --quiet --yes update': 
Sorry, try again.
sudo: 3 incorrect password attempts
Requirements installation failed with status: 1.
Run Code Online (Sandbox Code Playgroud)

所以我又试了一次:

jgross@cagnode17:~$ \curl -L https://get.rvm.io | bash -s stable --ruby
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 13961  100 13961    0     0  27936      0 --:--:-- --:--:-- --:--:-- 27936
Please read and follow further instructions.
Press ENTER to continue.
Downloading RVM from wayneeseguin branch stable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1083k  100 1083k    0     0   158k      0  0:00:06  0:00:06 --:--:--  186k

Upgrading the RVM installation in /afs/csail.mit.edu/u/j/jgross/.rvm/
    RVM PATH line found in /afs/csail.mit.edu/u/j/jgross/.bashrc /afs/csail.mit.edu/u/j/jgross/.zshrc.
    RVM sourcing line found in /afs/csail.mit.edu/u/j/jgross/.bash_profile /afs/csail.mit.edu/u/j/jgross/.zprofile.
Upgrade of RVM in /afs/csail.mit.edu/u/j/jgross/.rvm/ is complete.

# Jason Gross,
#
#   Thank you for using RVM!
#   I sincerely hope that RVM helps to make your life easier and more enjoyable!!!
#
# ~Wayne

# In case of problems:
#      run and read: rvm notes
#         read docs: http://rvm.io/
#        talk to us: http://webchat.freenode.net/?channels=rvm (http://freenode.net/faq.shtml#plusr)
#   read cheatsheet: http://cheat.errtheblog.com/s/rvm
#  watch screencast: http://screencasts.org/episodes/how-to-use-rvm
# open a bug report: https://github.com/wayneeseguin/rvm/issues

Upgrade Notes:

  * No new notes to display.


rvm 1.22.2 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

Searching for binary rubies, this might take some time.
Checking requirements for debian.
Installing requirements for debian.
jgross password required for 'apt-get --quiet --yes update': 
Sorry, try again.
jgross password required for 'apt-get --quiet --yes update': 
sudo: 1 incorrect password attempt
Requirements installation failed with status: 1.
ruby-2.0.0-p247 is not installed.
Creating alias default for ruby-2.0.0-p247.
Recording alias default for ruby-2.0.0-p247.
Creating default links/files
ruby-2.0.0-p247 is not installed.
Could not load ruby ruby-2.0.0-p247.
/afs/csail.mit.edu/u/j/jgross/.rvm/scripts/alias: line 108: /afs/csail.mit.edu/u/j/jgross/.rvm/rubies/ruby-2.0.0-p247/bin/ruby: No such file or directory

  * To start using RVM you need to run `source /afs/csail.mit.edu/u/j/jgross/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.
Run Code Online (Sandbox Code Playgroud)

尝试rvm install 1.8给出了关于debian要求的相同错误消息.除了放弃rvm和从源代码构建ruby之外,我还有其他选择吗?

Tod*_*obs 20

TL; DR

您缺少构建Ruby所需的包依赖项.

包和Autolib

您面临的问题是最近的(ish)版本的RVM使用名为autolibs的功能来尝试安装包依赖项.当然,您需要sudo访问权限才能安装系统软件包.你可以尝试安装一个Ruby解释器:

  • --autolibs=read-only- 避免sudo错误,但这不太可能导致二进制工作.
  • --autolibs=rvm_pkg- rvm pkg install ...如果可以由RVM提供,将使用旧版本来安装缺少的依赖项,这将花费很长时间并且不能保证工作.
  • --autolibs=read-fail- 为了避免sudo错误,它将生成要为下一节安装的依赖项列表.

请求Root安装包依赖项

通常,最简单的解决方案是让root用户安装 RVM期望的软件包.在做其他任何事情之前,这应该是你的第一站.可能有合理的理由使用静态二进制文件或手工构建所有依赖项,但如果可以的话,为什么不以简单的方式做事情呢?

尝试预制的静态二进制文件

如果无法安装必要的软件包,可以尝试使用该rvm list remote命令查看是否有可供RVM安装的系统的预构建二进制文件.如果您缺少软件包,那么您可能希望查找可以与rvm mount命令一起使用的静态二进制文件.您甚至可以在另一个系统上构建解释器,并使用适当的远程URL挂载它; 看rvm help mount详情.