Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Linux Prozess bei Prozessabsturz umgehen wieder starten lassen

Frage Linux Debian

Mitglied: Panubu

Panubu (Level 1) - Jetzt verbinden

14.01.2014, aktualisiert 14.06.2015, 2491 Aufrufe, 6 Kommentare

Guten Tag zusammen,

ich stelle mir folgende Frage:

Ist es möglich, einen Prozess oder ein Script, das unter/in Linux (Debian 7) läuft bei einem Absturz des Prozesses/Scripts umgehend wieder starten zu lassen?
D.h.: Ich starte das Script -> Das Script läuft einige Stunden/Tage -> Script stürzt ab -> UND nun soll es automatisch wieder starten.

Ist dies möglich, wenn ja, wo wäre da der beste Ansatz? Ich habe nichts wirklich zu im Kopf, deswegen dachte ich mir hohle ich mir hier mal ein paar Denkanstöße.
Mitglied: Pjordorf
14.01.2014 um 16:27 Uhr
Hallo,

Zitat von Panubu:
Das Script läuft einige Stunden/Tage -> Script stürzt ab
Wäre es nicht sinnvoller den Grund des Absturzes abzustellen?

Ist dies möglich, wenn ja, wo wäre da der beste Ansatz?
Prozesse regelmäßig auslesen, schauen ob der gewünschte Przess noch läuft, wenn nicht diesen dann erneut starten. Achtung das kostet natürlich aus Systemresourcen.

Gruß,
Peter
Bitte warten ..
Mitglied: Panubu
14.01.2014, aktualisiert um 16:33 Uhr
> Wäre es nicht sinnvoller den Grund des Absturzes abzustellen?
Ja, eigentlich schon, allerdings habe ich keinen Einfluss auf den Sourcecode und es ist ein Programmfehler. Aber bevor ich das nun alles erkläre, wie das zustande kam, sprengt das hier den Rahmen.

Aber klar, danke für den Ansatz. Das würde allerdings wirklich sehr viel Resourcen kosten, da er andauernd den Prozess "anpingen" würde. Desweiteren bekommt er ja auch immer wieder eine andere PID, wo bzw. wie würde denn geprüft werden, ob der Prozess noch läuft?
Bitte warten ..
Mitglied: Pjordorf
14.01.2014 um 16:46 Uhr
Hallo,

Zitat von Panubu:
Das würde allerdings wirklich sehr viel Resourcen kosten
Was aber doch abhängih ist wie und wann und wie oft du eben....
Dem einen reichen es alle 60 Sekunden, den anderen alle 60 Minuten und manche brauchen es alle100 milli Sekunden in Realzeit.

"anpingen" würde
Von Pingen habe ich nicht gesprochen. Vielleicht reicht es ja schon alle 15 Minuten mal ein TOP zu machen und da durchzuforsten.

Desweiteren bekommt er ja auch immer wieder eine andere PID
Sollte so sein ausser du hast wahnsinniges Glück

wo bzw. wie würde denn geprüft werden, ob der Prozess noch läuft?
z.B. mit einem "ps" oder gar ein "man ps" = http://unixhelp.ed.ac.uk/CGI/man-cgi?ps

Gruß,
Peter
Bitte warten ..
Mitglied: Panubu
14.01.2014 um 16:50 Uhr
Hi,

danke dir erstmal! Ich muss nun erst zum Arzt und denn schaue ich mir das mal an und setzte mich dran. Meine Lösung werde ich selbstverständlich auch bekannt geben.

LG
Bitte warten ..
Mitglied: Lochkartenstanzer
LÖSUNG 14.01.2014, aktualisiert um 20:09 Uhr
http://blog.eracc.com/2010/05/08/linux-monitor-a-service-with-a-watchdo ...

Ist schon seit Jahrzehnten usus, das auf ähnliche Art zu machen.

lks

nachtrag: Irgendwie funktioniert der Link plötzlich nicht mehr, aber es gibt ja noch den google cache.

Nachtrag zum nachtrag:

hier das skript aus dem obigen Link, damit es der Nachwelt erhalten bleibt, wenn die Originalseite nicht mehr erreichbar sein sollte:

#!/bin/bash 
# watchdog 
# Run as a cron job to keep an eye on what_to_monitor which should always 
# be running. Restart what_to_monitor and send notification as needed. 
# This needs to be run as root or a user that can start system services. 
# Revisions: 0.1 (20100506), 0.2 (20100507) 
 
NAME=what_to_monitor 
START=/full/path/to/$NAME 
NOTIFY=person1email 
NOTIFYCC=person2email 
GREP=/bin/grep 
PS=/bin/ps 
NOP=/bin/true 
DATE=/bin/date 
MAIL=/bin/mail 
RM=/bin/rm 
 
$PS -ef|$GREP -v grep|$GREP $NAME >/dev/null 2>&1 
case "$?" in 
   0) 
   # It is running in this case so we do nothing. 
   $NOP 
   ;; 
   1) 
   echo "$NAME is NOT RUNNING. Starting $NAME and sending notices." 
   $START 2>&1 >/dev/null & 
   NOTICE=/tmp/watchdog.txt 
   echo "$NAME was not running and was started on `$DATE`" > $NOTICE 
   $MAIL -n -s "watchdog notice" -c $NOTIFYCC $NOTIFY < $NOTICE 
   $RM -f $NOTICE 
   ;; 
esac 
 
exit
Bitte warten ..
Mitglied: Panubu
14.01.2014 um 20:10 Uhr
Hey,

danke dir. Das ist wirklich hilfreich! Der Link funktioniert aber noch. Dennoch habe ich mir das Script mal abgespeichert.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Alle aktiven nicht root Prozesse anzeigen lassen?
gelöst Frage von donducBatch & Shell9 Kommentare

Hallo Ich bin soweit, dass ich weiss, wie man alle root-prozesse anzeigen lässt. Jedoch sollen alle aktiven nicht root ...

Batch & Shell
Fenstername von Prozess anzeigen lassen (vbs)
Frage von goodbytesBatch & Shell3 Kommentare

Hallo, mittels des folgenden Codes kann ich einen bestimmten Prozess "abschießen": Wenn ich die Datei mittels IrfanView geöffnet habe ...

Windows 7
Dienste lassen sich nicht starten
Frage von gamerffWindows 74 Kommentare

Hallo Forum, ich hab das große Problem an meinem PC das sich die Netzwerk Dienste nicht starten lassen. Ich ...

Windows 7
Kryptografiedienste lassen sich nicht starten
Frage von Dr.CornwallisWindows 71 Kommentar

Hallo Gemeinde! Eine HP Workstation(Windows 7 x64 professional) spielt verrückt. Angefangen hat es damit dass der User keinen Ton ...

Neue Wissensbeiträge
Windows 10

Windows 10 Hello-Anmeldung per Foto ausgehebelt

Tipp von kgborn vor 3 StundenWindows 10

Windows Hello ist eine Funktion, um sich per Fingerabdruck-, Gesichts- oder Iriserkennung bei Windows 10-Geräten anzumelden (siehe), setzt aber ...

Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.Cilin vor 11 StundenPerl2 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 12 StundenSicherheit1 Kommentar

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 1012 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Heiß diskutierte Inhalte
Windows Server
SCCM 2016: PXE Boot des Clients schlägt fehl
Frage von gabeBUWindows Server23 Kommentare

Hallo Zusammen Ich habe eine Testumgebung erstellt um über SCCM 2016 einen virtuellen Client aufzusetzen. Folgende Maschinen habe ich ...

Netzwerkgrundlagen
Belibiges Teilnetz einer Subnetzmaske rausfinden?
gelöst Frage von CenuzeNetzwerkgrundlagen19 Kommentare

Wundervollen Gutentag, mittlerweile kann ich Subnetting so einigermaßen, aber ein Problem habe ich noch. Netzwerkadresse und Boradcast errechnen ist ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless12 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Exchange Server
Exchange empfängt Emails - Kann aber keine Senden
gelöst Frage von niklasschaeferExchange Server11 Kommentare

Hallo, ich stehe gerade bei mir zuhause vor folgender Problemstellung. Gegeben sind 2x Hyper-V Host mit Windows Server 2016 ...