我在网上搜索了一段时间,但没有找到解决方案,所以我在这里问:我的问题是,为什么这个文件(/etc/init.d/nginx
)不可执行?
我正在关注亚历克斯昨天我遇到了一个问题。一切都正常,直到service nginx restart
-命令。当我尝试运行此命令时,我会得到
nginx: You don't have permissions to execute nginx.
在 Google 上搜索了一段时间后,我找到了一个可能的答案,但是这已经在 Alex 的教程/演练中完成了:
$ sudo chmod +x /etc/init.d/nginx
如果您不想阅读教程,请参阅以下一些信息:
- 我正在使用 Nginx(读到这里你就会知道)
- 它与 Passenger 一起安装,然后从头开始导入 Nginx Init 脚本和 nginx.conf 文件。
- 哦,我运行的是 Debian 而不是 Ubuntu,但这不应该是问题,或者?
所以如果有人能帮助我,我将非常感激。谢谢!
答案1
首先 /etc/init.d/nginx 实际上是一个 init 脚本,而不是可执行文件。您可以尝试找到 nginx 二进制文件并手动启动它并检查权限。
运行 whereis nginx 来查找二进制文件。
答案2
你是如何安装 nginx 的?你确定没有跳过任何步骤吗?
如果你手动从源代码安装它,为什么?你的 Linux 发行版/其他 Unix 没有可用的软件包吗?走“从源代码安装”路线不是一个好主意(你的系统不知道它及其依赖项;此外你肩负着解决错误/安全问题的负担,这对于面向互联网的服务尤为重要)。