cleanup wget2nand script (closes #3049)

SVN-Revision: 10221
This commit is contained in:
Gabor Juhos 2008-01-18 17:52:26 +00:00
parent 6700252dd1
commit d0ed1a1d83

View File

@ -8,8 +8,13 @@
# Based on cf2nand from RB532 support # Based on cf2nand from RB532 support
. /etc/functions.sh . /etc/functions.sh
[ -d /tmp/wget2nand ] && { [ -d /tmp/wget2nand-rootfs ] && {
echo "/tmp/wget2nand already exists" echo "/tmp/wget2nand-rootfs already exists"
exit 1
}
[ -d /tmp/wget2nand-kernel ] && {
echo "/tmp/wget2nand-kernel already exists"
exit 1 exit 1
} }
@ -21,49 +26,48 @@ url=$1
exit 1 exit 1
} }
# first get an address for br-lan using udhcpc # first get an address for br-lan using udhcpc
killall udhcpc killall udhcpc
/sbin/udhcpc -i br-lan /sbin/udhcpc -i br-lan
boot="$(find_mtd_part 'RouterBoard NAND Boot')" mtd_kernel="$(find_mtd_part 'kernel')"
main="$(find_mtd_part 'rootfs')" mtd_rootfs="$(find_mtd_part 'rootfs')"
[ -z "$boot" -o -z "$main" ] && { [ -z "$mtd_kernel" -o -z "$mtd_rootfs" ] && {
echo "Cannot find NAND Flash partitions" echo "Cannot find NAND Flash partitions"
exit 1 exit 1
} }
echo "Erasing filesystem." echo "Erasing filesystem..."
mtd erase Boot 2>/dev/null >/dev/null mtd erase kernel 2>/dev/null >/dev/null
mtd erase Main 2>/dev/null >/dev/null mtd erase rootfs 2>/dev/null >/dev/null
echo "Mounting $main as new root and $boot as boot partition" echo "Mounting $mtd_rootfs as new root and $mtd_kernel as kernel partition"
mkdir /tmp/wget2nand/ mkdir /tmp/wget2nand-rootfs
mkdir /tmp/wget2nand-boot mkdir /tmp/wget2nand-kernel
mount -t yaffs2 "$main" /tmp/wget2nand/ mount -t yaffs2 "$mtd_rootfs" /tmp/wget2nand-rootfs
mount -t yaffs2 "$boot" /tmp/wget2nand-boot mount -t yaffs2 "$mtd_kernel" /tmp/wget2nand-kernel
echo "Erasing existing files." echo "Erasing existing files..."
rm -rf /tmp/wget2nand/* rm -rf /tmp/wget2nand-rootfs/*
echo "Copying filesystem..." echo "Copying filesystem..."
( wget -O - $url/openwrt-adm5120-2.6-rootfs.tgz) | ( cd /tmp/wget2nand/; tar xvz ) ( wget -O - $url/openwrt-adm5120-2.6-rootfs.tgz) | ( cd /tmp/wget2nand-rootfs/; tar xvz )
# RouterBOOT is looking for a kernel named "kernel" # RouterBOOT is looking for a kernel named "kernel"
wget -O /tmp/wget2nand-boot/kernel $url/openwrt-adm5120-2.6-rb1xx-kernel wget -O /tmp/wget2nand-kernel/kernel $url/openwrt-adm5120-2.6-rb1xx-kernel
chmod +x /tmp/wget2nand-boot/kernel chmod +x /tmp/wget2nand-kernel/kernel
# make sure everything is written before we unmount the partitions # make sure everything is written before we unmount the partitions
echo "chmod ugo+x /" > /tmp/wget2nand/etc/uci-defaults/set_root_permission echo "chmod ugo+x /" > /tmp/wget2nand-rootfs/etc/uci-defaults/set_root_permission
sync sync
ls /tmp/wget2nand-boot/ ls /tmp/wget2nand-kernel/
ls /tmp/wget2nand/ ls /tmp/wget2nand-rootfs/
# unmount the partitions and remove the directories into which they were mounted # unmount the partitions and remove the directories into which they were mounted
umount /tmp/wget2nand-boot umount /tmp/wget2nand-kernel
umount /tmp/wget2nand umount /tmp/wget2nand-rootfs
rmdir /tmp/wget2nand-boot rmdir /tmp/wget2nand-kernel
rmdir /tmp/wget2nand rmdir /tmp/wget2nand-rootfs
# all done # all done
echo "Image written, you can now reboot. Remember to change the boot source to Boot from Nand" echo "Image written, you can now reboot. Remember to change the boot source to Boot from Nand"