そういうのがいいブログ

SIerで働く30代サラリーマンSEがインフラエンジニアに憧れてLinux・クラウド・AWSの勉強をするブログ

【CentOS8】php-fpm再起動時のエラー「ACL set, listen.owner = '~' is ignored」の対処手順

※[PR]当ブログの記事の中にはプロモーションが含まれています。

CentOS8のOS再起動で、php-fpmが再起動したときのエラー「ACL set, listen.owner = '~' is ignored」「ACL set, listen.group = '~' is ignored」の対処手順

自宅ローカル開発環境のCentOS8サーバを久しぶりに再起動したら、php-fpm再起動時のエラーを検知していたので対処手順のメモを紹介します

この記事を書いている私は、某SIerに勤務しながら、
WEB系エンジニア・インフラエンジニアに憧れて、プログラミングおよびインフラ技術の勉強をしています。
私が実機で試したコマンドや画像を載せて書いています。
記事の信頼性担保に繋がると思います。

前回の記事

souiunogaii.hatenablog.com

前提条件

CentOS8への、Apache2.4のインストールと、PHP7.2のインストールは、
以下の記事の手順で実施してあります。

souiunogaii.hatenablog.com

souiunogaii.hatenablog.com

私の環境では、Apacheの実行ユーザーを、デフォルトの「apache」から「www」に変更した状態になっています

検知したエラーメッセージ

SYSLOG監視で以下のエラーメッセージを検知していました。

Jun 13 09:53:11 SV-NEPTUNE php-fpm[1190]: [13-Jun-2020 09:53:11] WARNING: [pool www] ACL set, listen.owner = 'www' is ignored
Jun 13 09:53:11 SV-NEPTUNE php-fpm[1190]: [13-Jun-2020 09:53:11] WARNING: [pool www] ACL set, listen.group = 'www' is ignored

php-fpmのエラーログにも同様のエラーが出力されていました。

/var/log/php-fpm/error.log
[13-Jun-2020 09:53:11] WARNING: [pool www] ACL set, listen.owner = 'www' is ignored
[13-Jun-2020 09:53:11] WARNING: [pool www] ACL set, listen.group = 'www' is ignored

「www.sock」のACL設定を確認

ls -l /run/php-fpm/www.sock
[root@sv-neptune ~]# ls -l /run/php-fpm/www.sock
srw-rw-rw-+ 1 root root 0  613 09:53 /run/php-fpm/www.sock

ls -lコマンドの実行結果のパーミッションの部分の末尾に「+」がついています。
ファイルにACL設定がされているのがわかります。
getfaclACL設定の内容を確認します。

getfacl /run/php-fpm/www.sock
[root@sv-neptune ~]# getfacl /run/php-fpm/www.sock
getfacl: Removing leading '/' from absolute path names
# file: run/php-fpm/www.sock
# owner: root
# group: root
user::rw-
user:apache:rw-
user:nginx:rw-
group::rw-
mask::rw-
other::rw-

「www.conf」の設定を確認

/etc/php-fpm.d/www.conf
; Set permissions for unix socket, if one is used. In Linux, read/write
; permissions must be set in order to allow connections from a web server.
; Default Values: user and group are set as the running user
;                 mode is set to 0660
listen.owner = www
listen.group = www
listen.mode = 0666

; When POSIX Access Control Lists are supported you can set them using
; these options, value is a comma separated list of user/group names.
; When set, listen.owner and listen.group are ignored
listen.acl_users = apache,nginx
;listen.acl_groups =

だいたい40行目~50行目あたりに、上記のような記載があります。
英語がよくわからないので、Google翻訳に入れると以下でした。

; POSIXアクセスコントロールリストがサポートされている場合は、次を使用して設定できます。
; これらのオプションでは、値はユーザー/グループ名のコンマ区切りリストです。
; 設定すると、listen.ownerとlisten.groupは無視されます

listen.acl_users = が設定されているために、listen.owner = と listen.group = の設定が無視されているようなので、
listen.acl_users = の部分をコメントアウトします。

「www.conf」の設定を修正

vi /etc/php-fpm.d/www.conf
; When POSIX Access Control Lists are supported you can set them using
; these options, value is a comma separated list of user/group names.
; When set, listen.owner and listen.group are ignored
;listen.acl_users = apache,nginx
;listen.acl_groups =

「listen.acl_users = apache,nginx」の部分をコメントアウトしました

php-fpmの再起動

systemctl restart php-fpm
systemctl status php-fpm
[root@sv-neptune ~]# systemctl restart php-fpm
[root@sv-neptune ~]# systemctl status php-fpm
● php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2020-06-13 15:02:03 JST; 9s ago
 Main PID: 7757 (php-fpm)
   Status: "Ready to handle connections"
    Tasks: 11 (limit: 11110)
   Memory: 38.1M
   CGroup: /system.slice/php-fpm.service
           tq7757 php-fpm: master process (/etc/php-fpm.conf)
           tq7759 php-fpm: pool www
           tq7760 php-fpm: pool www
           tq7761 php-fpm: pool www
           tq7762 php-fpm: pool www
           tq7763 php-fpm: pool www
           tq7764 php-fpm: pool www
           tq7765 php-fpm: pool www
           tq7766 php-fpm: pool www
           tq7767 php-fpm: pool www
           mq7768 php-fpm: pool www

 613 15:02:03 sv-neptune systemd[1]: Stopped The PHP FastCGI Process Manager.
 613 15:02:03 sv-neptune systemd[1]: Starting The PHP FastCGI Process Manager...
 613 15:02:03 sv-neptune systemd[1]: Started The PHP FastCGI Process Manager.
[root@sv-neptune ~]#

php-fpmのエラーログにエラーが出ていないことを確認

/var/log/php-fpm/error.log
[13-Jun-2020 15:02:03] NOTICE: Terminating ...
[13-Jun-2020 15:02:03] NOTICE: exiting, bye-bye!
[13-Jun-2020 15:02:03] NOTICE: fpm is running, pid 7757
[13-Jun-2020 15:02:03] NOTICE: ready to handle connections
[13-Jun-2020 15:02:03] NOTICE: systemd monitor interval set to 10000ms

参考にしたサイト

hacknote.jp

https://www.jtp.co.jp/techport/2015-09-09-001/www.jtp.co.jp

qiita.com

itneko.com

インフラエンジニアになるための勉強のやり方

私は、某SIerに勤務しながら、WEB系エンジニア・インフラエンジニアに憧れて、プログラミングおよびインフラ技術の勉強をしています。

現在の会社で直接担当している業務の中では、決まった技術しか触れないけれど、
「他にも将来役に立ちそうなインフラ技術を勉強したい」「働きながらでもできる効率的なインフラエンジニアの勉強方法を知りたい」と考えている方のために、
①おすすめの書籍と、②おススメのオンライン学習サイトを紹介します。

働きながら勉強するための、おススメの書籍と、オンラインで学習できるサイトの紹介です。

インフラエンジニアの勉強ができるおススメ書籍

朝の通勤時や帰宅時の電車の中や、社外打合せへの移動中などに勉強するなら、やはり書籍が一番だと思います。

インフラエンジニアの教科書

LINE社に創業時から在籍しているインフラエンジニア・プロマネの「佐野裕」さんの本です。 twitter.com

膨大なトラフィックをさばくLINE社にて構築・保守を行っている現役エンジニアが記すITインフラの必須知識と経験の数々! サーバ、OS、ネットワーク機器、データセンター、購買と商談、障害対応、大規模インフラ、成長するために必要なスキルなど、基礎知識から実践まで言及。 ITインフラの世界が理解できる珠玉の1冊!

インフラエンジニアの教科書
(C&R研究所)
佐野裕

1週間でLPICの基礎が学べる本

Linuxの資格「LPIC」の試験対策を初心者向けに書いた入門書です。

Linuxの資格として広く知られているLPICですが、あまり知識の無いまま試験対策を始める人も多いのではないでしょうか。しかし、試験対策書は試験範囲についてのみ解説しているものが多く、初心者が理解するのは困難です。本書は、初心者がスムーズに試験対策を行えるよう、事前に基礎固めを行うLinux入門書です。試験情報や模擬問題も掲載しているので、資格取得を視野に入れた効率的な基礎学習が行えます。

1週間でLPICの基礎が学べる本
第3版 徹底攻略シリーズ
(インプレス)
中島能和

インフラエンジニアの勉強ができるオンライン学習サイト

Udemy (オンライン動画学習サイト)

Udemy(ユーデミー)は、オンラインで動画で学習できるサービスです。
ITエンジニア系の講座もたくさん公開されています。

≫Udemy 世界最大級のオンライン学習サイト

Udemyの特徴
  • ユーザー登録すれば、第1回の講座は無料で視聴できる
  • 無料のコンテンツもある
  • 過去に受講した人の人数や、受講した人の評価も表示されるので選びやすい

≫Udemy 世界最大級のオンライン学習サイト

開発の人気オンラインコース

以上、読んでいただきありがとうございました。