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/runcomotmpfs, 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/rundirectamente.fuente
Tienes al menos dos posibilidades:
mkdir -p /var/run/sphinx/o
pid_file = /var/run/sphinx-searchd.piden/etc/sphinx.confEstoy 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 rootaquí
drepresenta el directorio, al lado está la ruta, el permiso, el propietario y el grupo.Esto creará el
/var/run/sphnixdirectorio al reiniciar.Verifique la documentación completa tmpfiles.d
fuente