【问题标题】:Getting permission denied error when running cf command on mac os x在 mac os x 上运行 cf 命令时出现权限被拒绝错误
【发布时间】:2016-02-27 11:13:42
【问题描述】:

我已经在我的 Mac OS X Yosemite 上安装了 Cloud Foundry CLI 包。当我在终端界面输入cf 命令时,出现以下错误

FAILED
Error read/writing config:  open /Users/viyer/.cf/config.json: permission denied

我该如何解决这个问题?我找不到文件config.json

【问题讨论】:

  • 发布ls -lR ~/.cf的输出。那么它可能是sudo chmod -R u+w ~/.cf

标签: macos cloud-foundry


【解决方案1】:

我发现删除 .cf 目录然后运行 ​​cf cli 修复了它

sudo rm -r ~/.cf
cf -h

【讨论】:

  • 这解决了windows中类似的“读取/写入配置错误:JSON输入意外结束”
【解决方案2】:

这有点奇怪,但我通过为文件夹和 config.json 分配 777 权限解决了这个问题。

所以,sudo chmod 777 .cf/config.json 解决了我的问题。

试一试!

干杯!

【讨论】:

  • 不不不不。不要只是把权限改成777,这等于把自己锁在屋外,砸门而已。你现在可以进去,但其他人也可以。 StackOverflow 上到处都是说要使用 777 的人,但我还没有看到一个案例是正确的答案。
【解决方案3】:

默认情况下,cf CLI 将尝试在用户的主目录(即~/.cf)中创建并写入名为.cf 的目录。由于某种原因,您机器上的用户没有创建和/或写入该目录的权限。

您可以通过将CF_HOME 环境变量设置为用户确实有权访问的另一个目录来解决此问题。

【讨论】:

    【解决方案4】:

    不幸的是,我的 El Capitan 上的任何更改权限都无法使 cf 访问 .cf 文件夹中的 config.json 文件。我在我的主空间(“CLI”)中创建了一个新文件夹,并确保它具有正确的权限并将 CF_HOME 设置为指向“~/CLI/”。仅仅创建新的 CF_HOME 文件夹并在我的 .bash.profile 中设置 CF_HOME 是不够的。然后我将 .cf 文件夹的内容复制到我的新 CLI 文件夹中。最后! cf 正在工作!

    哦,这很有趣。这个版本的 OSX 上的 CF 只会从主目录运行,它不会从根目录以外的任何地方运行(它不会找到 config.json)。

    【讨论】:

      【解决方案5】:

      试试这个命令:sudo chmod -R 777 /Users/{username}/.cf

      它在 OS X El Capitan 上对我有用。

      【讨论】:

        【解决方案6】:

        config.json 需要具有读写权限,在我的情况下,.cf 文件夹具有 root 作为所有者和人员作为组,我在我的 Mac Yosemite 上的用户是组人员的一部分,但仍然是 config.json文件的权限设置为 600 要解决此问题,您应该这样做:

        sudo chmod 666 /User/YourUser/.cf/config.json

        还要检查 .cf 文件夹的权限,检查是否可以读写。做这样的事情:sudo chmod 755 /User/YourUser/.cf

        【讨论】:

          【解决方案7】:

          从系统中删除所有 .cf 文件夹,然后重试。这是@broomyocymru 上面已经提到的。但仍然觉得这可能会对可能不熟悉 shell 命令的用户有所帮助

          【讨论】:

            猜你喜欢
            • 2013-03-30
            • 2020-02-03
            • 2012-06-03
            • 2012-08-29
            • 2018-07-03
            • 1970-01-01
            • 1970-01-01
            • 2021-07-12
            相关资源
            最近更新 更多