Screen ist terminating Systemstart
Guten Morgen,
ich habe ein Problem mit "screen". Beim Systemstart soll ein python Scriptim Hintergrund laufen, ich möchte aber auch Zugriff auf die Ausgabe haben. Also möchte ich dafür screen benutzen. Das Problem ist aber das sich screen nach wenigen Minuten immer selbst beendet. Das einzige was ich sehe ist "screen is terminating".
Wie kann ich raus finden warum sich screen beendet?
Ich habe diese Phänomen übrigens auf 3 Debian Installationen, Squeeze, Wheezy, Testing. Auf allen das selbe.
Meine Aufruf ist ganz Simpel
Nun etwas merkwürdiges, wenn ich es auf der Konsole selbst mache bekomme ich das gleiche Problem. Wenn ich aber das so mache:
Funktioniert es, das Problem liegt wohl darin das ich den Befehl direkt übergebe.
Weiß jemand rat?
Sven
ich habe ein Problem mit "screen". Beim Systemstart soll ein python Scriptim Hintergrund laufen, ich möchte aber auch Zugriff auf die Ausgabe haben. Also möchte ich dafür screen benutzen. Das Problem ist aber das sich screen nach wenigen Minuten immer selbst beendet. Das einzige was ich sehe ist "screen is terminating".
Wie kann ich raus finden warum sich screen beendet?
Ich habe diese Phänomen übrigens auf 3 Debian Installationen, Squeeze, Wheezy, Testing. Auf allen das selbe.
Meine Aufruf ist ganz Simpel
#/etc/init.d/name
screen -S name /home/xxx/blabla.sh
Nun etwas merkwürdiges, wenn ich es auf der Konsole selbst mache bekomme ich das gleiche Problem. Wenn ich aber das so mache:
screen
#2x muss ich bestätigen
# befehle in screen eingeben
/home/xxx/blabla.sh
#Detach
Weiß jemand rat?
Sven
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 188747
Url: https://administrator.de/contentid/188747
Ausgedruckt am: 24.11.2024 um 17:11 Uhr
15 Kommentare
Neuester Kommentar
Moin,
"man screen" ist ein guter Ansatzpunkt.
Insbesondere die folgenden Optionen sollten weiterhelfen:
lks
Nachtrag: Wird heute einem heutzutage nicht mehr beigebracht, die Spezifikation/Anleitung zu lesen?
"man screen" ist ein guter Ansatzpunkt.
Insbesondere die folgenden Optionen sollten weiterhelfen:
-m causes screen to ignore the $STY environment variable. With
"screen -m" creation of a new session is enforced, regardless
whether screen is called from within another screen session or
not. This flag has a special meaning in connection with the `-d'
option:
-d -m Start screen in "detached" mode. This creates a new session but
doesn't attach to it. This is useful for system startup
scripts.
-D -m This also starts screen in "detached" mode, but doesn't fork a
new process. The command exits if the session terminates.
lks
Nachtrag: Wird heute einem heutzutage nicht mehr beigebracht, die Spezifikation/Anleitung zu lesen?
Moin,
also bei mir tut ein
bzw ein
mit der obigen screenzeile als Inhalt von /etc/init.d/dummyscreen das was es soll.
Vielleicht ist Dein Phytonscripot kaputt?
Mach mal ein einfaches bash-skript zum testen. Bei mir steht da nur
als Inhalt des screen-dummy.sh-Skriptes.
lks
also bei mir tut ein
sudo screen -S dummyscreen -d -m /home/lks/bin/screen-dummy.sh
bzw ein
sudo /etc/init.d/dummyscreen
mit der obigen screenzeile als Inhalt von /etc/init.d/dummyscreen das was es soll.
Vielleicht ist Dein Phytonscripot kaputt?
Mach mal ein einfaches bash-skript zum testen. Bei mir steht da nur
#!/bin/bash
echo "screen-dummy"
lks
Also ich habe mal in mein skript eine endlosschleife eingebaut
while true; do echo "screen-dummy" ; sleep 1 ; done;
<end>
und es tut immer noch. Mindestens 5 bis 10 Minuten lang.
Ich tippe mal, da ist irgendetwas, daß dein skript beendet.
lks
PS. von welchem OS reden wir überhaupt, welche Distribution und welche screen-version. Ich habe precise pangolin mit Screen version 4.00.03jw4 (FAU) 2-May-06.
while true; do echo "screen-dummy" ; sleep 1 ; done;
<end>
und es tut immer noch. Mindestens 5 bis 10 Minuten lang.
Ich tippe mal, da ist irgendetwas, daß dein skript beendet.
lks
PS. von welchem OS reden wir überhaupt, welche Distribution und welche screen-version. Ich habe precise pangolin mit Screen version 4.00.03jw4 (FAU) 2-May-06.
Nachtrag: Heute mittag (29.7.2012) läuft mein Testskript immer noch. Ich tippe mal drauf, daß Dein Skript irgendeine eigenschaft hat, daß es beim starten aus /etc/init.d sich anders verhält, als wenn man es direkt aufruft. Ich würde Dir einfach empfehlen, es mal zuerst mit einem Testskript ähnlich meinem zu versuchen und wenn screen damit läuft, dann dein PHP-Skript zu debuggen.
lks
lks
Einfach eine Datei dafür nehmen:
Fertich.
lks
dd if=/dev/zero of=/var/swapfile bs=1M count=2048 # 2 GB Datei erzeugen.
mkswap -L evilmoes-swap /var/swapfile # als swap initialisieren
swapon /var/swapfile # swap aktivieren
# und nun noch in fstab eintragen
echo >>/etc/fstab
echo "# swapdatei von evilmoe" >>/etc/fstab
echo "/var/swapfile none swap sw 0 0" >>/etc/fstab
Fertich.
lks
Ok "swapon geht nicht" habeich andrs verstanden. Daher mein Vorschlag.
Da hilft nur Geld in die Hand zu nehmen und sich einen ordentlichen Server zu leisten.
lks