You are not logged in.

loip

Beginner

  • "loip" started this thread

Posts: 35

wcf.user.option.userOption53: Ja

  • Send private message

1

Sunday, December 9th 2012, 4:34pm

Start / Update script , 2xHL2DM/Minecraft/Ts3/

Servus alle zamnander.

Ich habe mir ein kleines Start/update scripte gebastelt bzw mehrer die einfach der reihe nach ausgeführt werden

//////SCRIPTE///////
start-master.sh

Spoiler Spoiler


Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/bin/bash

echo Beginne scripte der Reihe nach zu laden mehr als 10 minuten lade zeit möglich 
sleep 5
sh start-mc1.sh start &
sleep 30
sh start-ts3.sh start &
sleep 10
sh start-hl2-war-update.sh start & 
sleep 250
sh start-hl2-war-update.sh start & 
sleep 250
sh start-hl2-war.sh start &
sleep 10
sh start-hl2-enno-update.sh start & 
sleep 250
sh start-hl2-enno-update.sh start &
sleep 250
sh start-hl2-enno.sh start &
sleep 2


exit 1




HL2 Start script

Spoiler Spoiler

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
 # !!!!!!!!!!!!!! CHANGE THIS TO THE USER YOU USE FOR YOUR SERVER !!!!!!!!!!!!!!!
 CS_USER=war
 # You must be logged in as this user (not by su!) to re-attach the screen!

 PATH=/bin:/usr/bin:/sbin:/usr/sbin

 # # DON'T FORGET TO CHANGE THE PATH TO YOUR NEEDS!
 DIR=/home/hl2server/war

 DAEMON=steam

  # Internet server:
 PARAMS="./steam -command update -game hl2mp -dir /home/hl2server/war"

 NAME=warserver
 DESC="ONE - WARSERVER - UPDATE"





 start() {
 echo "Starting $DESC: $NAME"
 if [ -e $DIR ]
 then
 if [ `whoami` = root ]
 then
 su - $CS_USER -c "cd $DIR ; screen -d -m -S $NAME ./$DAEMON $PARAMS"
 else
 cd $DIR ; screen -d -m -S $NAME ./$DAEMON $PARAMS
 fi
 echo " ... done."
 else echo "No such directory: $DIR!"
 fi
 }





 case "$1" in
 start)
 start
 ;;

 *)
 echo "Usage: $0 {update}"
 exit 1
 ;;

 esac


 exit 0



und das Update script

Spoiler Spoiler

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
 # !!!!!!!!!!!!!! CHANGE THIS TO THE USER YOU USE FOR YOUR SERVER !!!!!!!!!!!!!!!
 CS_USER=enno
 # You must be logged in as this user (not by su!) to re-attach the screen!

 PATH=/bin:/usr/bin:/sbin:/usr/sbin

 # # DON'T FORGET TO CHANGE THE PATH TO YOUR NEEDS!
 DIR=/home/hl2server/enno

 DAEMON=steam

  # Internet server:
 PARAMS="./steam -command update -game hl2mp -dir /home/hl2server/enno"

 NAME=ennoserver
 DESC="ONE - ennoSERVER - UPDATE"





 start() {
 echo "Starting $DESC: $NAME"
 if [ -e $DIR ]
 then
 if [ `whoami` = root ]
 then
 su - $CS_USER -c "cd $DIR ; screen -d -m -S $NAME ./$DAEMON $PARAMS"
 else
 cd $DIR ; screen -d -m -S $NAME ./$DAEMON $PARAMS
 fi
 echo " ... done."
 else echo "No such directory: $DIR!"
 fi
 }





 case "$1" in
 start)
 start
 ;;

 *)
 echo "Usage: $0 {update}"
 exit 1
 ;;

 esac


 exit 0

beide Hl2 scripte gibt es jewals für "war" und "enno"


Ich habe die scripte in /etc/init.d Liegen und per "update-rc.d start-master.sh defaults" eingetragen

Wen ich das master per hand starte funktiniert alles wunderbar Updates sowie auch der Start an sich.
nach einem normalen reboot scheint er aber keins der scripte auszuführen.

Wehre super wen ihr mirda helfen könnted

MFG
Loip104
Bitte Bewerten! Mein Rechen Knecht Bitte Bewerten!

Rechtschreibfehler sind gewollt und dienen zur allgemein belustigung


Lacrimosa99

Intermediate

Posts: 275

Location: Leipzig

Occupation: IT-Systemintegrator

wcf.user.option.userOption53: Ja

  • Send private message

2

Sunday, December 9th 2012, 6:28pm

Wie wäre es, das Script per Cron zu starten?

Hatt früber es so gelöst:

@reboot /home/dein_Script.sh

Sobald er rebootet war... führte er das Script aus ;)

MFG




loip

Beginner

  • "loip" started this thread

Posts: 35

wcf.user.option.userOption53: Ja

  • Send private message

3

Wednesday, December 12th 2012, 11:36pm

Wie wäre es, das Script per Cron zu starten?

@reboot /home/dein_Script.sh



Servus bin heute mal zu testen gekommen das funktioniert so leider auch nicht bleibt wieder das selbe es passiert garnichts.

Crontab (datei)

Spoiler Spoiler


Source code

1
@reboot root /home/scripte/start-master.sh



Crontab -e

Spoiler Spoiler


Source code

1
@reboot /home/scripte/start-master.sh




das crontab log zeigt folgendes

Spoiler Spoiler

Source code

1
2
3
4
5
6
...
Dec 12 23:09:01 ks205019 /USR/SBIN/CRON[16706]: (root) CMD (  [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -type f -cmin +$(/usr/lib/php5/maxlifetime) -delete)
Dec 12 23:29:09 zeibig.me /usr/sbin/cron[3061]: (CRON) INFO (pidfile fd = 3)
Dec 12 23:29:09 zeibig.me /usr/sbin/cron[3062]: (CRON) STARTUP (fork ok)
Dec 12 23:29:09 zeibig.me /usr/sbin/cron[3062]: (CRON) INFO (Running @reboot jobs)
Dec 12 23:29:09 zeibig.me /USR/SBIN/CRON[3076]: (root) CMD (/home/scripte/start-master.sh)




weis leider nicht wasda schief leuft
Bitte Bewerten! Mein Rechen Knecht Bitte Bewerten!

Rechtschreibfehler sind gewollt und dienen zur allgemein belustigung


MadMakz

Super Moderator

Posts: 1,878

Location: ~#

wcf.user.option.userOption53: Ja

  • Send private message

4

Thursday, December 13th 2012, 1:21am

wenn ichs noch richtig im kopf habe wird das srcds_run script unter user root seinen dienst (aus guten gründen) verweigern.

probier mal

Source code

1
@reboot cd /home/ ; sh dein_Script.sh


allerdings solltest du davon absehen unter "root" zu starten.

ansonnsten einfach mal in ein log laufen lassen um zu sehen wo es evtl. hakt .

Source code

1
 > /pfad/log.txt

This post has been edited 5 times, last edit by "MadMakz" (Dec 13th 2012, 1:33am)


loip

Beginner

  • "loip" started this thread

Posts: 35

wcf.user.option.userOption53: Ja

  • Send private message

5

Thursday, December 13th 2012, 11:19am


probier mal

Source code

1
@reboot cd /home/ ; sh dein_Script.sh


allerdings solltest du davon absehen unter "root" zu starten.

ansonnsten einfach mal in ein log laufen lassen um zu sehen wo es evtl. hakt .

Source code

1
 > /pfad/log.txt



Das funktioniert so Teilweise.
der MC und Ts3 starten die Source server nicht (auch update nicht)

das log bleibt leider leer.


und wie meinst du das nicht als root ?
wen ich es als jemmand mit weniger rechten starte kann er den dann noch zwischen den usern wechseln im jeweiligen Script ?
Bitte Bewerten! Mein Rechen Knecht Bitte Bewerten!

Rechtschreibfehler sind gewollt und dienen zur allgemein belustigung


MadMakz

Super Moderator

Posts: 1,878

Location: ~#

wcf.user.option.userOption53: Ja

  • Send private message

6

Thursday, December 13th 2012, 12:32pm


...
und wie meinst du das nicht als root ?
wen ich es als jemmand mit weniger rechten starte kann er den dann noch zwischen den usern wechseln im jeweiligen Script ?

sorry, hatte nicht gesehen das es ein run-as script ist.

hier noch ein fehler:

Source code

1
$DIR ; screen -d -m -S $NAME ./$DAEMON $PARAMS


mit

Source code

1
2
DAEMON=steam
PARAMS="./steam -command update -game hl2mp -dir /home/hl2server/war"


ergibt sich daraus

Source code

1
./steam ./steam -command update -game hl2mp -dir /home/hl2server/war



d.h.

Source code

1
./steam 
muss aus PARAMS raus.

dein gepostetes HL2 Start script und Updatescript sind die gleichen.

This post has been edited 6 times, last edit by "MadMakz" (Dec 13th 2012, 3:24pm)


loip

Beginner

  • "loip" started this thread

Posts: 35

wcf.user.option.userOption53: Ja

  • Send private message

7

Sunday, December 16th 2012, 5:53pm

Thx habe das grade mal gefixt.

jedoch bleibt leider alles beim alten die Hl2 server starten nicht.

Gibt es evtl andere alternativen ? um täglich nach updates zu checken und diese auch auszuführen befor die server nachm reboot starten ?
Bitte Bewerten! Mein Rechen Knecht Bitte Bewerten!

Rechtschreibfehler sind gewollt und dienen zur allgemein belustigung