#!/bin/sh set -ex me="`basename $0`" if [ $# != 6 ] then echo >&2 "Usage: $me acct logacct /svcdir /mp3dir /dev/dsp kbitrate" exit 1 fi USER="$1" LOGUSER="$2" SVCDIR="$3" MP3DIR="$4" DSPDEV="$5" KBITRATE="$6" if [ -e "$MP3DIR" ] ; then echo >&2 "$me: $MP3DIR already exists"; exit 1; fi if [ -e "$SVCDIR" ] ; then echo >&2 "$me: $SVCDIR already exists"; exit 1; fi if [ -e "${SVCDIR}-clean" ] ; then echo >&2 "$me: ${SVCDIR}-clean already exists"; exit 1; fi mkdir "$SVCDIR-clean" mkdir "$SVCDIR" mkdir "$MP3DIR" chown "$USER" "$MP3DIR" cd "$SVCDIR" mkdir env echo "$KBITRATE" >env/KBITRATE echo "$DSPDEV" >env/DSPDEV echo "$MP3DIR" >env/MP3DIR cat <run #!/bin/sh exec env - PATH="\$PATH" envdir ./env nice --5 setuidgid "$USER" mp3log 2>&1 EOF mkdir log log/main chown "$LOGUSER" log/main cat <log/run #!/bin/sh exec setuidgid "$LOGUSER" multilog t s99999 n2 ./main EOF_LOG_RUN chmod +x run log/run chmod +t . cd "$SVCDIR-clean" mkdir env echo "$MP3DIR" >env/MP3DIR ln -s "$MP3DIR" mp3dir echo 3 >"$MP3DIR"/N echo 3 >env/N cat <run #!/bin/sh exec env - PATH="\$PATH" envdir ./env nice setuidgid "$USER" mp3dirclean EOF chmod +x run echo Finished.