Ich betreibe einen Mosquitto Broker auf einem Raspberry PI.
Ich habe eine Datei mosquitto.conf auf /etc/mosquitto/mosquitto.conf mit folgendem Inhalt abgelegt:
# Place your local configuration in /etc/mosquitto/conf.d/
#
# A full description of the configuration file is at
# /usr/share/doc/mosquitto/examples/mosquitto.conf.example
pid_file /var/run/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto/
log_dest file /var/log/mosquitto/mosquitto.log
include_dir /etc/mosquitto/conf.d
und eine weitere Datei in /etc/mosquitto/conf.g/mosquitto.conf mit dem Inhalt:
autosave_interval 1800
user mosquitto
connection_messages true
log_dest stderr
log_dest topic
log_type error
log_type warning
log_type notice
log_type information
log_type all
log_type debug
log_timestamp true
#message_size_limit 10240
password_file /etc/mosquitto/conf.d/osmc.pw
allow_anonymous false
#acl_file jp.acl
persistence true
persistence_file mosquitto.db
persistent_client_expiration 1m
#pid_file xxxx
retained_persistence true
#listener 1883
listener 1883
listener 8883
tls_version tlsv1.2
cafile /etc/mosquitto/conf.d/ca.crt
certfile /etc/mosquitto/conf.d/osmc.crt
keyfile /etc/mosquitto/conf.d/osmc.key
require_certificate false
Wenn ich mit dem Befehl Mücke laufen
$sudo mosquitto -c /etc/mosquitto/mosquitto.conf -d
Der Broker wird korrekt initialisiert, wie ich anhand der folgenden Informationen sehen kann:
$ sudo netstat -tulpn | grep mosquitto
tcp 0 0 0.0.0.0:8883 0.0.0.0:* LISTEN 23266/mosquitto
tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN 23266/mosquitto
tcp6 0 0 :::8883 :::* LISTEN 23266/mosquitto
tcp6 0 0 :::1883 :::* LISTEN 23266/mosquitto
Nach einem Neustart stelle ich jedoch mit demselben Befehl fest, dass Mosquitto nicht auf dem Port 8883 ausgeführt wird
$ sudo netstat -tulpn | grep mosquitto
tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN 269/mosquitto
tcp6 0 0 :::1883 :::* LISTEN 269/mosquitto
Wie kann ich mosquitto mit der richtigen Datei mosquitto.conf beim Booten ausführen?