首页/新闻资讯/正文详情

Eclipse Mosquitto 在 macOS 上通过 Homebrew 安装与使用指南

发布时间:2026/9/23 15:26:25 来源:云帆数科 栏目:资讯中心
Eclipse Mosquitto 在 macOS 上通过 Homebrew 安装与使用指南
Eclipse Mosquitto 在 macOS 上通过 Homebrew 安装与使用指南【免费下载链接】mosquittoEclipse Mosquitto - An open source MQTT broker项目地址: https://gitcode.com/gh_mirrors/mos/mosquitto本指南围绕 Eclipse Mosquitto 项目官方发布的一则安装通告展开得益于社区贡献者 Adam Rudd 的工作Mosquitto MQTT 代理很早就被收录进 macOS 的 Homebrew 软件包管理器用户只需一条命令即可完成安装。文章将完整介绍从安装 Homebrew 到brew install mosquitto、再到启动代理、配置安全认证与自启动的完整实战链路并结合本仓库的源码、配置模板与手册页说明每条命令和配置项背后的实现依据。背景Mosquitto 与 Homebrew 的结缘本仓库 www/posts/2011/03/mosquitto-in-mac-homebrew.md 是 Mosquitto 项目官方博客 2011 年 3 月发布的一则通告原文只有一句话核心内容得益于 Adam Rudd 完成的工作mosquitto 现在可以通过 Mac 的 Homebrew 包管理器进行安装。同期的另一篇新闻 www/posts/2011/01/mqtt-news.md 也确认了这条信息A homebrew recipe for installing mosquitto on Mac by Adam Rudd由 Adam Rudd 提供的在 Mac 上安装 mosquitto 的 Homebrew 配方。这条发布于 2011 年的通告奠定了 Mosquitto 在 macOS 生态中的官方分发渠道之一并沿用至今。在当前仓库的官方下载页 www/pages/download.md 中Mac 安装方式仍然明确写着Mosquitto can be installed from the homebrew project. See brew.sh and then usebrew install mosquitto也就是说Homebrew 安装是 Mosquitto 项目官方认可的 macOS 二进制分发方式与 Windows 安装包、Debian/Ubuntu 仓库、snap 等方式并列。第一步安装 Homebrewbrew install mosquitto的前提是 macOS 上已经具备 Homebrew 包管理器。Homebrew 是 macOS 上最流行的开源软件包管理器它会把软件安装到独立的 Homebrew 前缀目录并与系统自带的软件互不干扰。如果你的机器上还没有 Homebrew需要先访问 Homebrew 官网brew.sh按官方指引完成安装。需要注意Homebrew 安装完成后不同架构的 Mac 其 Homebrew 前缀不同Apple SiliconM 系列芯片MacHomebrew 默认安装在/opt/homebrewIntel MacHomebrew 默认安装在/usr/local。安装完成后建议先执行brew --version确认命令行工具可用再进行下一步。第二步一键安装 Mosquitto在终端中执行brew install mosquitto这条命令会完成以下工作解析 Mosquitto 的依赖如 cJSON、OpenSSL 等并自动安装下载预编译的 Mosquitto 二进制包将mosquitto、mosquitto_pub、mosquitto_sub、mosquitto_rr、mosquitto_ctrl、mosquitto_passwd、mosquitto_signal等可执行文件安装到 Homebrew 的 bin 目录该目录通常已加入 PATH。作为参照从源码构建时 Mosquitto 的依赖在 README-compiling.md 中列得很清楚cJSON 为必需依赖opensslWITH_TLS、sqlite3WITH_SQLITE用于 broker 持久化、libmicrohttpdWITH_HTTP_API、libeditWITH_EDITLINE用于 mosquitto_ctrl 交互式 shell等为可选依赖。Homebrew 的 formula 会替你处理好这些依赖关系。验证安装结果安装完成后可以通过以下命令确认 broker 可执行文件就位mosquitto -h输出会列出 broker 支持的命令行选项。根据仓库中的手册 man/mosquitto.8.xml这些选项包括选项说明-c config file/--config-file从配置文件加载设置若不指定broker 将监听 1883 端口并仅绑定回环接口使用 mosquitto.conf 中的默认值-d/--daemon以后台守护进程方式运行-p port/--port指定监听端口可多次指定以监听多个端口-q/--quiet关闭所有日志输出等价于配置文件中log_type none--test-config仅校验-c指定的配置文件是否合法而不启动 broker配置合法返回 0否则返回非 0-v/--verbose开启详细日志等价于log_type all同时mosquitto是 Eclipse Mosquitto 项目提供的 MQTT 代理broker本体支持 MQTT v5.0、v3.1.1 和 v3.1 三个协议版本见 README.md 与 man/mosquitto.8.xml。第三步快速启动 broker 并完成首次收发安装完成后最简单的启动方式是直接运行mosquitto根据 README.md 的快速开始说明此时 broker 允许匿名无需认证连接但仅限本机访问适合做初步的功能验证。若你安装的是二进制包broker 一般会自动启动或提供服务管理脚本手动启动时默认监听 1883 端口。启动后在另一个终端中订阅主题mosquitto_sub -t test/topic -v再开一个终端发布消息mosquitto_pub -t test/topic -m hello world订阅端即可收到hello world。mosquitto_pub与mosquitto_sub是项目自带的命令行客户端工具随 broker 一同安装仓库中还有mosquitto_rr请求/响应模式客户端它们的实现分别位于 lib/ 与 client/ 目录。注意以匿名方式启动的 broker 仅建议用于本机测试。若要让其他机器上的客户端接入必须编写配置文件并通过mosquitto -c /path/to/mosquitto.conf启动并明确配置监听地址与认证方式详见下文。第四步通过配置文件启用监听与认证从 2.0 版本起-p指定的监听端口只绑定回环接口见 man/mosquitto.8.xml 对-p的说明要想对外提供服务必须使用配置文件定义listener。仓库根目录自带一份完整带注释的配置模板 mosquitto.conf可以复制到你的工作目录作为起点例如# 监听 1883 端口绑定到所有接口对外服务 listener 1883 # 允许匿名访问测试环境 allow_anonymous truelistener支持三种形式见 mosquitto.conf 的说明listener port-number listener port-number ip-address/host-name listener 0 /path/to/unix-socket即纯端口、端口加 IP/主机名绑定、以及 Unix socket 三种监听方式。默认情况下 listener 会尝试监听所有受支持的 IP 协议版本也可以通过ipv4/ipv6关键字强制协议。启用用户名密码认证生产环境不建议开放匿名访问。Homebrew 安装会同时带来mosquitto_passwd工具用于维护用户名/密码文件其用法见 man/mosquitto_passwd.1.xml# 创建密码文件并新增用户-c 表示新建文件 mosquitto_passwd -c /path/to/passwd username # 在已有文件中追加用户 mosquitto_passwd /path/to/passwd anotheruser # 命令行直接指定密码脚本场景 mosquitto_passwd -b /path/to/passwd username password # 使用 sha512 哈希 mosquitto_passwd -H sha512 /path/to/passwd username # 删除用户 mosquitto_passwd -D /path/to/passwd username然后在配置文件中启用listener 1883 allow_anonymous false password_file /path/to/passwd这样所有客户端连接都必须提供 MQTT 用户名/密码。若需要按主题做更细粒度的访问控制还可以参考acl_file选项见 mosquitto.conf 中相关说明或使用项目官方推荐的动态安全插件见 plugins/dynamic-security/README.md通过mosquitto_ctrl dynsec系列命令在运行时创建客户端、分组、角色并授予主题权限。日志与持久化mosquitto.conf 中还提供两类常用设置log_dest日志输出目标可多次指定。例如log_dest stderr、log_dest file /var/log/mosquitto.log或用log_dest none关闭日志persistence是否将内存中的 retained 消息与持久订阅保存到磁盘数据库。默认关闭需要时开启persistence true该功能由仓库中的 sqlite3 支持WITH_SQLITE见 README-compiling.md。修改完配置后建议先用mosquitto --test-config -c /path/to/mosquitto.conf校验配置合法性再正式启动mosquitto -c /path/to/mosquitto.conf第五步开机自启动与后续管理Homebrew 自带服务管理机制brew services可以让 Mosquitto 在登录时自动运行并在后台常驻brew services start mosquitto常用管理命令还有brew services stop mosquitto停止服务brew services restart mosquitto重启服务修改配置后常用brew services list查看服务运行状态。此外Mosquitto 本身也支持mosquitto -d以守护进程方式运行见 man/mosquitto.8.xml并支持通过 SIGHUP 信号重载配置文件仓库 man/mosquitto.8.xml 的 SIGNALS 部分有说明apps/mosquitto_signal/ 提供了便捷的信号发送工具mosquitto_signal。日常升级与卸载同样走 Homebrew 标准流程brew upgrade mosquitto # 升级到最新版本 brew uninstall mosquitto # 卸载补充从源码在 macOS 上构建如果你需要自定义编译选项例如在 config.mk 中通过WITH_TLS、WITH_BRIDGE、WITH_WEBSOCKETS、WITH_SRV等开关裁剪功能也可以跳过 Homebrew 的预编译包直接基于源码构建。根据 README-compiling.md从 2.1 版本起官方推荐在所有平台统一使用 CMake包括 macOScmake -B build cmake --build build相比brew install mosquitto一行命令源码构建的优势在于可以精确控制特性开关、安装路径与插件集适合嵌入式或定制化场景而 Homebrew 安装则胜在依赖自动解析、开箱即用、可配合brew services管理生命周期是日常开发与快速上手的首选。总结从 2011 年 Adam Rudd 贡献首个 Homebrew 配方起brew install mosquitto一直是 macOS 上安装 Eclipse Mosquitto 的官方推荐途径。完整链路为安装 Homebrew →brew install mosquitto→ 直接运行mosquitto做本机验证或用mosquitto -c mosquitto.conf加载监听与认证配置对外提供服务 → 通过mosquitto_passwd/mosquitto_ctrl dynsec强化安全 → 用brew services start mosquitto实现常驻。每一步都能在本仓库找到对应的配置模板mosquitto.conf、手册页man/或源码实现src/、lib/、client/作为依据方便你继续深入。【免费下载链接】mosquittoEclipse Mosquitto - An open source MQTT broker项目地址: https://gitcode.com/gh_mirrors/mos/mosquitto创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

字体大实战项目源码拆解:3个技巧搞定UI自适应
字体大实战项目源码拆解:3个技巧搞定UI自适应

字体大实战项目源码拆解:3个技巧搞定UI自适应 版本升级后 API 全变了,以前写好的代码直接报错,这种崩溃感只有做过 实战项目 的人才懂。很多前端新手在调整界面时,一遇到“字体大”这种需求,就只知道死磕 font-size… · 2026/9/23 15:26:25

PLM零部件管理蓝图设计:分类、编码与BOM协同落地指南
PLM零部件管理蓝图设计:分类、编码与BOM协同落地指南

简介:这份PPT面向PLM项目中的产品数据管理、研发标准化与零部件主数据治理方向,适合PLM实施顾问、制造企业研发信息化人员及零部件管理模块设计者参考。资源围绕GPLM项目零部件管理未来蓝图展开,从需求描述、方案总揽到功能设计逐层推进&… · 2026/9/23 15:26:19

基于BP神经网络与近红外光谱的汽油辛烷值预测MATLAB实现
基于BP神经网络与近红外光谱的汽油辛烷值预测MATLAB实现

简介:面向数据分析与机器学习初学者,围绕使用BP神经网络预测汽油辛烷值这一具体任务,切实解决工业场景中辛烷值难以快速准确测量的痛点,提供从数据理解、网络结构搭建、隐藏层设计、参数设置到训练评估的完整实践案例。压缩包共2个… · 2026/9/23 15:26:12

甘肃兰航低空智能科技|兰州智能AI无人机巡检平台怎么样?核心优势一次性讲透
甘肃兰航低空智能科技|兰州智能AI无人机巡检平台怎么样?核心优势一次性讲透

在各类设备、场地、设施的日常运维工作中,巡检是必不可少的基础工作。传统人工巡检模式耗时费力、局限性较强,而智能 AI 无人机巡检逐渐成为替代传统模式的主流方式。很多人好奇,AI 无人机巡检到底怎么样?优势多不多?本篇用通俗直白的语言&… · 2026/9/23 15:59:00

PaddleHub spinalnet_res50_gemstone:基于 SpinalNet-ResNet50 的宝石图像分类模块实战指南
PaddleHub spinalnet_res50_gemstone:基于 SpinalNet-ResNet50 的宝石图像分类模块实战指南

PaddleHub spinalnet_res50_gemstone:基于 SpinalNet-ResNet50 的宝石图像分类模块实战指南 【免费下载链接】PaddleFormers PaddleFormers is an easy-to-use library of pre-trained large language model zoo based on PaddlePaddle. 项目地址: https://gitcod… · 2026/9/23 15:59:00

Prisma 集群的 Docker 部署指南:从 docker-compose 配置到本地调试与安全加固
Prisma 集群的 Docker 部署指南:从 docker-compose 配置到本地调试与安全加固

Prisma 集群的 Docker 部署指南:从 docker-compose 配置到本地调试与安全加固 【免费下载链接】prisma1 💾 Database Tools incl. ORM, Migrations and Admin UI (Postgres, MySQL & MongoDB) [deprecated] 项目地址: https://gitcode.com/gh_mirr… · 2026/9/23 15:58:54

PaddleDetection 快速开始实战:10 分钟完成道路标志检测模型的训练、评估与推理
PaddleDetection 快速开始实战:10 分钟完成道路标志检测模型的训练、评估与推理

人工智能深度学习计算机视觉 【免费下载链接】PaddleDetection Object Detection toolkit based on PaddlePaddle. It supports object detection, instance segmentation, multiple object tracking and real-time multi-person keypoint detection. 项目地址: htt… · 2026/9/23 15:58:53

5个致命坑让日和坊技能变废铁?这份保姆级教程帮你避开
5个致命坑让日和坊技能变废铁?这份保姆级教程帮你避开

5个致命坑让日和坊技能变废铁?这份保姆级教程帮你避开 很多刚接触阴阳师PVE的萌新,手里攥着日和坊,觉得“这不就是个奶妈吗?加血就行”,结果在打高难副本时频频翻车。要么治疗量跟不上伤害,要么被控得动不了,要么能量枯竭导致全队暴毙。学会挂技能… · 2026/9/23 15:58:47

电力窃漏电识别:工业级时序建模与业务落地实战
电力窃漏电识别:工业级时序建模与业务落地实战

简介:本资源是一份面向Python初学者与数据挖掘入门者的实战教学包,聚焦电力行业典型问题——窃漏电用户自动识别,通过完整项目流程帮助读者掌握从数据清洗、特征工程到模型训练与评估的全链路技能。资源共13个文件,含4个.npy数据文… · 2026/9/23 15:58:41

3招搞定手机怎么下载微信面试难题实战项目解析
3招搞定手机怎么下载微信面试难题实战项目解析

3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧
Win7无线热点配置工具源码解析:解决API失效的3个实战技巧

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧 Win7无线热点配置工具在Win10/11上跑不动?不是你的问题,是版本升级后 API 全变了。很多老项目里的 netsh wlan… · 2026/9/23 0:00:36

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码