s/wait/askfirst/ , this let all zombies die ;). found after longer brainstorming...
[openwrt.git] / target / default / target_skeleton / etc / preinit
index 28fe805..c6ad0d7 100755 (executable)
@@ -7,14 +7,26 @@ 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
-  mount | grep jffs2 1>&- || {
+  mount | grep jffs2 >&-
+  if [ $? = 0 ] ; then
+    mtd unlock rootfs
+    [ $(cat /proc/mtd | wc -l) = 6 ] && {
+      echo 5 > /proc/sys/diag
+      mtd unlock OpenWrt
+      mtd erase OpenWrt
+      jffs2root --move
+    }
+    mount -o remount,rw /dev/root /
+  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 none /dev -t devfs
+    mount none /proc -t proc
+    umount rom/proc rom/dev
+  fi
 fi
 mount none /tmp -t ramfs
+mkdir -p /dev/pts
+mount none /dev/pts -t devpts
 exec /sbin/init
This page took 0.022574 seconds and 4 git commands to generate.