Szeged és környéke adok-veszek-beszélgetek - Lokál fórum

Hirdetés

üzenetek

hozzászólások


fecus
(őstag)

A HUP-nak nem vagyok tagja. Csak amatőr it-s vagyok. Itthon játszom a kis szerveremmel.
#99037 stopperos : Köszi.
Az Ubuntu 20.04.6 szerveren a systemd indítja a mosquitto-t. Kb. minden 2. újrainduláskor a Mqtt nem indul el mert nem találja a mosquitto.log fájlt. És tényleg nincs ott. Meg sem próbál létrehozni egy újat. Ekkor áll majdnem az egész HomeAssistant.
Gondoltam írok egy scriptet ami megnézi a fájlt. Ha nincs csinál és betölti a mqtt, ha van csak betölti. A script működik ha csak lefuttatom. Ha azonban egy service-t csinálok belőle a systemd-nek. Akkor nem működik. Az eredeti mosquitto service-ből csináltam.
 [Unit]
# Description=Mosquitto MQTT v3.1/v3.1.1 Broker
# Documentation=man:mosquitto.conf(5) man:mosquitto(8)
After=network-online.target
Wants=network-online.target
[Service]
Type=notify
NotifyAccess=main
ExecStart=/bin/bash /opt/my_mosquitto.sh
# ExecReload=/bin/kill -HUP $MAINPID
# Restart=on-failure
[Install]
WantedBy=multi-user.target

Annyit haladtam, hogy a Neten találtam, hogy kevés az EXEC-nek a # /bin/bash a scripben, a parancssorba is be kell írni a parancs elé. Előtte hibára futott, most beleragad és timeout-al később kilövi.
A script:
# /bin/bash
if ! test -f /var/log/mosquitto/mosquitto.log; then
  echo -n "" > /var/log/mosquitto/mosquitto.log
fi
/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf

Az amatőrségem, hogy nem mindent értek a service készítésben.

[ Szerkesztve ]

üzenetek