一、整体流程
更新源 → 安装 Mosquitto → 安装 gedit → 配置允许连接 → 重启服务 → 测试验证
二、完整成功步骤
1. 更新系统软件源
bash
运行
sudo apt update2. 安装 Mosquitto 服务端 + 客户端工具
bash
运行
sudo apt install -y mosquitto mosquitto-clients3. 安装图形编辑器 gedit(你使用的方式)
bash
运行
sudo apt install -y gedit4. 打开配置文件(允许局域网 / Qt 连接)
bash
运行
sudo gedit /etc/mosquitto/mosquitto.conf在文件最后添加两行(目的是让局域网的客户端访问服务器,不然只能本机能访问服务器),保存并关闭:
plaintext
listener 1883allow_anonymous true
5. 重启 Mosquitto 使配置生效
bash
运行
sudo systemctl restart mosquitto6. 设置开机自启(默认已开启,确认即可)
bash
运行
sudo systemctl enable mosquitto7. 查看运行状态(确认成功)
bash
运行
sudo systemctl status mosquitto显示 active (running) = 服务运行成功
三、测试 Mosquitto 是否正常(必测)
打开 两个终端:
终端 1(订阅消息):
bash
运行
mosquitto_sub -t test/topic终端 2(发布消息):
bash
运行
mosquitto_pub -t test/topic -m "hello mosquitto"订阅端收到消息 = MQTT 服务器完全可用
四、Qt 连接本地 Mosquitto 配置
cpp
运行
client.setHostname("127.0.0.1");client.setPort(1883);
五、核心成功经验(最重要)
- 银河麒麟直接用 apt 安装,无需源码编译
- 默认不允许外部连接,必须修改配置文件
- 用 gedit 图形编辑,简单、不易出错
- 配置修改后必须重启服务才生效
- 服务默认开机自启,Qt 程序可直接连接
六、最终状态
✅ Mosquitto MQTT 服务器安装成功✅ 允许匿名连接✅ 允许局域网 / 本机连接✅ 开机自启✅ 可与 Qt6.8.3 MQTT 客户端正常通信
本人电子信息工程专业,工作逼迫写qt软件,一步一步学习qt,从非软件专业视角学习qt,遇到很多奇葩问题。
夜雨聆风