Come scritto nel titolo, dove devo lasciare che lo script init scriva il file pid? ci sono percorsi standard che dovrei scegliere al posto di / var / run?
Potrebbe / tmp essere un buon posto dove archiviarlo o ci sono degli svantaggi in questo?
Come scritto nel titolo, dove devo lasciare che lo script init scriva il file pid? ci sono percorsi standard che dovrei scegliere al posto di / var / run?
Potrebbe / tmp essere un buon posto dove archiviarlo o ci sono degli svantaggi in questo?
Risposte:
In breve : puoi memorizzarlo ovunque (diciamo, /tmp
o /var/tmp
), ma /var/run
è lo standard preferito.
/var/run
è lo standard di gerarchia dei filesystem :
Questa directory contiene i dati delle informazioni di sistema che descrivono il sistema da quando è stato avviato. I file in questa directory devono essere cancellati (rimossi o troncati come appropriato) all'inizio del processo di avvio. I programmi possono avere una sottodirectory di / var / run; questo è consigliato per i programmi che utilizzano più di un file di runtime. [nota 37]
E una caratteristica desiderabile è che la maggior parte delle distro lo pulisce automaticamente (diversamente da ciò /tmp
che non viene pulito all'avvio in alcune distro) - questo evita i file PID obsoleti:
La posizione normale per i pidfile è / var / run. La maggior parte degli unici pulirà questa directory all'avvio; sotto Ubuntu questo è ottenuto da / var / run un filesystem in-memory (tmpfs).
È la tua scelta dove conservarlo, ma vorrei andare con lo standard.
Se non si ha accesso a /var/run
, è necessario memorizzare il file pid nella home directory dell'utente, ad es ~/.my_app.pid
.