Linux - locais alternativos onde armazenar o arquivo pid em vez de / var / run

20

Como escrito no título, onde devo deixar o script de inicialização escrever o arquivo pid? há algum caminho padrão que eu deveria escolher em vez do / var / run?

Poderia / tmp ser um bom lugar para armazená-lo ou há desvantagens nisso?

    
por Murko 27.07.2012 / 18:18

2 respostas

20

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 .

    
por 27.07.2012 / 18:42
5

Se o acesso de gravação não raiz a /var/run for necessário, observe que há subdiretórios em /var/run/user para usuários individuais. Você só precisa obter o UID do usuário atual:

/var/run/user/[$uid]

    
por 02.10.2015 / 10:45

Tags