华硕路由器如何刷梅林(梅林安装使用Mosquitto方法)

无线路由器-网关-dtu

怎么在华硕路由器上安装Mosquitto呢?

1、刷梅林固件,并开启ssh

刷梅林固件的教程,站内及互联网上有很多,并且华硕路由刷梅林也很简单,跟升级官方固件差不多,我就不再赘述了。刷完梅林后开启ssh。

无线路由器-网关-dtu

2、格式化U盘

安装entware必须插U盘,并且用梅林自带安装脚本安装,必须把U盘格式成Ext4等文件格式。不过格式化也很简单,插上U盘。ssh连接到路由器后输入 amtm,再输入fd,然后按照提示一步一步操作即可。

无线路由器-网关-dtu

无线路由器-网关-dtu

3、安装entware

U盘格式化完成后,继续用梅林自带的amtm工具安装entware。依然很简单。输入amtm后再输入ep,然后按照提示,做好选择,最后就能自动安装成功了。

无线路由器-网关-dtu

4、安装Mosquitto服务器程序。在ssh命令行中输入opkg install mosquitto-nossl。

无线路由器-网关-dtu

编辑Mosquitto设置文件。在Mosquitto配置文件夹下输入 nano mosquitto.conf (没安装nano的可以用opkg install nano进行安装),然后复制下面两行到文件最前面。然后CTRL X退出编辑,输入Y,按下enter键保存修改。

allow_anonymous false

password_file /etc/mosquitto/pwfile

无线路由器-网关-dtu

然后在同一目录下(/etc/mosquitto)新建一个文件名为“pwfile”的文件(命令为nano pwfile),然后输入“mqtt用户名(你自己随意设置):密码”,然后同样CTRL X退出编辑,输入Y,按下enter键保存修改。

5、启动Mosquitto

我们修改完配置文件后,在命令行输入mosquitto进行启动。但是发生下面的报警。提示用户mosquitto不存在。

无线路由器-网关-dtu

那么添加用户mosquitto吧,提示添加用户命令不存在

无线路由器-网关-dtu

那么我变通一下用已存在的用户启动mosquitto吧,继续nano mosquitto.conf修改配置文件,把# user mosquitto 前#取消掉,并把mosquitto修改成admin。再次启动mosquitto,依然报用户mosquitto不存在。看来修改用户没起作用。经过查询发现mosquitto并没有自动加载mosquitto.conf配置,我们需要用如下命令,让mosquitto加载mosquitto.conf配置

mosquitto -c /tmp/mnt/mysda/entware/etc/mosquitto/mosquitto -d

这样mosquitto就在后台启动了。

6、但是当我们重启路由时mosquitto并不能自动启动。所以我们需要写个脚本,让路由启动时启动mosquitto。cd /jffs/scripts 然后nano mqttsart,输入下面的内容,然后保存退出。

无线路由器-网关-dtu

然后还需要给该文件执行权限。chmod a+rx /jffs/scripts/*

无线路由器-网关-dtu

最后可以reboot重启了。

7、最后你就可以用你node-red或手机上的MQTTool软件测试MQTT服务器是否正常启动了。

无线路由器-网关-dtu

这次先到这里,homeassistant中使用MQTT的地方我们下次再说。