Die PID-lêer verdwyn. Kyk hoe systemd Squid begin.
Pas Squid se voorgrond- of daemongedrag by sy systemd-eenheid voordat jy 'n verdwynende PID-lêer as 'n regteprobleem beskou.
As Squid se PID-lêer verskyn en dadelik verdwyn, vergelyk die gelaai eenheid se Type= met die werklike uitvoerbare lêer en argumente. 'n Type=simple-diens verwag dat die proses wat begin is die hoofproses bly. 'n Daemoniserende opdrag wat aftak en daardie proses laat afsluit, volg 'n ander kontrak; systemd kan dit as voltooid beskou en die oorblywende diensprosesse afbreek.
| Instelling | Eienaar en doel |
|---|---|
pid_filename | Squid skryf sy PID na hierdie pad op weergawes wat die opdrag ondersteun |
PIDFile= | systemd lees 'n PID van hierdie pad waar daardie diensmodel dit nodig het |
PIDFile= skep nie die lêer nie en maak nie van 'n daemoniserende opdrag 'n voorgrondproses nie. In 'n aftakkende opset moet dienstipe, daemongedrag en pad ooreenstem. In 'n voorgrondopset moet die bestuurder die beoogde aanhoudende proses volg.
Squid onderskei -N, wat daemonmodus vermy, van --foreground, wat die ouerproses behou totdat sy kinders klaar is. Kies volgens die bou en die diensreëling. 'n Verpakte eenheid kan eerder gereedheidskennisgewing of ander bou-spesifieke opsies gebruik; behou daardie model wanneer jy dit aanpas.
Vergelyk nou die joernaal met Squid se beginboodskappe. 'n Sintaksfout, 'n ontoeganklike looptyd-gids of 'n fatale inisialisering kan die diens werklik beëindig en sy PID-lêer verwyder. Die verdwyning alleen onderskei nie daardie beëindiging van verkeerde prosessporing nie. Herstel die oorsaak wat deur daardie boodskappe gesteun word eerder as om die gids se eienaarskap herhaaldelik te verander.