惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
The GitHub Blog
The GitHub Blog
J
Java Code Geeks
Engineering at Meta
Engineering at Meta
N
Netflix TechBlog - Medium
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
罗磊的独立博客
MongoDB | Blog
MongoDB | Blog
B
Blog RSS Feed
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
有赞技术团队
有赞技术团队
T
Tailwind CSS Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Vercel News
Vercel News
腾讯CDC
博客园 - 聂微东
The Cloudflare Blog
F
Fortinet All Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog
Last Week in AI
Last Week in AI
B
Blog

博客园 - 前端小小菜

本地 Android 设备长期在线 + 云服务器对外提供签名接口(可落地方案) Got minus one from a read call, connect lapse 夸克等网盘作为小爱音源方案 pigx 改造升级vite,webpack+vue2 升级 vite+vue2 记录 QQ幻想开心辞典答题器,自动答题器《FO回忆》 avue的一些踩坑记录 captcha-trainer运行环境使用腾讯云十分钟搭建教程 关于宝塔会自动上传网站访问数据的问题 charles for centos 实现map local/map remote功能 nfc reader iso-7816 读卡器参考资料 博文阅读密码验证 - 博客园 win7 移动用户目录的mklink命令 mac下electron打包exe 出现白屏问题的记录 husky7 + eslint +prettier配置vue2.x 开发环境 苹果与安卓万年不改的臭毛病 哪个城市更容易考上好大学——全国各省历年中考高考升学率统计 哈哈哈, 腾讯云服务器被黑 sketch相关 vue ssr 若干问题整理(基于easywebpack)
小米路由器3G 刷openwrt并安装cups一拖多台打印机攻略
前端小小菜 · 2021-10-31 · via 博客园 - 前端小小菜

R3G刷openwrt,这篇写的非常好了。

https://www.wunote.cn/article/3709/

为了防止原文被和谐或者丢失,复制一下备份。

——————————————————————————————————————————————

最近,在内网配置AdGuardHome服务以截拦部分广告,可是,在配置完成AdGuardHome后,准备将IPV4/IPV6 DNS全部更改为内网服务器时,却遇到一个很无语的问题—小米路由器3G的固件似乎对IPV6支持不是非常完善,无法将我的内网服务器设为IPV6 DNS服务器。在经过一番折腾无果后,打算把路由器刷成OpenWRT,因为小米官方固件真的太难用了,真的和屎一样难用

废话不多说,开刷!

1.在开始之前

1.1.下载开发版固件

小米官网下载:网页链接

未知下载站:网页链接

1.2.下载开启SSH固件和保存SSH账号密码

请打开网页链接,登录后,即可查看你当前登录小米账号绑定的所有路由器,选择你要开启SSH的路由器,下载工具包和保存一下提供的ROOT密码(注意,开启SSH后将会失去保修)

https://www.wunote.cn/wp-content/uploads/2021/01/20210127192639-1024x621.png

1.3下载Breed

官方下载:网页链接

未知下载站下载:网页链接

1.4下载OpenWRT

此处提供的OpenWRT版本:19.07.6

官方下载:网页链接

未知下载站下载:网页链接

注意要下载4个文件(initramfs-kernel、squashfs-kernel1、squashfs-rootfs0、squashfs-sysupgrade),如果从我下载站下载的话..我已经把这些文件全部打包成压缩包了

1.5.安装WinSCP和PuTTY

因为过程太简单了,所以….就不具体讲啦

2.更新开发版

将下载的开发板固件直接在常用设置–>系统状态–>升级检测–>手动升级处升级即可。因为过程非常简单,就不截图啦,2333

3.开启SSH服务

3.1.准备U盘

将U盘格式化为FAT32格式,然后将下载的工具包复制到U盘中,并且保证文件名为miwifi_ssh.bin

https://www.wunote.cn/wp-content/uploads/2021/01/20210127195810.png

3.2.开始刷机

断开小米路由器的电源,然后插入U盘到USB接口,接着先按住reset键,然后接通电源。待指示灯变为黄色闪烁时,即可松手啦

等待3-5秒后即可刷入成功,然后会自动重启,并且开启SSH权限

4.刷入Breed

4.1.上传Breed固件

按照图中的指示使用WinSCP连接一下路由器

https://www.wunote.cn/wp-content/uploads/2021/01/20210127200307.png

连上后,把breed-mt7621-xiaomi-r3g.bin上传到/tmp文件夹

https://www.wunote.cn/wp-content/uploads/2021/01/20210127201133.png

4.2.刷入Breed

接着,就是刷入Breed了,命令非常简单,但是请慎重,不要再执行过程中断电,否则就要用编程器刷机了。。。(下面命令中的/tmp/breed-mt7621-xiaomi-r3g.bin可以替换为你上传的breed的绝对路径)

mtd -r write /tmp/breed-mt7621-xiaomi-r3g.bin Bootloader

https://www.wunote.cn/wp-content/uploads/2021/01/20210127201401.png

5.刷入OpenWRT

本以为刷入了Breed以后就简单了,什么都不用管了,结果,现实狠狠的给了我一个大嘴巴子,这路由器似乎有kernel0和kernel1,还有在Breed下进行一些设置,我没有设置,刷入固件以后出现了一些奇奇怪怪的bug,比如重启配置文件就丢失什么的

5.1.在官方系统中刷入OpenWRT

此步不会的可以参照一下“刷入Breed”这一步骤,都是刷入固件,大同小异

首先,我们要上传OpenWRT镜像到/tmp目录(initramfs-kernel、squashfs-kernel1、squashfs-rootfs0)使用一下命令进行刷机(注意:请把下面命令中的bin文件自行替换为你bin文件的实际文件名和路径)

mtd write openwrt-19.07.6-ramips-mt7621-xiaomi_mir3g-initramfs-kernel.bin kernel0
mtd write openwrt-19.07.6-ramips-mt7621-xiaomi_mir3g-squashfs-kernel1.bin kernel1
mtd write openwrt-19.07.6-ramips-mt7621-xiaomi_mir3g-squashfs-rootfs0.bin rootfs0

刷完后直接断电即可,然后通电并按reset键进Breed设置一下(断电的情况下按住reset,通电10秒左右,灯黄闪松开

5.2.修改Breed配置

首先,你要在小米R3G设置栏目找到并删除normal_firmware_md5,因为他似乎会影响启动;然后你要在环境变量编辑中添加一个xiaomi.r3g.bootfw,值为2(至于为啥要这么搞,因为….breed在没有这个值的时候,默认启动kernel0。虽然看上去似乎没啥影响,但是不知道为什么,没有这个环境变量我的路由器配置重启就全没了)

https://www.wunote.cn/wp-content/uploads/2021/01/20210128142251.png

5.3.在系统中刷入squashfs

重启退出Breed,进入OpenWRT后在System–>Backup / Flash Firmware处直接刷入squashfs-sysupgrade(openwrt-19.07.6-ramips-mt7621-xiaomi_mir3g-squashfs-sysupgrade.bin),等待系统自动重启即可

https://www.wunote.cn/wp-content/uploads/2021/01/20210128142418-1024x456.png

6.完成!

终于摆脱了小米原生垃圾固件的束缚,投入了OpenWRT的怀抱!Yes!

另外…..如果本文存在任何错误,欢迎在评论区指出!

——————————————————————————————————————————————

后面就是进行cups插件的安装以及多台打印机的设置。恩山论坛的 https://www.right.com.cn/forum/thread-172494-1-1.html 这篇攻略对此版本的openwrt补适用,会提示找不到cups。

于是只能继续搜索,找到这篇,

https://www.right.com.cn/FORUM/thread-4054457-1-1.html

按照这个方法,需要自行到gitee下载对应平台的插件包并安装。

安装完成后的设置就是一步步的添加打印机了,那个很多文章都可以搜到  就补再赘述了。

最后一步,就是实现无线连接这台打印路由,还要能上网的设置。 其实就是在openwrt的 无线中,将网卡添加两次,第一次用来连接主路由上网,第二个用来实现wifi热点。这样你的电脑连接这个wifi热点就可以实现打印并同时可以上网了。

再就是关于界面中文,需要 opkg update命令,但是由于openwrt官网到国内的速度蜗牛一般,所以一般推荐修改配置文件使用国内镜像。

#替换openwrt 升级源

#https://mirrors.ustc.edu.cn/help/openwrt.html

#https://mirrors.ustc.edu.cn/

sed -i 's/downloads.openwrt.org/mirrors.ustc.edu.cn\/openwrt/g' /etc/opkg.conf

sed -i 's/downloads.openwrt.org/mirrors.ustc.edu.cn\/openwrt/g' /etc/opkg/distfeeds.conf

安装中文包以及ssl证书

opkg update
opkg install ca-certificates luci-ssl-openssl
opkg install luci-i18n-base-zh-cn

防丢失复制:

——————————————————————————————————————————————————————————

我最近更换了HomeLEDE固件,但发现其没有集成网络打印机。在尝试安装使用p910nd后发现打印机没有反应,无法使用。某bing一番后,发现了CUPS,便打算折腾一番。

一、下载安装CUPS

  • 看了别人的资料后,原本以为可以直接在opkg中安装使用。但我的源里却没有这个包。无奈之下,一番搜索,发现有大佬提供ipk包。点此下载,有能力的大佬也可以自己编译,源码地址
  • 根据自己平台下载好相应的包(有十多个都是)后,上传到LEDE的tmp目录下,(其中cups-filters这个包好像和cups不太兼容,我选择删去cups-filters这个包,不安装它),在ssh下输入命令opkg install /tmp/*.ipk --force-depends来安装这些包。
    注:如果安装了kmod-usb-printer,该模块可能与cups存在兼容问题,请使用下面命令卸载opkg remove kmod-usb-printer
  • 安装完成后,打开/etc/cups/cupsd.conf文件。对应更改下方配置
  1. 这个配置打开网页配置,和配置中文
  2. WebInterface Yes +DefaultLanguage zh
  3. 下方是设置允许访问的IP地址范围,根据自己情况配置,如你LAN_IP为192.168.1.1,则改成如下方所示
  4. <Location />
  5.   Order Allow,Deny
  6.   Allow From 127.0.0.1
  7.   Allow From 192.168.1.0/24
  8. </Location>
  9. 下方是设置允许访问使用admin账户的IP地址范围,如下设置即可
  10. <Location /admin>
  11.   AuthType Basic
  12.   AuthClass Anonymous
  13.   Order Allow,Deny
  14.   Allow From 127.0.0.1
  15.   Allow From 192.168.1.0/24
  16. </Location>

复制代码

然后,输入ssh命令/etc/init.d/cupsd restart重启CUPS服务。

二、在CUPS上添加打印机

三、WIN系统上添加该打印机