Estoy tratando de ejecutar un Broker Mosquitto MQTT en Ubuntu 16.04. Tengo instrucciones de 14.04, pero como 16.04 ya no usa el inicio, no puedo entender cómo convertir a systemd.
Aquí están los comandos para 14.04:
description "Mosquitto MQTT broker"
start on net-device-up
respawn
exec /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
EDITAR:
Esto es lo que llegué hasta ahora. Cuando reinicio y ejecuto systemctl status mosquitto.service
, muestro que mosquitto está cargado pero no activo:
[Unit]
Description=Mosquitto MQTT Broker
[Service]
WorkingDirectory=/usr/sbin/mosquitto
ExecStart=/etc/mosquitto/mosquitto.conf
Restart=always
[Install]
WantedBy=multi-user.target
EDITAR 2:
Ran sudo systemctl enable mosquitto.service
. Ahora el código de salida de error es:
Process: 1720 ExecStart=/etc/mosquitto/mosquitto.conf (code=exited, status=200/CHDIR)
-c option
?/etc/init.d/mosquitto
archivo con elstart
argumento./etc/mosquitto/conf.d
directorio parece ser ignorada. ¿Cómo puedo regenerarme/run/systemd/generator.late/mosquitto.service
?/etc/mosquitto/mosquitto.conf
? ¿Que hay ahi?El archivo
ExecStart=
y lasWorkingDirectory=
líneas de su unidad están completamente equivocados. ¿Está tratando de iniciar un archivo de configuración, utilizando el archivo ejecutable (!) Como su directorio de trabajo?Si entiendo correctamente, el archivo de unidad apropiado sería:
Además, no mezcle el inicio y la activación de la unidad. Lea mis respuestas similares sobre esto:
fuente
Asegúrese de tener mosquitto funcionando:
Y tienes esto en default.conf :
fuente