Fișierul PID dispare. Verificați cum pornește systemd Squid.
Aliniați comportamentul Squid în prim-plan sau ca demon la unitatea sa systemd înainte de a trata un fișier PID care dispare ca pe o problemă de permisiuni.
Dacă fișierul PID al Squid apare și dispare imediat, comparați Type= unității încărcate cu executabilul real și argumentele acestuia. Un serviciu Type=simple așteaptă ca procesul pornit să rămână procesul principal. O comandă care trece în modul demon și lasă acel proces să se încheie urmează un alt contract; systemd o poate considera terminată și poate elimina restul proceselor serviciului.
| Setare | Proprietar și scop |
|---|---|
pid_filename | Squid își scrie PID-ul pe această cale în versiunile care oferă directiva |
PIDFile= | systemd citește un PID de pe această cale acolo unde acel model de serviciu are nevoie |
PIDFile= nu creează fișierul și nu transformă o comandă care trece în demon într-un proces în prim-plan. Într-o configurație cu fork, tipul serviciului, comportamentul demonului și calea trebuie să coincidă. Într-o configurație în prim-plan, administratorul trebuie să urmărească procesul persistent dorit.
Squid distinge -N, adică evitarea modului demon, de --foreground, adică păstrarea părintelui până la terminarea copiilor. Alegeți în funcție de compilare și de organizarea serviciului. O unitate împachetată poate folosi în schimb o notificare de disponibilitate sau alte opțiuni specifice compilării; păstrați acel model când o personalizați.
Acum comparați jurnalul cu mesajele de pornire ale Squid. O eroare de sintaxă, un director de execuție inaccesibil sau o inițializare fatală pot opri cu adevărat serviciul și pot elimina fișierul său PID. Doar dispariția nu distinge acea ieșire de o urmărire incorectă a procesului. Remediați cauza susținută de acele mesaje în loc să schimbați repetat proprietarul directorului.