Ich habe ein Script geschrieben und den Befehl su $USER eingebaut. Sobald ich das Script als root ausführe, soll er auf den Befehl su $USER zurückgreifen. Dies habe ich folgendermaßen versuch (ausschnitt aus dem Script)t:
Code: Alles auswählen
install_css() {
...
...
if [ `whoami` = root ]
then
usagetype=root
else
usagetype=nonroot
fi
case "$usagetype" in
root)
echo "Installer fuer $GS_GAME" ;
su $USER -c ;
if [ ! -d $SERVER_DIR ];
then
echo "Erstelle $SERVER_DIR" ;
echo "Bitte warten..." ;
mkdir $SERVER_DIR ;
echo "$SERVER_DIR erfolgreich erstellt!" ;
else
echo "$SERVER_DIR existiert bereits";
fi
if [ ! -d $SERVER_DIR/$GAMEDIR ];
then
echo "Erstelle $SERVER_DIR/$GAMEDIR" ;
echo "Bitte warten..." ;
mkdir $SERVER_DIR/$GAMEDIR ;
echo "$SERVER_DIR/$GAMEDIR erfolgreich erstellt!" ;
else
echo "$SERVER_DIR/$GAMEDIR existiert bereits";
fi
echo "" ;
echo "Wechsle ins Vezeichnis $SERVER_DIR/$GAMEDIR"
cd $SERVER_DIR/$GAMEDIR ;
if [ ! -f hldsupdatetool.bin ];
then
echo "Lade HLDSUpdateTool.bin runter" ;
wget http://storefront.steampowered.com/download/hldsupdatetool.bin ;
else
echo "HLDSUpdateTool.bin existiert bereits!"
fi
echo "Mache HLDSUpdateTool.bin ausfuehrbar"
chmod 777 hldsupdatetool.bin ;
echo "Fuehre HLDSUpdateTool.bin aus"
./hldsupdatetool.bin <<<"yes"
echo "Update Steam"
./steam ;
./steam ;
echo "Installiere Spiel $GS_GAME" ;
echo "################################################################"
echo "#### INFO: Die Installation KANN viel Zeit benoetigen. #########"
echo "#### Dies ist abhaengig von der Auslastung der Steamserver! ####"
echo "################################################################"
echo "Installation startet in 10 Sekunden" ;
sleep 5 ;
echo "5" ;
sleep 1 ;
echo "4" ;
sleep 1 ;
echo "3" ;
sleep 1 ;
echo "2" ;
sleep 1 ;
echo "1" ;
sleep 1 ;
echo "! Start !" ;
...
...
;;
Wisst ihr vllt was da falsch ist?
LG
Killerkarnickel