From 69b4aac9d13d3c4a6c4604cfb763033aa0dab3d6 Mon Sep 17 00:00:00 2001 From: Sebastien Luttringer Date: Sun, 24 Apr 2011 23:25:10 +0200 Subject: rc cleaning run rc.d scripts rc helper now call rc.d scripts in root directory with a clean environment. Chosen vars came from init man page. It allows to launch scripts from the command line, as if they had been launched by init Signed-off-by: Sebastien Luttringer --- rc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/rc b/rc index 1e64119..9889d1e 100755 --- a/rc +++ b/rc @@ -43,8 +43,14 @@ case $1 in *) action=$1 shift + # set same environment variables as init + runlevel=$(/sbin/runlevel) + ENV="PATH='/bin:/usr/bin:/sbin:/usr/sbin'" + ENV+=" PREVLEVEL='${runlevel:0:1}'" + ENV+=" RUNLEVEL='${runlevel:2:1}'" + ENV+=" CONSOLE='${CONSOLE:-/dev/console}'" for i; do - [[ -x "/etc/rc.d/$i" ]] && "/etc/rc.d/$i" $action + [[ -x "/etc/rc.d/$i" ]] && cd / && eval /usr/bin/env -i $ENV "/etc/rc.d/$i" "$action" (( ret += $? )) done esac -- cgit v1.2.3