Usar variables de entorno en unidades systemd

Systemd permite configurar variables de entorno para ser cargadas en sus «unidades«, es decir, en los procesos/demonios que se ejecutan a través de este sistema. La configuración se establece en el archivo de configuración del servicio/unidad, y permite establecer un listado de variables de entorno o la llamada a un archivo que contendrá todas las variables.

Si se decide establecer las variables directamente en el archivo de la unidad, la directiva a utilizar es Environment=:

[Service]
Environment=ENV1=foo
Environment=ENV2=bar
[...]

Recordad que los archivos de definición/configuración de las unidades se encuentran en /etc/systemd/

Si se decide establecer las variables de entorno en un fichero independiente, la directiva a utilizar es EnvironmentFile=/ruta/al/archivo:

[Service]
EnvironmentFile=/ruta/al/archivo
[...]

Una vez establecidos los cambios, es necesario recargar la configuración del demonio de systemctl:

# systemctl daemon-reload

Y por supuesto reiniciar el servicio correspondiente sobre el que hayamos realizado los cambios.