{已成功} 安装mosquitto 1.4.10,这么设置开机自动启动?

这次要搞MQTT,但是装了mosquitto之后,无法自动开机启动mosquitto服务,用的是apt-get安装

以前在ubuntu上安装mosquitto之后,会自动设置为开机启动。和Openssh一样,在Debian咋就不行了呢,奇怪。

======== 11月23日晚上11点更新 =============

折腾啊,mosquitto.service文件里的安装目录该对了,还是出错

最后吧执行文件参数去掉就可以了,后面这个参数放在树莓派raspbian可以用,放在Ubuntu上可以用,在debian上就启动服务失败,奇了怪了。

方法:

把 ExecStart=/usr/local/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf -d

改成

ExecStart=/usr/local/sbin/mosquitto

保存
重启

就ok了

踏破铁鞋无觅处,原来这么简单绕了一圈又回来了。

谢谢hosiet的解答,没有你,我估计要放弃Debian虚拟机系统了,再次感谢

systemctl enable mosquitto 然后重启。

重启再看有没有自动启动。还没有的话,systemctl status mosquitto 看看错误信息是啥。

所有系统服务都是这个套路。

重启后 还是没启动服务,奇怪

root@debian:~# systemctl status mosquitto -l
● mosquitto.service - Mosquitto MQTT Broker daemon
Loaded: loaded (/etc/systemd/system/mosquitto.service; enabled)
Active: inactive (dead)
start condition failed at Tue 2016-11-22 22:53:41 EST; 18s ago
ConditionPathExists=/etc/mosquitto/mosquitto.conf was not met

Nov 22 22:53:41 debian systemd[1]: Started Mosquitto MQTT Broker daemon.

可能是 bug。

之前是安装不同版本,删除干净后,可以 systemctl enable mosquitto

但是重启后没反应,看看这个服务貌似没有开启

root@debian:~# root@debian:~# systemctl status mosquitto -l
● mosquitto.service - Mosquitto MQTT Broker daemon
Loaded: loaded (/etc/systemd/system/mosquitto.service; enabled)
Active: inactive (dead)
start condition failed at Tue 2016-11-22 22:53:41 EST; 18s ago
ConditionPathExists=/etc/mosquitto/mosquitto.conf was not met

重新安装 1.4.10版本

Preparing to unpack …/libwebsockets3_1.2.2-1_amd64.deb …
Unpacking libwebsockets3:amd64 (1.2.2-1) …
Selecting previously unselected package mosquitto.
Preparing to unpack …/mosquitto_1.4.10-0mosquitto4_amd64.deb …
Unpacking mosquitto (1.4.10-0mosquitto4) …
Processing triggers for man-db (2.7.0.2-5) …
Processing triggers for systemd (215-17+deb8u5) …
Setting up libwebsockets3:amd64 (1.2.2-1) …
Setting up mosquitto (1.4.10-0mosquitto4) …
Processing triggers for libc-bin (2.19-18+deb8u6) …

[quote=“hosiet”]systemctl enable mosquitto 然后重启。

重启再看有没有自动启动。还没有的话,systemctl status mosquitto 看看错误信息是啥。

所有系统服务都是这个套路。[/quote]

已经找到原因了,是软件安装多个软件源的不同版本导致错乱,把.servic里的文件目录更改下就可以开机启动了

现在问题是,开机启动了,无法接收客户端信息,手动在putty上运行一次之后,就能成功接收信息,奇怪了,难道开机启动也有不同的形式?

折腾啊,mosquitto.service文件里的安装目录该对了,还是出错

最后吧执行文件参数去掉就可以了,后面这个参数放在树莓派raspbian上可以用,在debian上就启动服务失败

方法:

把 ExecStart=/usr/local/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf -d

改成

ExecStart=/usr/local/sbin/mosquitto

保存
重启

就ok了

踏破铁鞋无觅处,原来这么简单绕了一圈又回来了。

谢谢hosiet的解答,没有你,我估计要放弃Debian虚拟机系统了,再次感谢