【问题标题】:Permission denied, forever.js as a bash script?权限被拒绝,forever.js 作为 bash 脚本?
【发布时间】:2015-04-09 20:17:31
【问题描述】:

所以我想出了如何在 bash 脚本中永久运行,在 filezilla 中我将 /usr/local/lib/node_modules/forever 的所有权限更改为 777。

接收后 bash 脚本

#!/bin/sh
git --work-tree=/var/www/example.io/public_html --git-dir=/var/repo/example.git checkout -f
/usr/local/lib/node_modules/forever restart ../../../www/example.io/public_html/server.js

然后当我推送它时写入成功,但我得到了这个

remote: hooks/post-receive: 3: hooks/post-receive: /usr/local/lib/node_modules/forever: Permission denied

那么既然我把所有文件夹都改成了777,那我还能做什么呢?

【问题讨论】:

  • 永久可执行文件本身必须是可执行文件,即使文件夹是 777
  • 我 777 永久文件夹中的所有内容,我仍然被拒绝权限?
  • 如果你先 cd 到目录然后永远运行会怎样
  • cd 在 bash 脚本中?
  • 如果是这个文件,那么问题是你试图直接运行它。它没有 shebang (#!) 行来告诉 shell 如何运行文件。你应该在那里改用forever node script 吗?

标签: javascript node.js git bash forever


【解决方案1】:

所以在 bash 脚本中,forever 命令的工作方式就是这样

forever restart server.js

不涉及路径,唯一需要注意的是它会重新启动所有 server.js 进程,因此我需要相应地命名我的节点服务器。

还将我的远程服务器更改为 root。现在一切正常。

【讨论】:

    猜你喜欢
    • 2016-07-16
    • 1970-01-01
    • 2014-06-18
    • 2015-11-15
    • 1970-01-01
    • 2019-05-02
    • 2012-06-19
    • 1970-01-01
    • 2016-01-15
    相关资源
    最近更新 更多