解决php-fpm.service not found问题的办法

5年以前  |  阅读数:512 次  |  编程语言:PHP 

前言

本文给大家详细介绍了解决php-fpm.service not found问题的相关内容,文中介绍的非常详细,下面来一起看看详细的介绍:

环境介绍

环境:ubuntu 16.04 64

php 版本:php-7.1.4

发现问题

正常编译安装 php 按照以前流程,把 init.d.php-fpm往 /etc/init.d/php-fpm 拷贝

然后准备执行 service php-fpm start时出错了

错误如下


    Failed to start php-fpm.service: Unit php-fpm.service not found. 

提示 php-fpm.service not found

一开始以为是 php 编译安装的问题,所以直接去 php 目录下执行 php-fpm ,一切正常

但是就是用 service 管理不了

直接查看 php-fpm 管理脚本,尝试调试,最后发现执行 service命令时,根本没有执行到这个脚本

基本排除 php 的问题

解决方法

最后找了一下 service命令资料,找到解决办法

在 ubuntu 16.04 中,添加服务除了需要把文件copy 到 /etc/init.d/ 目录下之外,还需要使用以下命令


    update-rc.d php-fpm defaults

    // 添加
    update-rc.d ServiceName defaults

    // 删除

    update-rc.d ServiceName remove

解决之后,发现之前单独运行了 php-fpm 现在 service运行出现问题


    [05-May-2017 17:09:32] ERROR: An another FPM instance seems to already listen on /run/php/php7.0-fpm.sock
    [05-May-2017 17:09:32] ERROR: FPM initialization failed

提示我们已经有一个 php-fpm 在运行了,由于我是用 sock 方式运行的,没有找到 pid 看了一下 php-fpm 管理脚本的代码,找到解决办法


    stop) 
     echo -n "Gracefully shutting down php-fpm "

     if [ ! -r $php_fpm_PID ] ; then
      echo "warning, no pid file found - php-fpm is not running ?"
      exit 1
     fi

     kill -QUIT `cat $php_fpm_PID`

     wait_for_pid removed $php_fpm_PID

     if [ -n "$try" ] ; then
      echo " failed. Use force-quit"
      exit 1
     else
      echo " done"
     fi
     ;;

直接执行


    kill -QUIT `cat php_fpm_PID的路径` 

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
文件下载
贪吃蛇
获取IMEI
双位运算符
发送邮件
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
提取后缀名
年的日历图
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例