深夜刷机 OPENWRT 失败来吐个槽--别再刷你的狗屎路由器了

2023-08-05 01:25:35 +08:00
 m1nm13

基本这玩意到了一个瓶颈.从本质上来说,硬件分为 nand 和 nor flash .

nand 有坏块. nor 很小

1.你玩 nor 就会遇到 flash 太小导致各种 ipk 塞不进去,或者预留空间太小导致被各种运行日志塞满,文件系统报错,路由崩溃

2.你玩 nand,那你可就享了大福了.因为 Openwrt 喜欢用 squashfs,这是一个高压缩,不支持坏块处理的文件系统.这意味着你得保证你的 rootfs 分区的前 X 块没有坏块(x 取决于固件大小).每台机器坏块位置都不一样,

a.可能你运气好,没有问题,喜滋滋论坛发帖.

b.可能你运气一般,坏块刚好在一些无关紧要的部分,可能只是稳定性问题.

c.更有可能你运气贼差,要么在 uboot 刷入的时候就直接挂载文件系统崩溃,反复重启.要么文件系统报错,勉强进了系统,但是对他的任何读写都会报 I/O 错误.

你要是觉得 squashfs 就辣鸡,我要上 UBIFS,好家伙,编出来的固件比你的 nand 都大.塞不进去.而且你还得考虑需要改 uboot 启动 cmdline

更痛苦的是刷机固件论坛充斥着牛鬼蛇神.各种垃圾固件,意想不到的问题.虽然我感谢对方提供了免费的固件,但是这个质量实在太过感人.终于在某大神处刷了一个有问题的 UBOOT,直接完全砖了.

又一次刷机失败.又是 nand.以前耍过几个小米的 AC2100 已经够恶心了.现在又刷飞了.痛苦 别再刷你的狗屎路由器了.它就是一坨狗屎

13151 次点击
所在节点    OpenWrt
86 条回复
yaott2020
2023-08-06 07:53:45 +08:00
想要好用就加钱,找个 openwrt 支持的路由器,刷官方发布的固件,哪需要操心这么多。

别去捡那些 k2p 之流的垃圾了,折腾到最后都不会符合你的期望的。

前两周换了两台 360t7 ,wifi6 支持,加买个 usb 转 ttl ,直接刷 openwrt 官方固件,速度很满意,全部加起来也就 260 。哪里需要什么编程器,自己小心点就行。
jackOff
2023-08-06 08:56:12 +08:00
加入我树莓派阵营吧,使劲造也就是个 sd 卡的问题
levenwindy
2023-08-06 09:12:18 +08:00
#29 #41 +1 ,买个 mt7981 ,海鲜平台已经魔改好 512 的也才 160~170 ,到手就能刷。WiFi 6
不会编译的话,到恩山注册个账号,用别人的就行了。
documentzhangx66
2023-08-06 11:46:41 +08:00
民用级软路由的首要优点是方便好用,而不是考虑包转发性能,所以民用级软路由的正确打开方式是 x86 mini 主机,兼容性高,刷起来也方便,而不是各种奇奇怪怪的 ARM 设备。

你要包转发性能,完全可以上硬路由。如果又要性能,又要功能,也可以加钱上 FPGA + 志强 x86 协作的企业级路由。
Hopefully
2023-08-06 12:47:29 +08:00
为啥不选 X86 ?
菜鸟更应该上 X86 !
justfun
2023-08-06 14:42:07 +08:00
不知道为啥看到这句话“别再刷你的狗屎路由器了”可想笑哈哈哈(友善的 非恶意
我曾经也是刷机刷的想摔手机哈哈
bibiisme
2023-08-06 17:57:40 +08:00
@m1nm13 刷机不开机是因为 h3c 的官方和第三方固件默认是 64m 的 ubi ,你刷那个大分区 uboot 是 112m 引导不了这些固件才开不了机,跟坏块根本没关系。
bibiisme
2023-08-06 18:03:10 +08:00
@m1nm13 刷机不开机是因为 h3c 的官方和第三方固件默认是 64m 的 ubi ,你刷那个大分区 uboot 是 112m 引导不了这些固件才开不了机,跟坏块根本没关系。而且 mtk 还有个运行在 nand 底层的 nmbm 坏块处理机制(对上层文件系统透明)

squashfs 封装在 ubi 里面,这有什么冲突吗?文件名没写 ubi 就没用 ubi 了 ?
m1nm13
2023-08-06 18:12:50 +08:00
@bibiisme #48 https://openwrt.org/docs/techref/filesystems
> There is a generic problem when running SquashFS on NAND: The issue is that SquashFS has no bad block management at all and requires all blocks on order; but for proper NAND bad block management you also need to be able to skip bad blocks and occasionally relocate blocks (see squashfs and NAND flash). That's why raw SquashFS is a bad idea on NAND (it works if you use a FTL like UBIFS).

而且不是不开机,是 uboot 网页都打不开了
hanwckf
2023-08-06 18:13:15 +08:00
@m1nm13 我觉得你要先搞清楚 ubi 和 ubifs 的区别
bibiisme
2023-08-06 18:14:04 +08:00
@m1nm13 你知道主线 uboot 没有网页,只能 tftp 刷机吗?
m1nm13
2023-08-06 18:33:16 +08:00
@hanwckf #50 OK...我上面的 UBI 都指的是 UBIFS
m1nm13
2023-08-06 18:34:02 +08:00
@bibiisme #51 我刷的也不是原版 uboot.再说我 Ping 都不通,抓包也没有任何反应
bibiisme
2023-08-06 18:42:02 +08:00
@m1nm13 不知道你刷的什么 uboot 进去,日志也没有,只有你自己知道了。
m1nm13
2023-08-06 18:47:13 +08:00
@bibiisme #54
https://firmware-selector.immortalwrt.org/?version=23.05.0-rc3&target=mediatek%2Ffilogic&id=h3c_magic-nx30-pro

我最后一次刷 uboot 直接刷了这里面的 uboot,然后就不行了.至于命令`
mtd write /tmp/xxx.bim FIP`
m1nm13
2023-08-06 18:48:32 +08:00
@jackOff #42 树莓派不是溢价很高吗?我的印象是如此.所以从没考虑过树莓派
m1nm13
2023-08-06 18:50:15 +08:00
@levenwindy #43 牛的牛的.第一次知道还有卖改好内存的
bibiisme
2023-08-06 18:52:26 +08:00
@m1nm13 这个就是主线 uboot 。一会用没人用的大分区 uboot ,一会去用不带 nmbm 的主线 uboot 和原厂开了 nmbm 的 uboot 混搭,你不炸谁炸。
不老老实实刷大家都用的 64m uboot ,自己去刷的东西是什么都不知道,唉。
bibiisme
2023-08-06 18:53:07 +08:00
@bibiisme 打错了,是去用不带 nmbm 的主线 uboot 和原厂开了 nmbm 的 atf 混搭
m1nm13
2023-08-06 18:59:41 +08:00
@bibiisme #59 我是看的 YT 视频入坑的.他提供的刷机包也没写是啥 uboot,我试了几个固件才发现它的 uboot 是大分区的.

不过还是有个问题.我唯一一次能跑起来的 OP 固件,ssh 进去 dmesg 一堆 squashfs 的 IO 错误. 难道不是坏块导致的吗?如果是的话.那我主题里面说的是不是也没错?玩 nand 就是在抽奖.
报错我只留下了 wget 的,dmesg 的没存
```
root@ImmortalWrt:~# wget
Error loading shared library libssl.so.1.1: I/O error (needed by /usr/bin/wget)
Bus error
```

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/962550

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX