【问题标题】:-bash: /Users/myname/.bash_profile: Permission denied-bash:/Users/myname/.bash_profile:权限被拒绝
【发布时间】:2014-06-23 14:31:15
【问题描述】:

我安装了 rvm(ruby 版本管理器)并且成功了,但是我得到了

警告:您有“~/.profile”文件,您可能需要加载它来做
将以下行添加到“/Users/myname/.bash_profile”:source
~/.profile

我是开发、终端和所有爵士乐的新手!但迟到总比没有好?!

我进入了终端:

'/Users/myname/.bash_profile'

并返回以下行

-bash: /Users/myname/.bash_profile: Permission denied
myname-MacBook-Pro:~ myname$

这就是我卡住的地方!我需要用于 Drupal(Omega 开发)的 vrm,并希望确保一切正常。感谢您的帮助。

【问题讨论】:

  • 你只需要按照它告诉你的(参考警告)。
  • 试试sudo gedit /Users/myname/.bash_profile
  • 您可能需要添加 RVM 标签。

标签: ruby bash terminal


【解决方案1】:

通过在终端中运行以下命令输入.bash_profile 文件:

vim ~/.bash_profile

如果您的权限仍然被拒绝,请在 vim 命令之前运行 sudo

sudo vim ~/.bash_profile

从那里,按insert 按钮。然后将文本 source ~/.profile 添加到 .bash_profile 并按 esc 然后点击键盘上的 :x 以保存并关闭文件。打开一个新的终端窗口应该可以消除错误。

【讨论】:

  • 您在描述如何使用vim(进入和离开插入模式)时遗漏了几个步骤。我喜欢vim,但期望对命令行不太熟悉的人使用它来编辑文件有点过分。
  • 谢谢,鲍比。不得不谷歌一下你的答案。因此,如果它对其他人有帮助:打开 bash_profile(在 vim 中)后,键入“i”(不带引号),您将在屏幕底部看到消息 -INSERT-。然后 - 输入你的行(source ~/.profile)并通过点击 esc 按钮保存它,然后输入 :w 最后输入。关闭并重新打开终端。这对我有用!!!
  • 感谢@Booby 和@Zel。我的情况有点不同,我的 .bash_profile 是只读的,当我点击“:wq”时,它显示错误:“只读,添加!覆盖”(我不记得确切)。所以我添加了“:wq!”,然后我的文件变得可编辑,并且不再显示错误。
【解决方案2】:

输入文件名将尝试执行它。相反,您想对其进行编辑。

打开 TextEdit(或您喜欢的编辑器)并在其中打开文件 /Users/myname/.bash_profile

您可以完全通过 UI 完成此操作,但如果需要,您可以从终端启动编辑器:

open -a TextEdit /Users/myname/.bash_profile

然后您可以将source ~/.profile 行添加到文件中并保存。

关闭终端并再次打开以应用更改。

【讨论】:

  • 谢谢。我听从了您的建议,但收到警告“您不拥有“.bash_profile”文件,也没有写入权限。”我在 open 前用 sudo 尝试了同样的事情(我知道这没有意义,但是......),但又没有乐趣了。
  • 谢谢! @that_other_guy - 发现你的答案最有帮助
【解决方案3】:

接下来您必须重新登录。如果添加 .profile

export PATH+=:$HOME/bin

没有 .bash_profile 就像我一直做的那样,您将插入 ~/bin 搜索目录而不是 PATH 的末尾和中间。因此,在本地配置文件形成之前调用 .profile ,之后将添加其他一些系统目录。这很糟糕,因此您的家庭二进制文件的优先级将高于某些系统的优先级。并且可能会改变具有相同名称的不良行为。所以你需要在 .bash_profile 中添加 PATH,而不是 .profile 保证在 PATH 的末尾添加你的 home bin 目录。但是根本不要删除 ~/.profile 。它需要添加一些其他数据。该文件在第一次登录时调用一次,每次使用 su 不带 -l 的情况下第二次登录时调用 .bash_profile ,然后返回。如果不打扰您将在 PATH 中获得两个主 bin 目录,下一个树等等。这不太好。所以你必须这样纠正:

p=:$HOME/bin && test `expr $PATH : '.*'"$p"` -gt 0 || export PATH+=$p || true

授权者 home bin dir 将只添加一个独立的,您使用 su 更改有效用户后登录的次数,然后返回。 最终为真更好写所以如果由于某些不可预测的原因发生错误 命令 export PATH+=$p(有时会发生这种情况)您的配置文件加载停止,您根本无法登录。这条线将运行并生成任何错误,这是被授予者。

【讨论】:

    【解决方案4】:

    在我的问题中,当我在服务器上尝试使用 ssh 时,我收到了这个错误:

    -bash: /home/user/.bash_logout: Permission denied

    为解决您的用户主目录必须具有执行权限。

    chmod +x <user_home_directory>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-08
      • 1970-01-01
      • 2015-03-19
      • 2021-01-25
      • 1970-01-01
      • 2016-01-15
      • 2011-08-20
      • 2014-06-21
      相关资源
      最近更新 更多