Conforme escrito no título, onde devo deixar o script init escrever o arquivo pid? existem caminhos padrão que devo escolher em vez do / var / run?
Poderia / tmp ser um bom lugar para armazená-lo ou há desvantagens nisso?
Conforme escrito no título, onde devo deixar o script init escrever o arquivo pid? existem caminhos padrão que devo escolher em vez do / var / run?
Poderia / tmp ser um bom lugar para armazená-lo ou há desvantagens nisso?
Respostas:
Resumindo : você pode armazená-lo em qualquer lugar (por exemplo, /tmp
ou /var/tmp
), mas /var/run
é o padrão preferido.
/var/run
é o padrão de hierarquia do sistema de arquivos :
Este diretório contém dados de informações do sistema que descrevem o sistema desde que ele foi inicializado. Os arquivos nesse diretório devem ser limpos (removidos ou truncados, conforme apropriado) no início do processo de inicialização. Os programas podem ter um subdiretório de / var / run; isso é incentivado para programas que usam mais de um arquivo de tempo de execução. [nota de rodapé 37]
E um recurso desejável é que a maioria das distros a limpa automaticamente (ao contrário do /tmp
que não é limpo na inicialização em algumas distros) - isso evita arquivos pid obsoletos:
O local normal para pidfiles é / var / run. A maioria dos unices irá limpar este diretório na inicialização; no Ubuntu, isso é alcançado por / var / run um sistema de arquivos em memória (tmpfs).
É sua escolha onde armazená-lo, mas eu aceitaria o padrão.
Se você não tem acesso /var/run
, deve armazenar o arquivo pid no diretório inicial do usuário, por exemplo ~/.my_app.pid
.