OpenWrt 14.07 NetGear 4300 从 U 盘启动失败

2014-12-07 11:51:02 +08:00
 Tonni
网件的4300,刷的OpenWrt Barrier Breaker 14.07的系统,可用空间只有13M,无奈只好买了块U盘做U盘引导了,但是按照网上的教程:

https://samhobbs.co.uk/2013/11/more-space-for-packages-with-extroot-on-your-openwrt-router
http://brendangrainger.com/2014/09/05/setting-up-a-usb-drive-for-storage-on-openwrt/

还有官方的教程:

http://wiki.openwrt.org/doc/howto/extroot


都不能成功的U盘引导启动,弄了半天也不知道是哪里出了问题,fstab配置文件如下:

```
config 'global'
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '0'
option check_fs '0'


config 'mount'
option target /overlay
option device /dev/sda2
option fstype ext4
option options rw,sync
option enabled 1
```

上面的配置:`option target /overlay` 把 `/overlay` 换成 `/mnt/usb1` 倒是可以在开机时自动挂载U盘到 `/mnt/usb1` 目录上,不知道有没有V友知道问题出在哪里了,谢谢。
5788 次点击
所在节点    问与答
22 条回复
bugeye
2014-12-07 12:36:05 +08:00
配置看上去没问题,除非你搞错了sda2这个设备名。

你可以试着把delay_root改成5看看。

如果还不行,就看看dmesg
jasontse
2014-12-07 12:44:43 +08:00
参考官方示例

root@OpenWrt:/# cat /etc/config/fstab
config global
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '5'
option check_fs '0'

config mount
option target '/overlay'
option uuid '1902a323-79a6-4b1a-a511-a58655974ee9'
option enabled '1'
option fstype 'ext4'
Tonni
2014-12-07 12:52:38 +08:00
@bugeye 还是不管用;-(

root@OpenWrt:~# dmesg | grep "usb"
[ 4.970000] usbcore: registered new interface driver usbfs
[ 4.980000] usbcore: registered new interface driver hub
[ 4.990000] usbcore: registered new device driver usb
[ 5.400000] usb 1-1: new high-speed USB device number 2 using ehci-platform
[ 9.300000] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 9.310000] scsi0 : usb-storage 1-1:1.0
[ 9.310000] usbcore: registered new interface driver usb-storage

root@OpenWrt:~# cat /etc/config/fstab
config 'global'
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '5'
option check_fs '0'


config 'mount'
option target /
option device /dev/sda2
option fstype ext4
option options rw,sync
option enabled 1



root@OpenWrt:~# fdisk -l
Disk /dev/sda: 7.4 GiB, 7969177600 bytes, 15564800 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000b4fbf

Device Boot Start End Blocks Id System
/dev/sda1 2048 133119 65536 82 Linux swap / Solaris
/dev/sda2 133120 15564799 7715840 83 Linux
cye3s
2014-12-07 12:59:59 +08:00
4m空间的已哭晕在厕所,装个luci就快满了,还好是副路由器,主路由32m
pH
2014-12-07 13:01:42 +08:00
@cye3s 我没记错我的只有2M,TP真是坑货。
bugeye
2014-12-07 13:02:57 +08:00
dmesg | grep -i ext
mount
看看
Tonni
2014-12-07 13:07:22 +08:00
@bugeye
root@OpenWrt:~# dmesg | grep -i ext
root@OpenWrt:~# mount
rootfs on / type rootfs (rw)
/dev/root on /rom type squashfs (ro,relatime)
proc on /proc type proc (rw,noatime)
sysfs on /sys type sysfs (rw,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
/dev/ubi0_1 on /overlay type ubifs (rw,noatime)
overlayfs:/overlay on / type overlayfs (rw,noatime,lowerdir=/,upperdir=/overlay)
tmpfs on /dev type tmpfs (rw,relatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
debugfs on /sys/kernel/debug type debugfs (rw,noatime)
root@OpenWrt:~#
Tonni
2014-12-07 13:16:54 +08:00
@jasontse 试过的,不行;-(
bugeye
2014-12-07 13:17:50 +08:00
你没贴dmesg | grep -i ext的结果
bugeye
2014-12-07 13:19:07 +08:00
而且你在3楼贴的 option target / 不知道为什么又没有overlay了
Tonni
2014-12-07 13:23:10 +08:00
@bugeye dmesg | grep -i ext没有输出任何信息,我后来又更改了挂载盘符,打算挂载到/目录下,reboot后依然不行。
bugeye
2014-12-07 13:32:27 +08:00
正常情况下,openwrt 肯定会尝试按照fstab的指示挂载分区,但如果dmesg | grep -i ext没有内容的话,说明openwrt根本没有去执行fstab。你一条条看看dmesg有没什么明显的错误,如果看上去一切正常的话,我怀疑你固件的启动脚本有问题了。

我想你手工mount你那个分区没有问题吧?
Tonni
2014-12-07 13:34:37 +08:00
@bugeye 手动mount那个分区是没有问题的,`option target /overlay` 把 `/overlay` 换成 `/mnt/usb1` 倒是可以在开机时自动挂载U盘到 `/mnt/usb1` 目录上,说明还是会度fstab文件的配置的
bugeye
2014-12-07 13:41:02 +08:00
但如果读fstab的话, dmesg 不可能找不到ext挂载信息吧。。。我的路由上是这样的信息
[ 14.360000] EXT4-fs (sda1): mounting ext3 file system using the ext4 subsystem
[ 17.650000] EXT4-fs (sda1): recovery complete
[ 17.650000] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts:

虽然可能性不大,你试试
opkg list_installed | grep block-mount
看看block-mount是不是装了。
Tonni
2014-12-07 13:44:21 +08:00
root@OpenWrt:~# opkg list_installed | grep block-mount
block-mount - 2014-06-22-e0430f5c62f367e5a8e02755412977b02c3fc45e
root@OpenWrt:~# dmesg | grep "sda"
[ 10.330000] sd 0:0:0:0: [sda] 15564800 512-byte logical blocks: (7.96 GB/7.42 GiB)
[ 10.340000] sd 0:0:0:0: [sda] Write Protect is off
[ 10.340000] sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00
[ 10.340000] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 10.370000] sda: sda1 sda2
[ 10.370000] sd 0:0:0:0: [sda] Attached SCSI removable disk
bugeye
2014-12-07 13:54:23 +08:00
正常情况下,你贴的这条下面就该mount overlay了。
你再试试 block mount看看是什么信息
然后试试 block info 和 block detect看看是什么
Tonni
2014-12-07 13:58:45 +08:00
@bugeye 哥们,太感谢你了。
root@OpenWrt:~# block mount
root@OpenWrt:~# block info
/dev/ubiblock0_0: UUID="ac983ba2-d1dbb7cd-b86ca3c2-0c9e2e8f" VERSION="4.0" TYPE="squashfs"
/dev/sda1: VERSION="2" TYPE="swap"
/dev/sda2: UUID="13a20100-6492-4d98-875b-66a4d56633d1" NAME="EXT_JOURNAL" VERSION="1.0" TYPE="ext4"
root@OpenWrt:~# block detect
config 'global'
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '5'
option check_fs '0'

config 'swap'
option device '/dev/sda1'
option enabled '0'

config 'mount'
option target '/mnt/sda2'
option uuid '13a20100-6492-4d98-875b-66a4d56633d1'
option enabled '0'

root@OpenWrt:~# vim /etc/config/fstab
root@OpenWrt:~# cat /etc/config/fstab
config 'global'
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '5'
option check_fs '0'


config 'mount'
option target '/overlay'
option uuid '13a20100-6492-4d98-875b-66a4d56633d1'
option fstype 'ext4'
option options 'rw,sync'
option enabled '1'
braveguywallce
2014-12-07 14:11:24 +08:00
官方版的14.07目前还没有完全释放这款机器的内存,我前面刷了国外另外一位基友的版本,是全部释放128M内存的,预计后面官方版会解决这个问题。
Tonni
2014-12-07 14:14:22 +08:00
@braveguywallce 好吧,不折腾了,13兆差不多够我用了,这两天全都搭进去了
bugeye
2014-12-07 14:14:43 +08:00
我只能说,一切正常,实在没有任何问题。。。也许可以考虑换个固件试试了,我不清楚你的固件是哪来的,如果是官方最新的,可以考虑checkout一个老一点的固件,自己编译一下。我现在也只好怀疑是固件的问题了。

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

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

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

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

© 2021 V2EX