Eu mantenho meu sphinx pid em /var/run/sphinx/searchd.pid, mas toda vez que reinicializo com força o diretório / var / run / sphinx desaparece e o sphinx falha ao iniciar. Existe uma maneira de fazer com que esse diretório permaneça ou seja criado automaticamente? Como as pessoas geralmente lidam com essa situação? Eu uso o Ubuntu Hardy
19
mount
?Respostas:
Esse diretório é efêmero por design. Se seu conteúdo travar nas botas, todos os tipos de efeitos feios podem ocorrer, pois os scripts de controle de vários tipos procuram lá para ver quais processos eles devem estar sinalizando. No sistema recente, essa natureza temporária é imposta pela montagem
/var/run
comotmpfs
, enquanto os sistemas mais antigos apenas excluíam tudo no diretório na inicialização.Portanto, você precisa configurar o Sphinx ou seu script de inicialização para criar esse diretório ou simplesmente gravar o arquivo PID
/var/run
diretamente.fonte
Você tem pelo menos duas chances:
mkdir -p /var/run/sphinx/
ou
pid_file = /var/run/sphinx-searchd.pid
em/etc/sphinx.conf
Eu sou o segundo.
fonte
agora existe um mecanismo centralizado para a criação de arquivos e diretórios temporários como esses. Um serviço que deseja usar esse método pode remover os comandos mkdir em seu próprio script de inicialização e, em vez disso, colocar um arquivo .conf em /etc/tmpfiles.d, /run/tmpfiles.d ou /usr/lib/tmpfiles.d, com o Ubuntu serviços que parecem preferir a última opção. para o seu caso, crie um arquivo
/usr/lib/tmpfiles.d/sphinx.conf
.o conteúdo do arquivo seria:
d /var/run/sphinx 0755 root root
aqui
d
significa diretório, ao lado dele estão o caminho, a permissão, o proprietário e o grupo.Isso criará o
/var/run/sphnix
diretório na reinicialização.Confira a documentação completa tmpfiles.d
fonte