3 # Copyright (C) 2009 Andy Spencer
4 # See ../COPYING for terms
9 PATH=/lib/mkinit/bin:/bin:/sbin:/usr/bin:/usr/sbin
15 usage: $0 [options] [command]
18 -h,--help Print usage information
19 -t,--test Fake all commands
22 boot Execute boot-up procedures
23 halt Execute shutdown procedures
24 reload Re-execute init process
25 mk <rule> Execute mk rule
26 start|stop|restart|zap|status <service>
27 Start,stop,restart,zap or query status of service
28 eval <cmd> Execute command in mkinit process
34 [ "$TEST" ] && export P=true
35 /usr/lib/plan9/bin/mk \
47 echo "mkinit -- booting"
52 echo "mkinit -- restarting $args"
57 start|stop|zap|status )
59 echo "mkinit -- ${cmd}ing $args"
66 echo "mkinit -- running mk cmd [$args]"
67 [ "$cmd" = runlevel ] &&
68 echo "mkinit -- entering runlevel $args"
73 echo "mkinit -- ${cmd}ing"
74 exec $0 -r ${TEST:+"-t"}
80 echo "mkinit -- unknown command [$cmd $args]"
86 TEMP=`getopt -n "$0" \
88 --longoptions help,reload,test \
93 [ "$TEST" ] && echo "\$1=$1"
96 -r|--reload ) RELOAD=true; shift ;;
97 -t|--test ) TEST=true; shift ;;
112 echo " reload=$RELOAD"
117 if [ ! "$RELOAD" ]; then
118 # Fork /dev/initctl listener
124 # Fork console listener
125 while read -e -p "mkinit> " line; do
131 # Kill listeners on exit
132 trap "pkill -HUP -P $$ initctld" EXIT
136 while line=$(line); do