一、在配置U盘启动前首先配置路由器可以上网,通过超级终端(本人常用Xshell)登录路由器,可以通过opkg update来更新安装包源,如果不可以,那就参照其它教程进行设置。
二、安装需要的软件包:
opkg install kmod-usb-storage kmod-usb-uhci kmod-usb2 block-mount block-hotplug block-extroot kmod-fs-ext3
说明:kmod-usb2对应USB2.0
kmod-usb-uhci对应部分intel和VIA的usb控制器
实现USB存储设备自动挂载并从USB启动,需要用到的包:block-mount、block-hotplug(这两个是自动挂载用的)和block-extroot(这个是USB启动用的)
kmod-fs-ext3是文件系统支持,我是把U盘格式化为ext3文件系统使用的,不安装文件系统支持的话,不能mount。
注意:安装block-extroot后,可能会出现一个错误:“Collected errors: * resolve_conffiles: Existing conffile /etc/config/fstab is different from the conffile in the new package. The new conffile will be placed at /etc/config/fstab-opkg.”这个错误是由于原来/etc/config下的配置文件fstab和安装block-extroot后生成的新fstab冲突。因此,使用命令:mv fstab fstab.bak ;mv fstab-opkg fstab;这个文件在接下来的配置中需要用到。
三、本人U盘只有一个分区(注意:该分区应设置为主分区primary),插上U盘后,可以使用“fdisk -l”命令来查询,如果需要分两个或者两个以上分区的话,可以查询其它资料进行分区。
mount /dev/sda1 /mnt #挂载U盘第一个分区到/mnt
mkdir /tmp/root #在/tmp目录下创建名叫root的一个目录
mount -o bind / /tmp/root #挂载并同步系统根目录“/”到 /tmp/root
cp /tmp/root/* /mnt -a #拷贝/tmp/root下所有文件到 “/mnt”,这个其实就是你的U盘了
umount /tmp/root 卸载 /tmp/root#
四、修改/etc/config/fstab。
修改前:config mount
option target /home
option device /dev/sda1
option fstype ext3
option options rw,sync
option enabled 0
config swap
option device /dev/sda2
option enabled 0
修改后:
config mount
# option target /home 这一行要不要无所谓了,我一般是去掉或者在前面加一个“#”
option device /dev/sda1
option fstype ext3
option options rw,sync
option enabled 1
option is_rootfs 1
config swap
option device /dev/sda2
option enabled 0
红色字体为修改或者添加的内容。
五、添加标识来识别是否从U盘启动;
vi /mnt/etc/banner
在最后一行添加:Boot from Upan
再次启动后效果如下:
Connecting to 192.168.1.1:22...
Connection established.
To escape to local shell, press ‘Ctrl+Alt+]‘.
BusyBox v1.15.3 (2012-01-31 02:23:09 CST) built-in shell (ash)
Enter ‘help‘ for a list of built-in commands.
_.-"._
_-: () ":_
_-"‘. ‘. _" :-_
-" ‘.-.‘-. .‘ "-_
|"_() _‘).:(.‘ () -"|
J "_ .‘ .‘‘. ‘. -" F
L "_ .‘ () ‘. ‘_-" o J
| o ‘ "-_ _:": |
"_ L ‘ "-.-" | J _-"
"| J F ()J :-"
"| () J :-"
"-_ | _"
"-"
Openwrt-Dreambox(2012, r365) --------------------
* Base on Openwrt Backfire
* lintel(lintel.huang@gmail.com).
* yuef zhu(flyzjhz@gmail.com).
* XEyE(xeye.wang@gmail.com).
* Vcore(vcore85@gmail.com).
* emongxx(emongxx@gmail.com).
---------------------------------------------------
Boot from Upan
---------------------------------------------------
使用“df -h”查询结果:
Filesystem Size Used Available Use% Mounted on
/dev/root 9.1M 9.1M 0 100% /rom
tmpfs 14.5M 100.0K 14.4M 1% /tmp
tmpfs 512.0K 0 512.0K 0% /dev
/dev/sda1 14.7G 201.3M 13.7G 1% /overlay
mini_fo:/overlay 9.1M 9.1M 0 100% /
出现红色字体,说明已经从U盘启动了。
OpenWrt-DreamBox 20120201 配置U盘启动
原文地址:http://damoguyan.blog.51cto.com/4261348/1625989