搜索
bottom↓
回复: 22

OpenWRT 用 U盘代替 flash

[复制链接]

出0入0汤圆

发表于 2016-10-7 16:19:05 | 显示全部楼层 |阅读模式
本帖最后由 helislayer 于 2016-10-8 11:53 编辑

这个技术叫做 EXTRoot,英文网页在
https://wiki.openwrt.org/doc/howto/extroot

在我看来是一个超级有用的技术。这个技术在 Openwrt
启动以后使用 U 盘上的文件系统替代掉原来在 flash 里面
的文件系统。flash 一般 8M 16M 就很大了,但是 U 盘随便
就 1 个 G。所以如果可以使用 U 盘替代 Openwrt 的 flash
基本上相当于 flash 没有限制了。

还有应外一个好处是,config 保存在 U 盘。这样可以避免
由于配置不当而转头了路由器。因为 U 盘可以拔出来在
电脑里修改里面的配置文件。

简单的步骤介绍一下,更加仔细的在那个英文的网页里。

1) 是安装 block-mount 和 usb 盘的驱动。
opkg update ; opkg install block-mount kmod-fs-ext4 kmod-usb-storage

2) 找个 USB 硬盘,把 /dev/sdX1 格式化成 ext4
X 是 USB 盘符号。这个格式化可以在 Linux 的电脑里面做。
mkfs.ext4 /dev/sdX1

3) 插入 U 盘到 Openwrt 路由器。拷贝 /overlay 到 /dev/sda1
mount /dev/sda1 /mnt ; tar -C /overlay -cvf - . | tar -C /mnt -xf - ; umount /mnt

4)配置 fstab 启用 U 盘当作 /overlay
block detect > /etc/config/fstab
然后把里面的 enable 的 “0” 改成 “1”
如果用脚本来做的话就是:
block detect > /etc/config/fstab; \
   sed -i s/option$'\t'enabled$'\t'\'0\'/option$'\t'enabled$'\t'\'1\'/ /etc/config/fstab; \
   sed -i s#/mnt/sda1#/overlay# /etc/config/fstab; \
   cat /etc/config/fstab;

这样基本上就好了。
这个通常需要 8M 以上的 flash 才可以运行 extroot,除非自己编译
openwrt。

但是我发现一个 4M flash 也可以用的方法。这个是比较独创的。
如果只有 4M flash,例如那个 WR703n。
opkg update ; opkg install block-mount kmod-fs-ext4 kmod-usb-storage
这一步会说空间不够。我发现一个秘诀就是,ext4 文件系统比较大。
如果换成 f2fs 就装得下了
opkg update ; opkg install kmod-fs-f2fs kmod-usb-storage

大家可能注意到我没有装 block-mount。
这个是因为目前 Chaos Calmer 里面的 block-mount 不会使用 f2fs.
需要打补丁。
具体看这个。
https://forum.openwrt.org/viewtopic.php?pid=311332#p311332

然后我把上面连接里面提到的一个用户打好补丁的 block-mount
上传上来了。
装了这个 block-mount
使用 f2fs 的时候第2步用 mkfs.f2fs /dev/sdX1
其他的一样。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2016-10-7 16:26:50 | 显示全部楼层
顶一下,看起来不错

出0入0汤圆

发表于 2016-10-7 16:56:52 | 显示全部楼层
openwrt确实挺好玩,但用途好像比较窄,大公司用,小公司用不起开发维护都是不少的费用

出0入0汤圆

发表于 2016-10-7 16:59:27 | 显示全部楼层
思路相当好,换大的固件都不用动烙铁了

出0入0汤圆

发表于 2016-10-7 17:08:00 | 显示全部楼层
有是有用,但是用途没有想象的大

出0入0汤圆

发表于 2016-10-7 17:28:41 | 显示全部楼层
看起来适合DIY玩家,搞开发应该也挺方便的样子。

出0入70汤圆

发表于 2016-10-7 18:40:31 | 显示全部楼层
适合 插件狂人...........

出0入0汤圆

发表于 2016-10-7 18:48:28 | 显示全部楼层
SD卡 启动才是王道

出0入0汤圆

发表于 2016-10-7 18:50:20 来自手机 | 显示全部楼层
好玩意,留下了

出0入0汤圆

发表于 2016-10-7 19:27:51 来自手机 | 显示全部楼层
只能说适合diy吧   市面上都是各家自己系统升级 然后加个捅菊花复位键  普通消费者不需要   开发人员也不需要

出0入0汤圆

 楼主| 发表于 2016-10-7 23:28:53 | 显示全部楼层
当然是适合喜欢捣腾 openwrt 的 diy 的人。
Openwrt 其实市面上有不少路由器用,只不过不一定是
现在 LuCI 那样的界面罢了。

换启动部分的固件仍然需要刷 flash。
我在 U 盘上装了 git,然后把 openwrt 的 config 版本保存
起来这些。

出0入618汤圆

发表于 2016-10-7 23:44:29 | 显示全部楼层
曾经用过一段时间U盘,后来还是换了16M Flash,毕竟外挂U盘还是不够稳定。
16M Flash足够装很多东西了,数据库之类的大软件以MIPS的身子骨也跑不动。

出0入0汤圆

 楼主| 发表于 2016-10-8 00:34:05 | 显示全部楼层
本帖最后由 helislayer 于 2016-10-8 01:55 编辑
gzhuli 发表于 2016-10-7 23:44
曾经用过一段时间U盘,后来还是换了16M Flash,毕竟外挂U盘还是不够稳定。
16M Flash足够装很多东西了,数 ...


我用外挂 U 盘好几年了。没有碰到 U 盘不稳定的情况。
普通 Openwrt 启动完了以后 U 盘基本上是不写的。

16M 是自己升级的吧,市面上 16M flash 的路由器还是比较
少见的。

我没有跑数据库什么的,就是在 U 盘上跑 git client。
用来保存我的 config, 自动 push 到 git server。
升级的时候好有个版本追踪。

我看了一下我空间使用情况,一下子 30M 就出去了。
所以你的16M 对我来说还是不够用的。

root@OpenWrt:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
rootfs                 7303312     30208   6879072   0% /
/dev/root                 2304      2304         0 100% /rom
tmpfs                    63020       160     62860   0% /tmp
/dev/sda1              7303312     30208   6879072   0% /overlay
overlayfs:/overlay     7303312     30208   6879072   0% /
tmpfs                      512         0       512   0% /dev
root@OpenWrt:~#

另外那个 raw flash 跑 ext4 之类的文件系统不太合适。
raw flash 没有 leveling。

我曾经有个旧的路由器估计是写太多 flash 有异常了,当然
我有自己的原因,我有个程序不时在里面写 log。

出0入0汤圆

 楼主| 发表于 2016-10-8 02:06:05 | 显示全部楼层
huangqi412 发表于 2016-10-7 19:27
只能说适合diy吧   市面上都是各家自己系统升级 然后加个捅菊花复位键  普通消费者不需要   开发人员也不需 ...

基本同意。我就提一个啊,开发人员如果可以在路由器跑 git client
还是很有帮助的。开发 app 的时候直接在 PC 端改,路由器直接 push
上去就好了。

出0入618汤圆

发表于 2016-10-8 02:28:14 | 显示全部楼层
helislayer 发表于 2016-10-8 00:34
我用外挂 U 盘好几年了。没有碰到 U 盘不稳定的情况。
普通 Openwrt 启动完了以后 U 盘基本上是不写的。
...

国产路由USB插座质量都不是很好,有时候不小心碰到一下什么的U盘就很可能掉了,很麻烦。
我的树莓派和香蕉派都7x24跑着,粗活不用路由器干,主要就是跑VPN之类的东西,其实8M自己编译个量身定做的精简版ROM也够用了,只是升级麻烦所以才换16M直接在官方ROM上装东西。

出0入0汤圆

 楼主| 发表于 2016-10-8 02:59:11 | 显示全部楼层
gzhuli 发表于 2016-10-8 02:28
国产路由USB插座质量都不是很好,有时候不小心碰到一下什么的U盘就很可能掉了,很麻烦。
我的树莓派和香 ...

我现在在用 TPLink WDR4300,虽然是国产的质量对我来说还好。
算是比较稳定的了。关键是我用比较小 U 盘,插进去就露个火柴头
那样,所以碰也碰不到那里去,就是拔出来比较麻烦。

我有自己编译 Openwrt, 我还给 Openwrt 贡献过一些 patch 被收录
了呢。但是家里网关那个路由器我就不乱搞了,基本上都是跑官方
的标准镜像。我的配置比较复杂,很多 VLAN 划分等等。所以升级
的时候保留配置很重要。

一般用是 8M 有余了。

RPi 我也有也经常跑着。

出0入0汤圆

发表于 2016-10-8 10:05:52 | 显示全部楼层
helislayer 发表于 2016-10-8 02:06
基本同意。我就提一个啊,开发人员如果可以在路由器跑 git client
还是很有帮助的。开发 app 的时候直接 ...

有X86版的openwrt吧,如果要折腾大东西,是不是搞个白菜二手X86小盒子更方便,路由器芯片都太弱了吧。

出0入0汤圆

 楼主| 发表于 2016-10-8 11:54:08 | 显示全部楼层
huangqi412 发表于 2016-10-8 10:05
有X86版的openwrt吧,如果要折腾大东西,是不是搞个白菜二手X86小盒子更方便,路由器芯片都太弱了吧。 ...

不是折腾大东西啦,就是 openwrt 上面的 app。

出0入0汤圆

发表于 2017-5-14 15:09:03 | 显示全部楼层
helislayer 发表于 2016-10-8 11:54
不是折腾大东西啦,就是 openwrt 上面的 app。

很久都没有再碰openwrt 现在直接玩可以刷梅林的R6400了
另外现在一帮人新折腾出来的AdvancedTomato也看起来不错

出0入0汤圆

发表于 2017-5-14 20:09:09 | 显示全部楼层
gzhuli 发表于 2016-10-8 02:28
国产路由USB插座质量都不是很好,有时候不小心碰到一下什么的U盘就很可能掉了,很麻烦。
我的树莓派和香 ...

请教下,如果使用树莓派一类的挂一个硬盘,这样话硬件的稳定性如何?主要担心硬盘会挂。。。

出0入618汤圆

发表于 2017-5-14 22:34:59 | 显示全部楼层
散吧散吧 发表于 2017-5-14 20:09
请教下,如果使用树莓派一类的挂一个硬盘,这样话硬件的稳定性如何?主要担心硬盘会挂。。。 ...

树莓派的USB我觉得不够稳定,我的树莓派2 USB数据吞吐量一大连以太网都有可能掉线,所以挂硬盘最好还是选原生SATA口的。

出0入0汤圆

发表于 2017-5-15 17:09:01 | 显示全部楼层
学习啦

出0入0汤圆

 楼主| 发表于 2017-5-21 00:05:50 | 显示全部楼层
gzhuli 发表于 2017-5-14 22:34
树莓派的USB我觉得不够稳定,我的树莓派2 USB数据吞吐量一大连以太网都有可能掉线,所以挂硬盘最好还是选 ...

我有个树梅派1代在家里长期挂着跑 CF card 倒是没有什么事。
那个没有跑系统在 USB 上面。

还有用 3 代来旅行倒照片到 USB 硬盘里,还没有碰到
什么稳定性的问题。主要是避免带个笔记本,只有旅行的
时候用,用手机登陆来控制,用的也不多就是了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 02:28

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表