AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-940557

Pete Cooper's questions

Martin Hope
Pete Cooper
Asked: 2019-10-22 03:10:05 +0800 CST

我应该在哪里存储服务器构建日志?

  • 0

当我构建一个 Ubuntu 云 VPS(通常是 DigitalOcean)时,我有一个我编写和维护的手动构建指南。作为构建指南的一部分,我将自己的注释以文本文件的形式保存在服务器上,这样我就可以看到我到了哪里、做了什么、需要做什么等等。这些文本文件位于~/.build/其中,典型的文件名为310-build-nginx. 该310部分是我的构建指南的标记,所以我知道它是第 3 章,第 1 部分,第 0 节。文件在构建完成的那部分更新,并且构建器(即我)被标记。它本质上是一个基本的审计日志。

到目前为止,只有我在构建服务器。到今天为止,我有帮助并且~/.build/不再适合这些构建状态文件。放置这些文件的逻辑位置是某个/var/log/位置。我可以很容易地创建一个新目录,但如果有这些系统构建文件的首选目录,我更愿意遵循约定。

笔记:

  • 有两个系统构建者,我是一个,我信任另一个;
  • 两个账户都有sudo权利;
  • 两个帐户具有相同的构建指南;
  • 编辑/附录:保存位置应该在服务器本身的本地文件系统中;

请问我应该把我的系统构建状态文件写到哪里?

先感谢您。

server logging
  • 1 个回答
  • 680 Views
Martin Hope
Pete Cooper
Asked: 2019-04-03 05:49:45 +0800 CST

PHP-FPM 不会在服务重启时创建套接字

  • 5

问题和问题

Ubuntu 服务器 18.04 LTS。

在 PHP-FPM 上使用systemctl restart不会在 中创建所需的套接字/var/run/php/,但会重新启动。

如何调整我的设置以允许在不重新启动的情况下重新启动服务?

概述

我正在单个服务器(无容器)上从源代码编译多个 PHP-FPM 实例,以用于各种年龄的 Web 应用程序。我已经成功地同时设置了 PHP 7.1、PHP 7.2 和 PHP 7.3。它们都在启动时正确启动,它们都有一个套接字/var/run/php/,它们都按浏览器的预期响应。

/var/run/php开机后的内容

/var/run/php$ ls -l
total 0
srw-rw---- 1 www-data www-data 0 Apr  2 12:57 php7.1-fpm.sock
srw-rw---- 1 www-data www-data 0 Apr  2 12:57 php7.2-fpm.sock
srw-rw---- 1 www-data www-data 0 Apr  2 12:57 php7.3-fpm.sock

每个服务似乎都在正常运行。这是systemctl status每个的输出:

启动后的 PHP 7.1

~$ sudo systemctl status php7.1-fpm
● php7.1-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/etc/systemd/system/php7.1-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-04-02 12:57:51 UTC; 21min ago
 Main PID: 875 (php-fpm)
    Tasks: 3 (limit: 1152)
   CGroup: /system.slice/php7.1-fpm.service
           ├─875 php-fpm: master process (/etc/php/7.1/etc/php-fpm.conf)
           ├─970 php-fpm: pool www
           └─971 php-fpm: pool www

Apr 02 12:57:51 darwin systemd[1]: Started The PHP FastCGI Process Manager.

启动后的 PHP 7.2

~$ sudo systemctl status php7.2-fpm
● php7.2-fpm.service - The PHP FastCGI Process Manager (7.2)
   Loaded: loaded (/etc/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-04-02 12:57:51 UTC; 22min ago
 Main PID: 837 (php-fpm)
    Tasks: 3 (limit: 1152)
   CGroup: /system.slice/php7.2-fpm.service
           ├─837 php-fpm: master process (/etc/php/7.2/etc/php-fpm.conf)
           ├─963 php-fpm: pool www
           └─964 php-fpm: pool www

Apr 02 12:57:51 darwin systemd[1]: Started The PHP FastCGI Process Manager (7.2).

启动后 PHP 7.3

~$ sudo systemctl status php7.3-fpm
● php7.3-fpm.service - The PHP FastCGI Process Manager (7.3)
   Loaded: loaded (/etc/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-04-02 12:57:51 UTC; 23min ago
 Main PID: 836 (php-fpm)
    Tasks: 3 (limit: 1152)
   CGroup: /system.slice/php7.3-fpm.service
           ├─836 php-fpm: master process (/etc/php/7.3/etc/php-fpm.conf)
           ├─965 php-fpm: pool www
           └─966 php-fpm: pool www

Apr 02 12:57:51 darwin systemd[1]: Started The PHP FastCGI Process Manager (7.3).

如果我对相应的php.ini文件进行更改,则需要重新启动服务以处理更改。在我的情况下,当我使用systemctl restart(eg sudo systemctl restart php7.1-fpm) 重新启动服务时,服务似乎会正常重新启动,但所有 PHP 套接字都被删除——无论我重新启动的版本是什么。

之后没有控制台输出systemctl restart,当我检查systemctl status重新启动的服务(例如上一段中的 PHP 7.1)时,该服务正在运行:

PHP 7.1 之后systemctl restart

~$ sudo systemctl status php7.1-fpm
● php7.1-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/etc/systemd/system/php7.1-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-04-02 13:28:06 UTC; 28s ago
 Main PID: 1704 (php-fpm)
    Tasks: 3 (limit: 1152)
   CGroup: /system.slice/php7.1-fpm.service
           ├─1704 php-fpm: master process (/etc/php/7.1/etc/php-fpm.conf)
           ├─1718 php-fpm: pool www
           └─1722 php-fpm: pool www

Apr 02 13:28:06 darwin systemd[1]: Stopped The PHP FastCGI Process Manager.
Apr 02 13:28:06 darwin systemd[1]: Started The PHP FastCGI Process Manager.

请注意 上的时间戳差异Active。如果我以相同的方式查询其他服务(注意:它们没有被我重新启动),时间戳是从启动时的初始启动开始的:

PHP 7.2systemctl restart在 PHP 7.1之后

~$ sudo systemctl status php7.2-fpm
● php7.2-fpm.service - The PHP FastCGI Process Manager (7.2)
   Loaded: loaded (/etc/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-04-02 12:57:51 UTC; 33min ago
 Main PID: 837 (php-fpm)
    Tasks: 3 (limit: 1152)
   CGroup: /system.slice/php7.2-fpm.service
           ├─837 php-fpm: master process (/etc/php/7.2/etc/php-fpm.conf)
           ├─963 php-fpm: pool www
           └─964 php-fpm: pool www

Apr 02 12:57:51 darwin systemd[1]: Started The PHP FastCGI Process Manager (7.2).

PHP 7.3systemctl restart在 PHP 7.1之后

~$ sudo systemctl status php7.3-fpm
● php7.3-fpm.service - The PHP FastCGI Process Manager (7.3)
   Loaded: loaded (/etc/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-04-02 12:57:51 UTC; 34min ago
 Main PID: 836 (php-fpm)
    Tasks: 3 (limit: 1152)
   CGroup: /system.slice/php7.3-fpm.service
           ├─836 php-fpm: master process (/etc/php/7.3/etc/php-fpm.conf)
           ├─965 php-fpm: pool www
           └─966 php-fpm: pool www

Apr 02 12:57:51 darwin systemd[1]: Started The PHP FastCGI Process Manager (7.3).

…然而所有的套接字都不见了:

PHP 7.1/var/run/php之后的内容systemctl restart

$ ls -l
total 0

我的直觉是我在.service没有意识到的情况下破坏了文件中的某些内容。虽然我一直在进行故障排除,但我注意到我为 PID 和套接字使用了不同的目录。PID不会在引导时创建,因为/run/php-fpm/它不存在。我有一个模糊的记忆,被建议不要将套接字和 PID 保存在同一目录中,但我不记得确切的细节。

PHP 7.1.service文件

[Unit]
Description=The PHP FastCGI Process Manager
After=network.target

[Service]
Type=simple
RuntimeDirectory=php
RuntimePermissions=755
PIDFile=/run/php-fpm/php7.1-fpm.pid
ExecStart=/etc/php/7.1/sbin/php-fpm --nodaemonize --fpm-config /etc/php/7.1/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target

提前感谢您的任何指示或进一步阅读。

server command-line 18.04
  • 1 个回答
  • 4730 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve