summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjogo <jogo@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-02-21 11:45:14 +0000
committerjogo <jogo@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-02-21 11:45:14 +0000
commitf53fd06253bb96bc4d4044dbaa8836836cd735cb (patch)
treea981bf19342ec4ddcd3ba8560085ef42120f5734
parentc24df8873c63eac1c4e49ea19ec03e090be0ea87 (diff)
base-files: make firstboot ask for confirmation
To prevent accidential resets ask for confirmation (and default to n). Signed-off-by: Jonas Gorski <jogo@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35712 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-xpackage/base-files/files/sbin/firstboot24
1 files changed, 16 insertions, 8 deletions
diff --git a/package/base-files/files/sbin/firstboot b/package/base-files/files/sbin/firstboot
index 7e9731b00a..e7c0851ad0 100755
--- a/package/base-files/files/sbin/firstboot
+++ b/package/base-files/files/sbin/firstboot
@@ -20,15 +20,23 @@ set_jffs_part
if [ "${0##*/}" = "firstboot" ]; then
if [ "$1" = "switch2jffs" ]; then
boot_run_hook switch2jffs
- elif [ -n "$jffs" ]; then
- reset_has_fo=true
- echo "firstboot has already been run"
- echo "jffs2 partition is mounted, only resetting files"
- boot_run_hook jffs2reset
else
- mtd erase "$partname"
- mount -o noatime "$mtdpart" /overlay -t jffs2
- fopivot /overlay /rom 1
+ local input
+
+ echo -n "firstboot will erase all settings and remove any installed packages. Are you sure? [N/y]"
+ read input
+ [ "$input" = "y" ] || [ "$input" = "Y" ] || return 0
+
+ if [ -n "$jffs" ]; then
+ reset_has_fo=true
+ echo "firstboot has already been run"
+ echo "jffs2 partition is mounted, only resetting files"
+ boot_run_hook jffs2reset
+ else
+ mtd erase "$partname"
+ mount -o noatime "$mtdpart" /overlay -t jffs2
+ fopivot /overlay /rom 1
+ fi
fi
fi