summaryrefslogtreecommitdiffstats
path: root/boot-env/preboot
diff options
context:
space:
mode:
Diffstat (limited to 'boot-env/preboot')
-rwxr-xr-xboot-env/preboot/preboot.sh9
-rwxr-xr-xboot-env/preboot/uclib-rootfs/init10
2 files changed, 10 insertions, 9 deletions
diff --git a/boot-env/preboot/preboot.sh b/boot-env/preboot/preboot.sh
index 9ec9e90d..05efadd1 100755
--- a/boot-env/preboot/preboot.sh
+++ b/boot-env/preboot/preboot.sh
@@ -15,19 +15,16 @@
# get configuration
. /etc/initramfs-setup
-ash
-
# we expect to have a system selection dialog file in /preboot/bootmenu.dialog
-dialog --file bootmenu.dialog 2>result
+while [ "x$(cat result)" = "x" ] ; do
+ dialog --file bootmenu.dialog 2>result
+done
# source the system to boot configuration ($kernel, $initramfs, $append,
# $label)
sysname=$(cat result)
. ./$sysname
-
sysname=$(readlink $sysname)
-# if wget
-
ash
# bring the mac address into the standard format 01-<MAC>
diff --git a/boot-env/preboot/uclib-rootfs/init b/boot-env/preboot/uclib-rootfs/init
index cff0d86f..192b88bd 100755
--- a/boot-env/preboot/uclib-rootfs/init
+++ b/boot-env/preboot/uclib-rootfs/init
@@ -142,6 +142,7 @@ mkdir /preboot
tar -xzf /tmp/preboot.env -C /preboot
# start a debug shell if needed, else set quiet kernel parameter
if [ "${DEBUGLEVEL}" -gt 0 ] ; then
+ echo "Starting shell, leaving it would continue init."
/bin/ash
else
# no debugging output for stage3 run
@@ -149,7 +150,10 @@ else
fi
# run the preboot interactive part which finally will execute kexec
cd /preboot
-exec ./preboot.sh || sh
-# we will never return from that one ...
-
+exec ./preboot.sh
+# we should never return from that one ...
+echo "The execution of the main preboot environment failed. Please check"
+echo "network access of your box. Is $boot_uri reachable!?"
+# ping -c 1 $boot_uri
+sleep 20 && echo "o" > /proc/sysrq-trigger