【问题标题】:Why am I getting a permission denied error when creating a new .rvmrc file?为什么在创建新的 .rvmrc 文件时出现权限被拒绝错误?
【发布时间】:2012-02-19 17:49:36
【问题描述】:

我正在运行 Ubuntu 11.10 并使用列出的标准说明安装了 rvm here - 这包括使用 rvm 安装 ruby​​ 1.9.3。完成后,我运行 rvm use 1.9.3,然后创建了一个名为 rails321 的 gemset,将 rvm 设置为使用 1.9.3 并将 gem install rails 设置为该 gemset。最后,我尝试使用以下目录在目录中创建 .rvmrc 文件,但出现权限被拒绝错误:

我在这个环境中是个新手,所以我希望得到一些帮助。谢谢:)

【问题讨论】:

  • 您能否分享该目录中ls -l 的输出(以及项目目录的ls -l)?您可以删除项目目录中与简单文件夹无关的任何结果。
  • 我的假设是“简单”应用程序是由另一个用户创建的(例如,root 用户,或以完整的现有权限解压),因此您的用户可能没有写入该目录的权限。
  • Brian...这很奇怪,但我在同一个会话中创建了目录sudo mkdir simple...然后我更改了它并且我没有访问权限。您可以在下面的评论中看到,通过chmodding 目录,我能够让它工作,但对我来说似乎很奇怪。
  • 是的,这就是问题所在,以这种方式使用 sudo 会使目录归根目录所有。试试sudo chown -R tom ~/projects/simple
  • 哦...我明白了-谢谢,在下面又问了这个问题...但是您刚刚在这里回答了:)

标签: ruby rvm


【解决方案1】:

您可能缺乏~/projects/simple 的写入权限。使用ls -dal . .rvmrc检查目录和文件的所有者和权限位,以防它已经存在。

【讨论】:

  • 我没想过要在目录上运行sudo chmod 777 simple 以获得权​​限,但当然在这样做之后,我能够运行上面的 .rvmrc 命令并创建了 .rvmrc 文件。不知道为什么我的用户的开箱即用权限受到如此限制。谢谢你的帮助:)
  • 这是您的问题:该文件夹归根用户所有,而不是您的。您不应该使用 chmod 而是使用 chown 来使自己成为文件夹的所有者。
  • 小心这一点,您将面临潜在的安全问题。在您的本地系统上,这可能没问题 - 但是,您需要在生产中更加谨慎。就我个人而言,我更喜欢您 chown -R 到您的用户帐户。 chmod 750 之后如果它仍然不起作用。 777 只是自找麻烦(意味着系统上的任何人都可以使用您的代码为所欲为。
  • sudo(没有特定用户的任何限定符)将以 root 身份运行命令。
  • 我认为熟悉 linux 基础知识是个好主意。
猜你喜欢
  • 1970-01-01
  • 2013-07-07
  • 1970-01-01
  • 2020-10-21
  • 1970-01-01
  • 2020-02-12
  • 2021-02-17
  • 1970-01-01
相关资源
最近更新 更多