From 5fa499403fdead7b5c845514e764b04d08e9441c Mon Sep 17 00:00:00 2001 From: Andreas Thienemann Date: Tue, 26 May 2009 18:08:19 +0200 Subject: [PATCH] cleanup environment before calling real init --- modules.d/99base/init | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/modules.d/99base/init b/modules.d/99base/init index 5ee897e87..192e92ace 100755 --- a/modules.d/99base/init +++ b/modules.d/99base/init @@ -93,11 +93,23 @@ done getarg break && emergency_shell kill $(pidof udevd) + +# Clean up the environment +for i in $(export -p); do + i=${i#declare -x} + i=${i#export} + i=${i%%=*} + [ "$i" = "root" -o "$i" = "PATH" -o "$i" = "HOME" -o "$i" = "TERM" ] || unset $i +done + initargs="" for x in "$@"; do [ "${x%%=*}" = "console" ] && continue [ "${x%%=*}" = "BOOT_IMAGE" ] && continue [ "${x%%=*}" = "break" ] && continue + [ "${x%%=*}" = "rdinitdebug" ] && continue + [ "${x%%=*}" = "rdudevinfo" ] && continue + [ "${x%%=*}" = "rdudevdebug" ] && continue initargs="$initargs $x" done exec switch_root "$NEWROOT" "$INIT" $initargs || { -- 2.47.3