Om Squids PID-fil dyker upp och genast försvinner, jämför Type= i den inlästa enheten med den faktiska körbara filen och dess argument. En tjänst av typen Type=simple förväntar sig att den startade processen förblir huvudprocessen. Ett kommando som går över till daemon och låter den processen avslutas följer ett annat kontrakt; systemd kan betrakta det som färdigt och riva ned tjänstens övriga processer.

InställningÄgare och syfte
pid_filenameSquid skriver sin PID till denna sökväg i versioner som erbjuder direktivet
PIDFile=systemd läser en PID från denna sökväg där den tjänstemodellen behöver det

PIDFile= skapar inte filen och gör inte ett daemoniserande kommando till en förgrundsprocess. I en fork-uppställning måste tjänstetyp, daemonbeteende och sökväg stämma överens. I en förgrundsuppställning måste hanteraren följa den avsedda varaktiga processen.

Squid skiljer -N, alltså att undvika daemonläge, från --foreground, alltså att hålla kvar föräldern tills barnen är klara. Välj efter bygget och tjänsteupplägget. En paketerad enhet kan i stället använda en beredskapsavisering eller andra byggspecifika alternativ; behåll den modellen när du anpassar den.

Jämför nu journalen med Squids startmeddelanden. Ett syntaxfel, en oåtkomlig körmapp eller en fatal initiering kan verkligen stoppa tjänsten och ta bort dess PID-fil. Enbart försvinnandet skiljer inte den utgången från felaktig processbevakning. Rätta orsaken som meddelandena stöder i stället för att gång på gång byta ägare på mappen.

Relaterade artiklar