script das mehrere screens startet

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
OldGod78
Beiträge: 190
Registriert: 20.04.2016 20:59:51
Kontaktdaten:

script das mehrere screens startet

Beitrag von OldGod78 » 18.05.2016 21:07:39

Hallo. Habe ein script geschrieben, was mehrere Scripts startet, bzw. starten soll, geht nicht so ganz ...

Code: Alles auswählen

#!/bin/bash

cd /home/user/server/1/
sudo -u user ./start.sh
cd /home/user/server/2/
sudo -u user ./start.sh
cd /home/user/server/3/
sudo -u user ./start.sh
cd /home/user/server/4/
sudo -u user ./start.sh
cd /home/user/server/5/
sudo -u user ./start.sh
Doch das geht nich, der startet nur den 1., wohl weil er ja dann im screen ist, und dort kann er nicht cd und so eigneben ... oder? also was tun ?

Benutzeravatar
smutbert
Beiträge: 8342
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: script dass mehrere screens startet

Beitrag von smutbert » 18.05.2016 21:22:48

Code: Alles auswählen

…
cd /home/user/server/1/
sudo -u user ./start.sh &
cd /home/user/server/2/
sudo -u user ./start.sh &
cd /home/user/server/3/
…

OldGod78
Beiträge: 190
Registriert: 20.04.2016 20:59:51
Kontaktdaten:

Re: script dass mehrere screens startet

Beitrag von OldGod78 » 18.05.2016 21:36:51

Hä:

Code: Alles auswählen

root@user:/home/user# Must be connected to a terminal.
Must be connected to a terminal.
Must be connected to a terminal.
Must be connected to a terminal.
Must be connected to a terminal.

TomL

Re: script dass mehrere screens startet

Beitrag von TomL » 18.05.2016 22:26:32

So funktioniert das nicht. Du musst natürlich für jeden neuen "screen" die zuvor geöffnete wieder mit strg-a + d detach'en. Ansonsten würdest Du in der geöffneten screen-Session eine weitere anlegen, dann in der in 1 liegenden 2 die dritte.... usw. Oder du öffnest für jeden Screen ein eigenes Terminal.... oder du schaust dir mit

Code: Alles auswählen

man screen
die Doku an und versuchst herauszufinden, ob man screen in "detached mode" starten kann, was natürlich geht und die eleganteste Lösung darstellt.
Zuletzt geändert von TomL am 18.05.2016 22:30:48, insgesamt 1-mal geändert.

eggy
Beiträge: 3334
Registriert: 10.05.2008 11:23:50

Re: script dass mehrere screens startet

Beitrag von eggy » 18.05.2016 22:30:30

Keine Ahnung was Du vorhast, aber für mich sieht das so aus, als willst Du mal nen Blick auf clusterssh werfen (oder auf eins der anderen ähnlichen Tools, Forensuche zu clusterssh sollte weitere Treffer bringen).

Benutzeravatar
smutbert
Beiträge: 8342
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: script dass mehrere screens startet

Beitrag von smutbert » 18.05.2016 22:52:15

Entschuldigung, habe überlesen, dass es um screen geht.

uname
Beiträge: 12398
Registriert: 03.06.2008 09:33:02

Re: script dass mehrere screens startet

Beitrag von uname » 19.05.2016 08:17:04

Schreib doch mal was dein Ziel ist und vor allem den Inhalt von start.sh . Mindestes das "cd ..." - Zeug solltest du versuchen loszuwerden. Braucht kein Mensch. Auch den Sinn von Zweck von sudo wäre mal ganz interessant zu erfahren. Was soll in dem Zusammenhang Debianscreen bewirken? Meinst du überhaupt den Terminal-Multiplexer Debianscreen? Wenn ja willst du mehrere Screen-Sitzungen oder mehrere Terminals in einer Screen-Sitzung?

OldGod78
Beiträge: 190
Registriert: 20.04.2016 20:59:51
Kontaktdaten:

Re: script dass mehrere screens startet

Beitrag von OldGod78 » 19.05.2016 14:40:55

" strg-a + d detach'en" Aber wie?

Das script soll mehrere screens starten, wo Minecraftserver dahinterlegen.

Liffi
Beiträge: 2345
Registriert: 02.10.2004 01:33:05

Re: script dass mehrere screens startet

Beitrag von Liffi » 19.05.2016 16:06:43

Ich bin mir nicht sicher, wie das bei screen ist, aber bei tmux kann man einfach

Code: Alles auswählen

tmux detach
aufrufen.
Falls tmux installiert ist oder du es installieren kannst, würde ich dazu raten.

OldGod78
Beiträge: 190
Registriert: 20.04.2016 20:59:51
Kontaktdaten:

Re: script dass mehrere screens startet

Beitrag von OldGod78 » 19.05.2016 16:13:30

Hab ich installiert, da passiert aber nix :/

uname
Beiträge: 12398
Registriert: 03.06.2008 09:33:02

Re: script dass mehrere screens startet

Beitrag von uname » 19.05.2016 16:14:51

Kannst du überhaupt einen Minecraftserver über Screen laufen lassen? Es gibt einige Anleitungen im Internet. Wenn es für einen Minecraftserver funktioniert melde dich wieder und poste deine zugehörige Implementierung.

OldGod78
Beiträge: 190
Registriert: 20.04.2016 20:59:51
Kontaktdaten:

Re: script dass mehrere screens startet

Beitrag von OldGod78 » 19.05.2016 16:19:51

natürlich geht das... nutze es seit Monaten.

Liffi
Beiträge: 2345
Registriert: 02.10.2004 01:33:05

Re: script dass mehrere screens startet

Beitrag von Liffi » 19.05.2016 16:49:41

OldGod78 hat geschrieben:Hab ich installiert, da passiert aber nix :/
Wird in den Skripten denn noch screen benutzt oder hast du das auf tmux umgestellt?

OldGod78
Beiträge: 190
Registriert: 20.04.2016 20:59:51
Kontaktdaten:

Re: script dass mehrere screens startet

Beitrag von OldGod78 » 19.05.2016 18:02:30

achso, ne screen.. und das soll eig. auch so bleiben^^

uname
Beiträge: 12398
Registriert: 03.06.2008 09:33:02

Re: script dass mehrere screens startet

Beitrag von uname » 20.05.2016 08:16:04

Dann poste doch endlich deine aktuelle Konfiguration und deine evtl. aktuell bereits funktionierenden Scripte. Dann werden wir dir das entsprechend gerne auf beliebig viele Server umbauen.

OldGod78
Beiträge: 190
Registriert: 20.04.2016 20:59:51
Kontaktdaten:

Re: script das mehrere screens startet

Beitrag von OldGod78 » 20.05.2016 11:34:19

Ich muss ja nur wissen, wie ich "Strg+A+D" simuliere... dass das script den screen verlässt, um wo anders hin zu gehen und dort einen anderen screen zu öffnen..

uname
Beiträge: 12398
Registriert: 03.06.2008 09:33:02

Re: script das mehrere screens startet

Beitrag von uname » 20.05.2016 12:22:29

Was soll dein Script bewirken? Den Befehl innerhalb von Screen neu starten wenn er abgestürzt ist? Da solltest du schon innerhalb der Screen-Sitzung selbst und nicht von außen kontrollieren bzw. durchführen.

Benutzeravatar
heisenberg
Beiträge: 4123
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: script das mehrere screens startet

Beitrag von heisenberg » 20.05.2016 12:31:21

Ich will ja nur...
Es wundert mich, dass Dir hier im Forum überhaupt noch jemand auf Deine vielen Fragen antwortet. Nutze doch erst mal die vorhandene Doku, statt jedes Fitzelchen einzeln im Forum zu erfragen. Das fängt damit an, das Du Dich mal etwas in das verwendete Betriebssystem einarbeitest.

Hier ist mal ein Tip für den Anfang(Speziell dort: Der Link auf die Handbücher!):
https://wiki.debianforum.de/Hilfe_im_De ... m_bekommen

Strg+A, D simulieren könnte man auch. Aber viel hässlicher und umständlicher geht's kaum noch. Du startest am besten Deine screen-session als "detached". Wie man eine Screen-Session detached started, das steht in der man-Page zu screen, Kommando: man screen.

Natürlich ist das nur ein schlechter Workaround, für den es bessere Möglichkeiten gibt. Saubere Variante ist, für Deine ganzen Mindcraft-Prozesse Dienste einzurichten(-> systemd). Dann starten die z. B. auch automatisch neu, wenn Sie mal abstürzen und man kann die mit den Dienstewerkzeugen ordentlich verwalten. Als schnell-und-dreckig-Lösung kann man detached-Screen IMHO schon verwenden.

Antworten