OS环境:CentOS6.5

1、安装依赖

yum -y install gcc gcc-c++ openssl-devel c-ares-devel libuuid-devel wget cmake

2、为mosquitto增加websocket支持,安装文本socket库文件 ,解压缩

# tar zxfv libwebsockets-v1.6-stable.tar.gz

  

3、运行 websocket

# cd libwebsockets-v1.6-stable

# mkdir bulid

# cd bulid

# cmake ..

# make && make install

  

4、安装mosquitto

下载mqtt--- mosquitto-1.4.8.tar.gz, 解压缩

# tar zxfv mosquitto-1.4.8.tar.gz

  

5、修改config.mk文件以使后面编译的mosquitto文件支持websocket

# cd /mosquitto-1.4.8

  

mosquitto-1.4.8目录下的config.mk文件,把config.mk 文件中的 WITH_WEBSOCKETS:=no 改为yes

保存后,执行

# make && make install

# ln -s /usr/local/lib/libwebsockets.so.6 /usr/lib64/libwebsockets.so.6

# groupadd mosquitto

# useradd -g mosquitto mosquitto

6、创建mosquitto.conf、pwfile文件

# cd /etc/mosquitto/

如果该目录下没有mosquitto.conf 和 pwfile 
执行

# cp mosquitto.conf.example mosquitto.conf

# cp pwfile.example pwfile

  

然后修改 文件mosquitto.conf ,

511 allow_anonoymous true
.
.
.
537 password_file /etc/mosquitto/pwfile

  

并在文件最后加入

port 1883
listener 8080
protocol websockets

  

7、启动mqtt

# mosquitto -c /etc/mosquitto/mosquitto.conf

  

8、测试 
另外打开两个终端 
终端一: 
 这里其实就是订阅一个主题为”mqtt”的消息。”mqtt”为主题名,假如有客户端发布了主题为”mqtt”的消息,这个终端将会收到消息的内容。

mosquitto_sub -t mqtt

  

终端二: 
 这里就是发布一个主题为”mqtt”,内容为”hello mqtt”的消息。

mosquitto_pub -h localhost -t mqtt -m "hello mqtt"

  

这时终端一会收到:hello mqtt

9、错误解决

在安装过程中,或测试过程中可能会遇到错误:

mosquitto_sub: error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory

解决方法:

# cat /etc/ld.so.conf

# echo "/usr/local/lib">>/etc/ld.so.conf

# ldconfig

  

MQTT--linux安装部署(CentOS)的更多相关文章

  1. Linux安装部署jdk+tomcat+mysql

    Linux安装部署测试环境 1. JDK安装下载 安装 yum search jdk 找到合适的jdk版本,以下图中的版本为例 yum install java-1.8.0-openjdk.x86_6 ...

  2. Linux安装部署FTP服务器

    Linux安装部署FTP服务器   本文章会将安装FTP服务器的步骤以及一些遇到的问题来记录下 因为项目中要与第三方对接数据,需要用到FTP服务器以提供他们每天上传数据,因为之前在本地的VMware虚 ...

  3. Linux安装部署Redis(超级详细)

    前言 网上搜索了一筐如何在Linux下安装部署Redis的文章,各种文章混搭在一起勉强安装成功了.自己也记录下,方便后续安装时候有个借鉴之处. Redis版本 5.0.4 服务器版本 Linux Ce ...

  4. linux安装部署Nginx

    两个参考地址: NGINX的百度百科:https://baike.baidu.com/item/nginx/3817705?fr=aladdin NGINX的中文网站:http://www.nginx ...

  5. Linux安装部署

    Linux桌面发行版 UbuntuCentOSRed heat LinuxOracle Linux 一.系统安装 1.系统分区 若手动分区swap和根分区必须创建,推荐创建boot分区. /----- ...

  6. MQTT linux centOS7 部署

    系统版本centos7 X64 1.设置保存安装包路径 # cd /usr/local/src 2.开始下载源包 官网资源: https://mosquitto.org/files/source/ # ...

  7. Linux 安装部署 Redis

    一.Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...

  8. Linux安装软件-CentOS和Ubuntu介绍

    开发十年,就只剩下这套架构体系了! >>>   不同Linux发行版的软件安装会有不同的方式,其中CentOS安装软件的主要方式是rpm和yum,Ubuntu可以使用apt-get, ...

  9. [Linux] 安装JBoss - CentOS

    CentOS安装Jboss 7 AS方法:(安装java跳过) 1.首先下载JBoss 7 AS的zip文件. 2.使用SSH,上传到CentOS中.(如何使用的是wget命令下载,可以跳过些步),这 ...

随机推荐

  1. 【原创】Oracle 11g R2 Client安装配置说明(多图详解)

    1. 准备工作 安装Oracle11gR2client的时候,如果刚从网上下载的Oracle client,可能无法再2008 R2或者2012 R2的服务器上面运行. 报错:[INS-13001]环 ...

  2. JDK7集合框架源码阅读(七) ArrayDeque

    基于版本jdk1.7.0_80 java.util.ArrayDeque 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to li ...

  3. SpringMVC + Hibernate + MySQL 的简易网页搭建(Control实现篇)

    在完成Dao层的实现之后,接下来我们需要继续开发我们网页的Control层以及View层. 从开发网页的角度来说: 1. Control层之下的Dao层和Service层可以看做是一个网页的底层负责与 ...

  4. (3)C#基本语法

    1.C#标识符 标识符是用来识别类.变量.函数或任何其它用户定义的项目. 在 C# 中,类的命名必须遵循如下基本规则: 标识符必须以字母开头,后面可以跟一系列的字母.数字.下划线.标识符中的第一个字符 ...

  5. Jmeter正则表达式提取器--将上一个请求的结果作为下一个请求的参数

    正则表达式提取器是一个后置处理器,作用是在请求完成后,从响应数据中截取一部分字符串保存到变量中,以便下一个请求使用 1.首先在线程组下添加两个HTTP请求, 2.添加好两个HTTP请求后,在每个HTT ...

  6. [POI2015]Kinoman

    题目大意: 给你一个长度为n的数列f,f中共有m种不同的数,每种数都有一个权值w[i]. 你可以选定一个f中的区间,定义区间的权值为这一区间只出现一次的数的权值和. 问权值最大的区间的权值是多少? 思 ...

  7. 监控SQL Server正在执行的SQL语句和死锁情况

    原文:监控SQL Server正在执行的SQL语句和死锁情况 SELECT [Individual Query] = SUBSTRING(qt.TEXT, er.statement_start_off ...

  8. 快速创建一个的指定大小的内容全为0xFF的文件

    比如需要创建一个大小为2KB,内容为全0xFF的文件 步骤只有两步: 第一步. dd if=/dev/zero of=./test.img bs=1 count=2048 第二步. 使用WinHex文 ...

  9. WCF 与其它技术的比较

    以下特性WCF都支持 特性 Web Service .Net Remoting Enterprise Services WSE(WS Enhancements) MSMQ 具有互操作性的Web服务 支 ...

  10. CSS的7种常用的垂直居中的方法

    1.绝对定位上下百分之五十然后上外边距做外边距都是他的宽高的一半 #child{ width: 200px; height: 150px; position: absolute; left: 50%; ...