GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo mantener las variables de entorno al usar sudo

Primero necesitas export HTTP_PROXY . En segundo lugar, debe leer man sudo y mira el -E bandera. Esto funciona:

$ export HTTP_PROXY=foof
$ sudo -E bash -c 'echo $HTTP_PROXY'

Aquí está la cita de la página man:

-E, --preserve-env
             Indicates to the security policy that the user wishes to preserve their
             existing environment variables.  The security policy may return an error
             if the user does not have permission to preserve the environment.

El truco es agregar variables de entorno a sudoers archivo a través de sudo visudo comando y agregue estas líneas:

Defaults env_keep += "ftp_proxy http_proxy https_proxy no_proxy"

tomado de la wiki de ArchLinux.

Para Ubuntu 14, debe especificar en líneas separadas, ya que devuelve los errores para líneas de múltiples variables:

Defaults  env_keep += "http_proxy"
Defaults  env_keep += "https_proxy"
Defaults  env_keep += "HTTP_PROXY"
Defaults  env_keep += "HTTPS_PROXY"

Linux
  1. Variables de entorno de usuario con "su" y "sudo" en Linux

  2. ¿Cómo le das a su las variables de entorno del usuario actual?

  3. Uso de variables de entorno en el comando cURL - Unix

  4. Cómo desarmar muchas variables de entorno

  5. comando no encontrado al usar sudo

Cómo establecer variables de entorno en MacOS

Cómo mantener la sesión de tiempo de espera de contraseña 'sudo' por más tiempo en Linux

Cómo establecer y enumerar variables de entorno en Linux

Cómo establecer y enumerar variables ambientales en Linux

Cómo bloquear un puerto usando un firewall en Linux

Cómo configurar y desactivar variables de entorno en Linux