我在我的ubuntu机器上安装了mosquitto服务器和客户端软件包。当我运行命令" mosquitto"运行mosquitto服务器我收到错误"错误:地址已在使用"。为什么我收到此错误?我该如何解决这个问题?
答案 0 :(得分:12)
我遇到了同样的问题,并通过杀死运行mosquitto的进程解决了这个问题。首先,找到mosquitto进程id:
ps -ef | grep mosquitto
这应该向您揭示任何与蚊子有关的过程。比方说,进程ID是 12345 ,那么你可以用它杀死它:
sudo kill 12345
之后错误:已使用的地址消息消失了,mosquitto又能够正常运行。
答案 1 :(得分:8)
ubuntu上的安装会自动为您启动代理。尝试连接以查看它:
mosquitto_sub -t '$SYS/#' -v
如果您尚未安装mosquitto-clients
套餐,则需要安装。
答案 2 :(得分:0)
只需等待 1 分钟,即可再次发出关火命令。 这是我遵循并使其正常工作的内容
第一步:journalctl -u mosquitto
step 2: service mosquitto stop //而不是systemctl stop蚊子
只是为了检查它是否成功关闭使用这个 可选 - 第 3 步:systemctl status mosquitto.service
最后
第四步:服务蚊子启动
答案 3 :(得分:0)
软件包安装程序将 mosquitto 设置为 systemd 服务并自动启动它为您运行。它还将 mosquitto 配置为在重新启动时启动,因此您永远需要手动启动它。
但有时在控制台窗口中运行它会很有帮助,例如测试新的配置文件,或查看输出以查看客户端建立和断开连接等等。为了做到这一点,你需要停止后台服务,你可以使用systemctl来做到这一点:
$ systemctl stop mosquitto.service
当您完成测试并希望启动后台服务备份时:
$ systemctl start mosquitto.service
要检查它,请使用 status
命令:
$ systemctl status mosquitto.service
● mosquitto.service - Mosquitto MQTT Broker
Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-05-10 10:17:41 EDT; 1 day 6h ago
Docs: man:mosquitto.conf(5)
man:mosquitto(8)
...
Main PID: 1110 (mosquitto)
Tasks: 1 (limit: 76805)
Memory: 5.3M
CGroup: /system.slice/mosquitto.service
└─1110 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
May 10 10:17:41 carter systemd[1]: Starting Mosquitto MQTT Broker...
May 10 10:17:41 carter systemd[1]: Started Mosquitto MQTT Broker.
这表明它正在运行、何时启动、进程(主)PID 以及它正在使用的配置文件等。