Pregunta ¿Es necesario volver a cargar los archivos de la unidad del sistema cuando se modifican?


Digamos que escribo un mine.service expediente. Entonces yo uso systemctl enable mine.service.

Si luego decido editar mine.servicetengo que decir systemd ese mine.service ¿fue cambiado? Si es así, ¿cómo hago eso?


94
2018-06-23 03:17


origen




Respuestas:


Después de realizar cambios en su archivo de unidad, debe ejecutar systemctl daemon-reload, como se indica aquí.

daemon-recargar
  Volver a cargar la configuración del administrador del sistema. Esto ejecutará todos los generadores (ver systemd.generator (7)), vuelva a cargar todos los archivos de la unidad y vuelva a crear todo el árbol de dependencias. Mientras se recarga el demonio, todos los sockets que Systemd escucha en nombre de la configuración del usuario permanecerán accesibles.

Luego puede reiniciar (o recargar) su servicio como desee con

systemctl restart your-service-name

(daemon-reload no recargará / reiniciará los servicios en sí, solo avisará a systemd de la nueva configuración)


113
2018-06-23 11:38



Descubrí que también necesitaba correr un systemctl restart para realmente reiniciar el servicio en sí ... - hwjp
Por si acaso, daemon-reload no es universal, hay que correr systemctl --user daemon-reload para servicios al usuario. - Olegs Jeremejevs


Como una adición a la respuesta anterior: En caso de que haya cambiado algo en el [Install] directiva, puede que tenga que ejecutar sudo systemctl reenable YOURUNITFILE para recrear los enlaces simbólicos en los directorios .target.


1
2017-08-19 13:01



Esto hizo el truco para mí! No entendí por qué systemctl no estaba recargando el archivo de servicio. - antonagestam