centos7 安装 mosquitto
第 1 步:安装支持的组件
yum install gcc gcc-c++ -y
yum install openssl-devel -y
yum install c-ares-devel -y
yum install libuuid-devel -y
第 2 步:下载源码
wget http://mosquitto.org/files/source/mosquitto-1.4.5.tar.gz
tar zxfv mosquitto-1.4.5.tar.gz
cd mosquitto-1.4.5
# 编译安装
make
sudo make install
在当前目录。进入mosquitto服务文件存放的文件夹
cd service/systemd
这里我将mosquitto.service.simple重命名为mosquitto.service
然后拷贝至/etc/systemd/system
顺便看下/etc/mosquitto/下又没有mosquitto.conf文件,没有就把里面的mosquitto.conf.example重命名为mosquitto.conf
编辑mosquitto.service
ExecStart=/usr/local/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
路径是否正确
第 3 步:开启mosquitto服务
sudo systemctl start mosquitto
第 4 步:开启mosquitto服务
service mosquitto start
sudo systemctl status mosquitto
使用systemctl命令自启动:
systemctl list-unit-files:查看软件开机自启情况
systemctl enable mosquitto 使mosquitto开机自启
添加指定需要开放的端口:
firewall-cmd --add-port=1883/tcp --permanent
重载入添加的端口:
firewall-cmd --reload
查询指定端口是否开启成功:
firewall-cmd --query-port=1883/tcp
查看mosquitto的进程
命令:ps -aux | grep mosquitto
再次运行会发现错误出现了变化
ExecStart=/usr/local/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf (code=exited, st
运行命令
sudo /usr/local/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf -v
可以看到错误信息 Error: Invalid user ‘mosquitto’ 表明,Mosquitto 配置文件中指定的用户 mosquitto 无法被找到或无效。
确保系统中存在名为 mosquitto 的用户。如果不存在,可以创建这个用户:
sudo useradd -r -s /sbin/nologin mosquitto
再次重启查看
sudo systemctl daemon-reload
sudo systemctl restart mosquitto
sudo systemctl status mosquitto
正常。
ps:任意终端运行mosquitto命令会报找不到该命令,而在正常的机器不会这样,可见还是install出了问题,不过没找到安装失败的原因
浙公网安备 33010602011771号