Comme écrit dans le titre, où dois-je laisser le script init écrire le fichier pid? existe-t-il des chemins standard que je devrais choisir à la place de / var / run?
Est-ce que / tmp pourrait être un bon endroit où le stocker ou y a-t-il des inconvénients?
Réponses:
En bref : vous pouvez le stocker n'importe où (par exemple,
/tmp
ou/var/tmp
), mais/var/run
c'est la norme préférée./var/run
est la norme de hiérarchie du système de fichiers :Et une caractéristique souhaitable est que la plupart des distributions le nettoient automatiquement (contrairement à
/tmp
ce qui n'est pas nettoyé au démarrage dans certaines distributions) - cela évite les fichiers pid périmés:C'est votre choix où le stocker, mais j'irais avec la norme.
Si vous n'y avez pas accès
/var/run
, vous devez stocker le fichier pid dans le répertoire personnel de l'utilisateur, par exemple~/.my_app.pid
.la source
S'il s'agit d'un accès en écriture non root
/var/run
dont vous avez besoin, notez qu'il existe des sous-répertoires/var/run/user
pour les utilisateurs individuels. Vous avez juste besoin d'obtenir l'UID de l'utilisateur actuel:/var/run/user/[$uid]
la source