LINUX.ORG.RU

Сообщения ubuntoid1

 

Ubuntu 18.04, systemd, php как служба. При рестарте системы службы не созданы

Приветствую. Имеется Ubuntu 18.04.4 LTS, systemd 237. Требуется создать 2 php сервиса. Они идентичны, приведу .service одного:

[Unit]
Description=MQTT Reader Service
Requires=mosquitto.service rabbitmq-server.service

[Service]
User=demonmqtt
Type=simple
TimeoutSec=5
ExecStart=/usr/bin/php7.2 -f /var/www/demonmqtt/data/www/site.com/mqtt_reader_daemon.php
KillMode=process
StandardOutput=file:/var/www/demonmqtt/data/www/site.com/logs/mqtt-reader.log
StandardError=file:/var/www/demonmqtt/data/www/site.com/logs/mqtt-reader-error.log
Restart=on-failure
RestartSec=30s

[Install]
WantedBy=default.target

Устанавливаю скриптом, для простоты:

#!/usr/bin/env bash
DIR=`dirname "$(readlink -f "$0")"`

sudo ln -s $DIR/mqtt-reader.service -t /etc/systemd/system

sudo systemctl enable mqtt-reader
sudo systemctl daemon-reload
sudo systemctl start mqtt-reader
systemctl status mqtt-reader

Тут всё хорошо, выдаёт:

May 15 11:10:07 111.66.15 systemd[1]: Started MQTT Performer Service.
● mqtt-reader.service - MQTT Reader Service
   Loaded: loaded (/var/www/demonmqtt/data/www/site.com/service/mqtt-reader.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2020-05-15 11:10:07 EEST; 6s ago
 Main PID: 3841 (php7.2)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/mqtt-reader.service
           └─3841 /usr/bin/php7.2 -f /var/www/demonmqtt/data/www/site.com/mqtt_reader_daemon.php

May 15 11:10:07 111.66.15 systemd[1]: Started MQTT Reader Service.

Но если перезагрузить сервер, то службы не стартуют. Если попытаться стартануть вручную, выдаёт что служба не найдена:

root@111 ~ # systemctl start mqtt-reader
Unit mqtt-reader.service could not be found.

При этом линки на службы уже созданы:

root@111 ~ # ls /etc/systemd/system -l
...
lrwxrwxrwx 1 root root   72 Sep 23  2019 mqtt-reader.service -> /var/www/demonmqtt/data/www/site.com/service/mqtt-reader.service

Видно, что служба зависит от двух других - mqtt и rabbit-а. В syslog видно, что обе успешно стартуют. Но нет ни намёка на попытку старта mqtt-reader.service. Подскажите, куда копать, что делать?

 ,

ubuntoid1
()

setfacl - дефолтные права не работают при копировании

Приветствую. Собственно вопрос назначения прав по умолчанию разжеван в интернетах, и ничто не предвещало трудностей.

u1@bubuntu:~$ sudo mkdir /web
u1@bubuntu:~$ sudo chown root:web /web
u1@bubuntu:~$ sudo chmod g=rwxs,o=- /web
u1@bubuntu:~$ ls -l / | grep web
drwxrws---   2 root web        4096 янв 11 02:19 web
u1@bubuntu:~$ sudo setfacl -d -m g::rwx,o::--- /web
u1@bubuntu:~$ getfacl /web
getfacl: Removing leading '/' from absolute path names
# file: web
# owner: root
# group: web
# flags: -s-
user::rwx
group::rwx
other::---
default:user::rwx
default:group::rwx
default:other::---

Собственно мои желания отражены в последней команде и для новых файлов они сбываются:

u1@bubuntu:~$ touch /web/ttt
u1@bubuntu:~$ mkdir /web/zzz
u1@bubuntu:~$ ls -l /web
total 4
-rw-rw----  1 u1 web    0 янв 11 02:22 ttt
drwxrws---+ 2 u1 web 4096 янв 11 02:22 zzz

Однако же для существующих файлов это не работает:

u1@bubuntu:~$ ls -l ./composer.json 
-rw-r--r-- 1 u1 u1 1676 янв  6 18:49 ./composer.json
u1@bubuntu:~$ cp ./composer.json /web/zzz
u1@bubuntu:~$ ls -l /web/zzz/
total 4
-rw-r----- 1 u1 web 1676 янв 11 02:25 composer.json

Тут почему-то не хватает права записи для группы (что критично), хотя нормально заданы права для «остальных» (на что наплевать, т.к. есть 770 на корневую). А если копировать с помощью mc, то права вообще не меняются, даже если снять галку «preserve attributes».

Почему так и есть ли относительно простой способ добиться желаемого? Вот тут нашел прям свой случай, но переход на bindfs не вариант (у меня ext4). Заранее спасибо.

 ,

ubuntoid1
()

RSS подписка на новые темы