After a few days of absence, I was unfortunately faced with some problems on my Raspberry smart home server.
Among other things, the Mosquitto MQTT server, which is supposed to receive and process messages from the various iot devices, was not available.
After analyzing the process overview with
ps -A | grep mosq
unfortunately no output was shown, i.e. the process had obviously not started.
The manual start with
then led to success. The MQTT server was running and also receiving or processing all messages. Only the service to the Mosquitto caused problems.
After completing the manually started process, another attempt was made with
sudo systemctl start mosquitto.service
then start the service. The subsequent query with
sudo systemctl status mosquitto.service
initially provided a promising answer that the service had started successfully.
Unfortunately not quite successful, there is still no entry for mosquitto in the process overview, and the MQTT message processing did not work either.
After some troubleshooting, the problem was solved. The cause was an apparently corrupt mosquitto.db that is used by the mosquitto service to cache messages.
This problem can be easily solved by deleting the corresponding file in the directory / var / lib / mosquitto using:
sudo rm mosquitto.db
If then restarted with
sudo systemctl restart mosquitto.service
mosquitto works fine. The service is automatically restarted even after a reboot.