Waarom demonen we processen? [gesloten]
Geplaatst op februari 13, 2021 door adminAntwoord
Dat is meer dan één vraag, elk kan lange antwoorden hebben. In het kort
-
Als ik een programma op de achtergrond start met & (bijvoorbeeld “./script &”), wat maakt dit proces “uitvoering anders dan wanneer ik normaal een programma draaide dat zichzelf in een daemon verandert?
Als je een programma op de achtergrond draait, wordt het niet langer rechtstreeks bestuurd door de terminal (je kunt” t gewoon
^C
it), maar het kan nog steeds naar de terminal schrijven en uw werk verstoren. Typisch zal een daemon zichzelf van de terminal scheiden (naast het forken) en zijn uitvoer / fout zou worden omgeleid naar bestanden. -
Betekent dit gewoon dat als ik uitlog, het achtergrondproces stopt en de daemon blijft draaien?
Het achtergrondproces kan worden beschermd met
nohup
, maar tenzij de uitvoer werd omgeleid, sluit de minal zou voorkomen dat het schrijven, en een fout produceren die het waarschijnlijk zou stoppen. -
Ik zou graag willen weten of er een risico is / of het slecht is oefenen.
Naast het probleem van het bijhouden van de uitvoer van het programma (en foutmeldingen), is er het probleem van het herstarten als het toevallig doodgaat. Een servicescript past in de manier waarop de andere services op het systeem zijn ontworpen en biedt een min of meer standaard manier om de daemon te besturen.
/dev/tty1
(sommige systemen verschillen).