Zeitgesteuerte Pakete

Status
Für weitere Antworten geschlossen.

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
Hallo ich habe auf meiner DS713+ einen Minecraft und Teamspeak Server am laufen.
Dadurch geht die NAS ja nicht mehr in den Ruhezustand.
Meine frage ist jetzt ob es eine Möglichkeit gibt Pakete zeitgesteuert ein und auszuschalten damit in der Nacht die Server aus sind.
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
danke ich hab mir das ganze durchgelesen und gleich mal getestet
zur info ich habe dsm 4.2 installiert und jetzt zum testen verwende ich einen Craftbukkit server

unter Systemsteuerung - Aufgabenplaner habe ich ein benutzerdefiniertes Script erstellt und folgendes eingefügt

/var/packages/Craftbukkit/scripts/start-stop-status stop

als Benutzer habe ich root und den automatisch erstellen Craftbukkit getestet
außerdem habe ich start und stop probiert jedoch ändert es nichts am Paket
das bleibt immer im Ursprungszustand...
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Schau mal auf der Konsole nach, ob das Paket auch wirklich so heißt, Groß/Kleinschreibung ist auch relevant.
 

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
screen-capture.jpg
so sieht das Verzeichnis aus ich denke nicht das ich mich verschrieben hab aber vermutlich mache ich irgend etwas anderes falsch

leider kenne ich mich mit linux nur teilweise aus
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
und wieso fährst du den Server über Nacht nicht einfach zeitgesteuerr runter und startest ihn wiederum zeitgesteuert am Morgen?
 

Puppetmaster

Benutzer
Sehr erfahren
Mitglied seit
03. Feb 2012
Beiträge
18.991
Punkte für Reaktionen
628
Punkte
484
Hallo!

Ich habe es bisher weder originär im Cron als auch mit dem neuen Aufgabenplaner geschafft, ein sh script ohne vorangestelltes sh zu starten. Versuch das doch mal.
Ausserdem solltest du im script selbst immer absolute Pfade angeben.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0

Puppetmaster

Benutzer
Sehr erfahren
Mitglied seit
03. Feb 2012
Beiträge
18.991
Punkte für Reaktionen
628
Punkte
484
das tritt eigentlicfh immer dann auf wenn das Script selber nicht als ausführbar markiert ist

Keine Ahnung. Hatte bisher immer alles mit einem chmod +x ausführbar gemacht, ging trotzdem nicht.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
hm das sollte eigentlich reichen. Und die SheBang Zeile hast du im Script korrekt drin?
 

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
wie ist das mit dem absoluten pfad und sh gemeint?
einfach sh /.....?
über nacht herunterfahren geht nicht da in der nacht antivirus läuft und der server nur nachmittags bis ca 10 uhr laufen soll
 

Puppetmaster

Benutzer
Sehr erfahren
Mitglied seit
03. Feb 2012
Beiträge
18.991
Punkte für Reaktionen
628
Punkte
484
hm das sollte eigentlich reichen. Und die SheBang Zeile hast du im Script korrekt drin?

Ich jetzt?
Also bei mir ist die drin, ja. Aber was ich gerade sehe, bei einem script was ich mir gerade angesehen habe, bin ich zumindest meinem eigenen Rat nicht gefolgt und habe ein echo ohne absoluten Pfad drin... :eek:

EDIT:
...und bei einem sogar ein #!/bin/bash statt #!/bin/sh
Junge junge, ich muß mal aufräumen, was!? :D
 

Puppetmaster

Benutzer
Sehr erfahren
Mitglied seit
03. Feb 2012
Beiträge
18.991
Punkte für Reaktionen
628
Punkte
484

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
/root/var/packages/Craftbukkit/scripts/start-stop-status stop
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
außerdem habe ich start und stop probiert jedoch ändert es nichts am Paket
das bleibt immer im Ursprungszustand...

wird der Status immer gleich angezeigt oder hast per Prozessliste geschaut, ob der Minecraft-Server läuft bzw. nicht läuft? Es kann ja sein, dass einfach nur die Anzeige nicht gepflegt wird, wenn man es manuell macht.

Itari
 

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
also auch nach dem stop script kann ich auf dem server spielen
 

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
ich melde mich nochmal da ich es nicht hinbekomme..

meine start-stop-status.sh sieht so aus
#!/bin/sh

#--------MINECRAFT/CRAFTBUKKIT start-stop-status script
#--------package maintained at pcloadletter.co.uk

DAEMON_USER="`echo ${SYNOPKG_PKGNAME} | awk {'print tolower($_)'}`"
DAEMON_ID="${SYNOPKG_PKGNAME} daemon user"
ENGINE_SCRIPT="/var/packages/${SYNOPKG_PKGNAME}/scripts/launcher.sh"
DAEMON_USER_SHORT=`echo ${DAEMON_USER} | cut -c 1-8`

daemon_status ()
{
ps | grep "^ *[0-9]* ${DAEMON_USER_SHORT} .*java" > /dev/null
}

case $1 in
start)
DAEMON_HOME="`cat /etc/passwd | grep "${DAEMON_ID}" | cut -f6 -d':'`"

#set the current timezone for Java so that log timestamps are accurate
#we need to use the modern timezone names so that Java can figure out DST
SYNO_TZ=`cat /etc/synoinfo.conf | grep timezone | cut -f2 -d'"'`
SYNO_TZ=`grep "^${SYNO_TZ}" /usr/share/zoneinfo/Timezone/tzname | sed -e "s/^.*= //"`
grep "^export TZ" ${DAEMON_HOME}/.profile > /dev/null \
&& sed -i "s%^export TZ=.*$%export TZ='${SYNO_TZ}'%" ${DAEMON_HOME}/.profile \
|| echo export TZ=\'${SYNO_TZ}\' >> ${DAEMON_HOME}/.profile

su - ${DAEMON_USER} -s /bin/sh -c "${ENGINE_SCRIPT} start ${DAEMON_USER} ${SYNOPKG_PKGDEST} &"
exit 0
;;

stop)
su - ${DAEMON_USER} -s /bin/sh -c "${ENGINE_SCRIPT} stop ${DAEMON_USER} ${SYNOPKG_PKGDEST}"
exit 0
;;

status)
if daemon_status ; then
exit 0
else
exit 1
fi
;;

log)
echo "${SYNOPKG_PKGDEST}/server.log"
exit 0
;;
esac

der Pfad der Datei ist /var/packages/Craftbukkit/scripts/launcher.sh,CraftBukkit-launcher.sh
/var/packages/Craftbukkit/scripts/start-stop-status.sh

wie müsste dann das Start bzw Stop Script aussehen?
Ich verstehe das mit den Script leider absolut nicht.
Danke schonmal
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Das Skript verwendet die ${SYNOPKG_...}-Variablen, die aber nicht gesetzt sind. Das ist generell problematisch, weil die auch bei einem Neustart der DS nicht passen.

Entweder Du setzt die vorher passend oder wendest Dich an den Entwickler.
 

Tim92

Benutzer
Mitglied seit
29. Feb 2012
Beiträge
83
Punkte für Reaktionen
1
Punkte
8
lieg ich damit richtig das ich das ${SYNOPKG_PKGNAME} gegen den richtigen Namen überall im Script austauschen müsste in dem Fall Craftbukkit?
und wie müsste dann das Script für den aufgabenplaner im DSM aussehen?
 

Doppelter Wolf

Benutzer
Mitglied seit
11. Sep 2008
Beiträge
171
Punkte für Reaktionen
0
Punkte
16
damit kannst du den Server stopen
in die zeile des Zeitplaners eintragen
Rich (BBCode):
echo stop >> /tmp/stdin.craftbukkit

aber ich kriege ihn nicht mehr per cron ans laufen. Hatte es schon jemand geschaft den Bukkit Server per Cron an und aus zumachen?
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat