X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/1ebe6d34880d1e26b37fe4f794b5039a8245e750..a4bdef9ca9051d829ee12f9f8ae36016f0c2136e:/package/base-files/files/bin/firstboot diff --git a/package/base-files/files/bin/firstboot b/package/base-files/files/bin/firstboot index fe63d1b27..8453b3009 100755 --- a/package/base-files/files/bin/firstboot +++ b/package/base-files/files/bin/firstboot @@ -1,5 +1,4 @@ #!/bin/sh -# $Id: firstboot 5544 2006-11-17 03:07:10Z nbd $ . /etc/functions.sh partname="rootfs_data" @@ -25,7 +24,7 @@ dupe() { # case "$file" in ./rom/note) ;; #nothing ./etc/config*|\ - ./usr/lib/ipkg/info/*) cp -af $2/$file $file;; + ./usr/lib/opkg/info/*) cp -af $2/$file $file;; *) ln -sf /rom/${file#./*} $file;; esac done @@ -40,6 +39,7 @@ pivot() { # pivot_root $1 $1$2 && { mount -o move $2/dev /dev mount -o move $2/tmp /tmp + mount -o move $2/sys /sys 2>&- mount -o move $2/jffs /jffs 2>&- return 0 } @@ -48,7 +48,7 @@ pivot() { # fopivot() { # root=$1 { - mount -t mini_fo -o base=/,sto=$1 $1 /mnt 2>&- && root=/mnt + mount -t mini_fo -o base=/,sto=$1 "mini_fo:$1" /mnt 2>&- && root=/mnt } || { [ "$3" = "1" ] && { mount | grep "on $1 type" 2>&- 1>&- || mount -o bind $1 $1 @@ -78,13 +78,12 @@ ramoverlay() { } [ "$1" = "switch2jffs" ] && { - mtd erase "$partname" + mount "$mtdpart" /rom/jffs -t jffs2 || exit # try to avoid fs changing while copying mount -o remount,ro none / 2>&- # copy ramoverlay to jffs2 - mount "$mtdpart" /rom/jffs -t jffs2 echo -n "copying files ... " cp -a /tmp/root/* /rom/jffs 2>&- echo "done" @@ -102,8 +101,6 @@ ramoverlay() { # this will almost always fail umount /tmp/root 2>&- - # fs is clean - jffs2root --clean exit 0 }