Estoy tratando de iniciar un servicio que requiere un env. variable que se establecerá en cierta ruta. Configuré esta variable en "/etc/profile.d/". Sin embargo, cuando inicio este servicio usando el servicecomando, no funciona.
servicio de hombre:
service runs a System V init script in as predictable environment as possible,
removing most environment variables and with current working directory set to /.
Entonces parece que serviceestá eliminando mis variables. ¿Cómo debo configurar las variables para evitar que se eliminen? ¿O es algo que no debería hacer?
Yo podría iniciar el servicio manualmente utilizando el guión la palabra, o incluso codificar la ruta en el guión, pero me gustaría saber cómo usarlo con el servicecomando.

Se recomienda colocar los ajustes de configuración en una configuración
/etc/sysconfig/<servicename>que luego se lee mediante el script de inicio.Saludos
Bram
fuente
/etc/sysconfig/<servicename>archivo, puede usar bashsourcepara cargar archivos/etc/profile.dpara imitar el entorno de inicio de sesión de shell.De
man 5 init:Ambiente de trabajo Cada trabajo se ejecuta con el entorno desde los eventos o comandos que lo iniciaron. Además, puede definir valores predeterminados en trabajo que puede anularse más adelante y especificar qué variables de entorno se exportan a los eventos generados para el trabajo. La variable de entorno especial UPSTART_EVENTS contiene la lista de eventos que iniciaron el trabajo, no estará presente si el El trabajo se inició manualmente. Además, los scripts previos y posteriores se ejecutan con el entorno de los eventos o comandos que detuvieron el trabajo. La variable de entorno UPSTART_STOP_EVENTS contiene la lista de eventos que detuvieron el trabajo, no estará presente si el trabajo fue detenido manualmente. Todos los trabajos también contienen las variables de entorno UPSTART_JOB y UPSTART_INSTANCE, que contienen el nombre del trabajo y la instancia. Estos son utilizados principalmente por la utilidad initctl (8) para actuar de manera predeterminada en el trabajo desde el que se llaman los comandos. CLAVE env [= VALOR] Define una variable de entorno predeterminada, cuyo valor puede ser anulado por el evento o comando que inicia el trabajo. Si se especifica "CLAVE = VALOR", la variable CLAVE recibe el valor VALOR. Si solo se da ´KEY´, entonces se toma el valor del entorno del demonio init (8). clave de exportación Exporta el valor de una variable de entorno en los eventos inicial (7), iniciado (7), detenido (7) y detenido (7) para este trabajo y a todos los eventos resultantes (no solo los relacionados con el trabajo actual).Además, puede hacer
grep env /etc/init/*para ver cómo se usaEsta es mi salida:
Y para un ejemplo exhaustivo, vea algunos de esos scripts. Aquí nginx.conf:
fuente