Mantengo mi sphinx pid en /var/run/sphinx/searchd.pid pero cada vez que reinicio con fuerza el directorio / var / run / sphinx desaparece y la esfinge no se inicia. ¿Hay alguna manera de hacer que ese directorio se pegue o que se cree automáticamente? ¿Cómo suelen manejar las personas esta situación? Yo uso Ubuntu Hardy
19
mount
?Respuestas:
Ese directorio es efímero por diseño. Si su contenido se pega a través de las botas, podrían ocurrir todo tipo de efectos desagradables, ya que las secuencias de comandos de control de varios tipos se ven allí para ver qué procesos deberían estar señalando. En un sistema reciente, esta naturaleza temporal se impone mediante el montaje
/var/run
comotmpfs
, mientras que los sistemas más antiguos simplemente eliminan todo en el directorio al inicio.Por lo tanto, debe configurar Sphinx o su script de inicio para crear ese directorio, o simplemente escribir el archivo PID
/var/run
directamente.fuente
Tienes al menos dos posibilidades:
mkdir -p /var/run/sphinx/
o
pid_file = /var/run/sphinx-searchd.pid
en/etc/sphinx.conf
Estoy por el segundo.
fuente
ahora existe un mecanismo centralizado para la creación de archivos y directorios temporales como estos. Un servicio que desee utilizar este método puede eliminar los comandos mkdir en su propio script de inicio y, en su lugar, colocar un archivo .conf en /etc/tmpfiles.d, /run/tmpfiles.d, o /usr/lib/tmpfiles.d, con Ubuntu servicios que parecen preferir la última opción. para su caso cree un archivo
/usr/lib/tmpfiles.d/sphinx.conf
.el contenido del archivo sería:
d /var/run/sphinx 0755 root root
aquí
d
representa el directorio, al lado está la ruta, el permiso, el propietario y el grupo.Esto creará el
/var/run/sphnix
directorio al reiniciar.Verifique la documentación completa tmpfiles.d
fuente