Yas*_*sai 19 ruby-on-rails rvm
根据我之前的帖子:Ruby安装的RVM无法正常工作?我使用root用户安装RVM的地方,然后我必须完全删除RVM安装,现在我作为用户安装.
所以我做了 :
现在,我得到错误:mkdir:无法创建目录`/ usr/local/rvm':权限被拒绝
我创建的新用户无权访问此目录.我手动尝试创建文件夹,但同样的错误.请帮忙.
编辑:原始问题发生,因为我没有重新启动终端,它仍然使用旧设置.
现在,我遇到了一个新问题:安装RVM后,我无法运行它并且它给我一个错误:找不到rvm命令.
这是我的〜/ .bash_profile的输出
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session.
Run Code Online (Sandbox Code Playgroud)
这是〜/ .bashrc文件的输出
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session.
Run Code Online (Sandbox Code Playgroud)
小智 68
mkdir:无法创建目录`/ usr/local/rvm':权限被拒绝
如果您以前以root身份运行rvm安装程序,请删除/ usr/local/rvm和/ etc/rvmrc.
the*_*Man 18
RVM易于安装,但是通过尝试混合和匹配安装类型会使您变得更加困难.您不需要创建新用户.运行时,RVM将在您的主目录中创建一个目录:~/.rvm,并在其中安装所有内容.这意味着您将拥有所有正确的权限.您不需要以root身份运行,也不需要使用sudo.我建议关闭所有命令行并打开一个新的命令行并从主目录开始.如果以root用户身份运行,请注销,然后重新登录普通帐户.对于单用户安装,您不需要是root用户.
对于使用RVM作为其Ruby沙箱的单个用户,请使用单用户安装文档.按照该页面上的所有说明进行操作,包括 "安装后"部分.
关闭终端窗口,然后重新打开它.如果您已按照上面的说明正确操作,rvm info那么在安装Ruby实例后,键入应该吐出一个模板.如果您没有看到任何输出或出现错误,请在"安装后"部分中回溯您的步骤,然后完成"故障排除"部分.人们出现的大多数问题都是因为他们没有费心去阅读指示.
安装RVM后,键入rvm notes并读取需要安装的依赖项.如果您不添加这些文件,则安装的Rubies将缺少功能.它们会起作用,但是你会听到的一些生物舒适功能不起作用,你会想知道为什么.
安装依赖项后,您应该处于良好状态以安装Rubies.rvm list knownRVM可以安装的所有Rubies的类型.如果你想要1.8.7类型rvm install 1.8.7,并且类似地,rvm install 1.9.2对于Ruby 1.9.2.如果您需要特定修订,可以根据列表中的修订添加该修订.
使用定期更新RVM非常重要rvm get head.这将添加功能,修复错误,并告诉RVM它可以安装的新版本的Ruby,如果您请求.
安装Ruby后,键入rvm list它应该显示在列表中,看起来像这样:
rvm rubies ruby-1.8.7-p334 [ x86_64 ] ruby-1.9.2-p180 [ x86_64 ]
键入rvm use 1.9.2 --default以设置在登录之间粘滞的默认Ruby.如果1.9.2没有漂浮您的船,请使用您想要默认的任何Ruby的版本.一旦定义了默认值,它应该类似于:
rvm rubies ruby-1.8.7-p334 [ x86_64 ] => ruby-1.9.2-p180 [ x86_64 ]
在开始将Gems安装到RVM管理的Ruby之前,请阅读"RVM和RubyGems",特别是"不要使用sudo ..."的部分.我重复.尽管某些博客或网页上写道,但不要使用sudo来安装任何宝石.在使用RVM控制的Rubies时,RVM的作者更清楚.这是人们使用RVM的另一个错误,再次是由于没有阅读指示.
在Mac OS上,您需要为您的操作系统提供最新版本的XCode.请勿在DVD上使用Snow Leopard附带的XCode.它是马车.从Apple的开发者网站下载并安装新版本.这是免费下载,需要免费注册.这是一个大文件,大约8GB,所以你想要启动它并走开.安装XCode,您应该已准备好让RVM安装Rubies.
最后,RVM很容易安装,你要求它安装的Rubies也是如此.我在Mac OS,Ubuntu和CentOS上大约有四五台不同的机器和虚拟机.安装它需要大约一分钟,配置它并开始安装新的Ruby需要一分钟.它真的很容易.
我在这个问题中报告了原始问题," mkdir:在尝试安装rvm时无法创建目录`/ usr/local/rvm':Permission denied ".
这是我的场景以及我是如何解决的 - 也许这会帮助其他人解决同样的问题.
我在笔记本电脑上安装了Ubuntu 11.04,我只有1个用户,我在安装时创建的用户名为nathan.当我尝试将rvm安装为nathan时,rvm安装程序将我视为root并继续尝试全局安装rvm,但由于我不是root用户,因此无法访问/ usr/local/rvm中创建目录.
我不是Ubuntu的专家,所以我确信有更容易/更好的方法来完成我所做的事情(我很想了解它们),但这对我有用:
我以rubydev身份登录,打开终端并输入:
rubydev~$ bash < <(curl -B http://rvm.beginrescueend.com/install/rvm)
Run Code Online (Sandbox Code Playgroud)rvm安装正确,我退出rubydev
成功获得root后,我输入以下命令:
root: /home/nathan# cp -R /home/rubydev/.rvm .
root: /home/nathan# chown -R nathan .rvm
root: /home/nathan# chgrp -R nathan .rvm
root: /home/nathan# exit
nathan~$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
nathan~$ echo 'export rvm_path="/home/nathan/.rvm"' > ~/.rvmrc
nathan~$ source .bash_profile
Run Code Online (Sandbox Code Playgroud)此时,rvm已正确安装在我的主目录下.要验证我键入:
nathan~$ type rvm | head -1
rvm is a function (if you don't get this response, something else is wrong)
Run Code Online (Sandbox Code Playgroud)阅读说明并安装任何依赖项
nathan~$ rvm notes
Run Code Online (Sandbox Code Playgroud)我安装了一些红宝石
nathan~$ rvm install 1.8.7-head
nathan~$ rvm install 1.9.2-head
Run Code Online (Sandbox Code Playgroud)已验证安装
nathan~$ rvm list
rvm rubies
ruby-1.8.7-head [x86_64]
ruby-1.9.2-head [x86_64]
nathan~$ rvm use 1.9.2
using /home/nathan/.rvm/gems/ruby-1.9.2-head
nathan~$ rvm list
rvm rubies
ruby-1.8.7-head [x86_x64]
=> ruby-1.9.2-head [x86_x64]
Run Code Online (Sandbox Code Playgroud)最后,我编辑了终端本身的首选项,以确保选中"标题和命令"选项卡下的"运行命令和登录shell".似乎.bash_profile没有以其他方式处理.
我删除了在步骤1中创建的rubydev用户.
有了这些,我使用我的首选用户名在Ubuntu 11.04下有一个工作rvm.
如果您首先以root用户身份安装RVM,然后将其卸载.现在您尝试将其安装为非sudo用户,并且您收到以下错误:
mkdir: cannot create directory `/usr/local/rvm': Permission denied
Run Code Online (Sandbox Code Playgroud)
在尝试在用户下安装之前,请确保已注销根会话.
| 归档时间: |
|
| 查看次数: |
44842 次 |
| 最近记录: |