Resumindo : você pode armazená-lo em qualquer lugar (digamos, /tmp
ou /var/tmp
), mas /var/run
é o padrão preferido.
/var/run
é o Padrão de hierarquia do sistema de arquivos :
This directory contains system information data describing the system since it was booted. Files under this directory must be cleared (removed or truncated as appropriate) at the beginning of the boot process. Programs may have a subdirectory of /var/run; this is encouraged for programs that use more than one run-time file.[footnote 37]
E uma característica desejável é que a maioria das distros limpe-a automaticamente (ao contrário de /tmp
, que não é limpo após a inicialização em algumas distros) - isso evita arquivos obsoletos do pid:
The normal location for pidfiles is /var/run. Most unices will clean this directory on boot; under Ubuntu this is achieved by /var/run an in-memory filesystem (tmpfs).
A sua escolha é onde armazená-lo, mas eu iria com o padrão.
Se você não tiver acesso a /var/run
, deverá armazenar o arquivo pid no diretório pessoal do usuário, por exemplo, ~/.my_app.pid
.