Crear una variable ambiental global después del arranque

Crear una variable ambiental global después del arranque

Conozco /etc/profile y /etc/environment, pero me gustaría establecer una variable ambiental global después de iniciar e iniciar sesión. Por global, me refiero a una variable de entorno a la que puede acceder cualquier programa (que se ejecuta con el usuario actual).

Básicamente, en cualquier momento dado, digamos 10 minutos después del arranque, me gustaría poder ejecutar un script que establezca algunas variables de entorno globales. es posible?

Fondo

Tengo algunos problemas con gpg-agent en Ubuntu 14.04. Los programas utilizan variables ambientales para conectarse al proceso gpg-agent. Mi problema es que se ejecutan varias instancias de gpg-agent (solo una de las cuales tiene habilitado el soporte ssh). Me gustaría poder eliminar todas las instancias existentes de gpg-agent e iniciar una nueva con ssh-support. Sin embargo, para que otros programas puedan acceder a la nueva instancia, necesito que las variables ambientales sean globales. Hacerlo durante el inicio no me ha funcionado ya que el otro agente gpg parece iniciarse después del mío, reemplazando las variables ambientales.

Respuesta1

A veces me enfrento a un problema estrechamente relacionado. Tengo ssh-agentuna máquina ejecutándose bajo el paraguas de su escritorio gráfico, pero accedo a la misma máquina de forma remota. Ese shell no tiene las variables de entorno.

Para eso, uso un script que busca /procprocesos Bash y rastrea sus /proc/<pid>/environentradas en busca SSH_AGENT_PIDde SSH_AGENT_SOCKvariables. Luego, vuelve a crear estas entradas en la sintaxis del shell, de modo que todo este "script de raspado de entorno" se pueda evaleditar en el nuevo shell.

Básicamente, "vaya /proca buscar qué otros Bash-es están usando para sus variables de agente y reprodúzcalo en esta sesión".

información relacionada