
Habilitar un servicio systemd para que se inicie en el arranque lo realiza enabling
él. Al habilitarlo se crea un enlace simbólico en una ubicación específica. Ejemplo:
$ systemctl enable rsyslog
Created symlink /etc/systemd/system/multi-user.target.wants/rsyslog.service → /lib/systemd/system/rsyslog.service.
La documentación parasystemctl enable
estados:
Tenga en cuenta que esta operación crea sólo los enlaces simbólicos sugeridos en la sección "[Instalar]" de los archivos de la unidad.
Me gustaría cambiar la ubicación donde se crean (y se verifican) estos enlaces simbólicos para un servicio en particular.
¿Es posible haber configurado esta ubicación en otra cosa?
Una vez implementado el cambio por el que pregunto, el comportamiento sería:
$ systemctl enable rsyslog
Created symlink /user/home/multi-user.target.wants/rsyslog.service → /lib/systemd/system/rsyslog.service.
El caso de uso del que se origina esta pregunta es que el estado del servicio (habilitado/deshabilitado) sobreviva a una reescritura completa de rootfs (actualización integrada del sistema) al tener los enlaces en una partición separada.
Respuesta1
No. La ruta de búsqueda de archivos unitarios está documentada enman systemd.unidad.
Para las unidades de usuario, puede personalizar $XDG_RUNTIME_DIR, pero para las unidades del sistema las rutas son fijas.