summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xopenwrt/target/default/target_skeleton/etc/preinit16
1 files changed, 8 insertions, 8 deletions
diff --git a/openwrt/target/default/target_skeleton/etc/preinit b/openwrt/target/default/target_skeleton/etc/preinit
index 95a2da8be0..d2036f4e59 100755
--- a/openwrt/target/default/target_skeleton/etc/preinit
+++ b/openwrt/target/default/target_skeleton/etc/preinit
@@ -1,6 +1,4 @@
#!/bin/sh
-# executed from squashfs before init to
-# transfer root to the jffs2 partition
mount none /proc -t proc
insmod diag
echo 0x01 > /proc/sys/diag
@@ -9,12 +7,14 @@ if [ $(cat /proc/sys/reset) = 1 ] ; then
export FAILSAFE=true
while :; do { echo $(((X=(X+1)%8)%2)) > /proc/sys/diag; sleep $((X==0)); } done &
else
- mtd unlock mtd4
- mount -t jffs2 /dev/mtdblock/4 /jffs
- pivot_root /jffs /jffs/rom
- mount none /dev -t devfs
- mount none /proc -t proc
- umount rom/proc
+ mount | grep jffs2 1>&- || {
+ mtd unlock mtd4
+ mount -t jffs2 /dev/mtdblock/4 /jffs
+ pivot_root /jffs /jffs/rom
+ mount none /dev -t devfs
+ mount none /proc -t proc
+ umount rom/proc
+ }
fi
mount none /tmp -t ramfs
exec /sbin/init