apt-get behind proxy en VirtualBox Ubuntu

Respuestas:

8
http_proxy="http://host:port" apt-get something

Deberia trabajar.

Si necesita autenticación, intente

http_proxy="http://user:pass@host:port" apt-get something

Y si desea que esto sea permanente, probablemente debería configurar las variables http_proxy (y ftp_proxy?) En su ~/.bashrcpara que todas sus aplicaciones compatibles con proxy funcionen en el futuro, por ejemplo, 'wget'.

Caro
fuente
2
Una cosa más a tener en cuenta es que si la contraseña contiene '@', reemplácela con '% 40' (sin comillas), de lo contrario no funcionará
dotslash el
4

Un proxy se especifica estableciendo el http_proxy, ftp_proxyy all_proxyvariables de entorno, ya sea localmente (por ejemplo, en ~/.bashrc) o global (por ejemplo, en /etc/bash.bashrc). Esta configuración es respetada por prácticamente todos los paquetes de software de red (como apt-get, wget, curl, etc.):

# HTTP proxy without authentification
export http_proxy="http://host:port"
# HTTP proxy with authentification
export http_proxy="http://user:pass@host:port"

Sin embargo, configurarlos de esta manera no ayuda cuando se ejecuta sudo apt-get ..., y eso se debe a esta línea en /etc/sudoers:

Defaults env_reset

Esta línea restablece todas las variables de entorno cuando se usa sudo, por razones de seguridad. Para mantener los valores de http_proxyetc. en una sudoinvocación, puede especificar excepciones a env_resettravés de env_keep:

# Exception specific to the command apt-get
Defaults!/usr/bin/apt-get env_keep="http_proxy https_proxy ftp_proxy"
# Exception specific to the user joe
Defaults:joe env_keep="http_proxy https_proxy ftp_proxy"

De esta manera, puede apt-gethonrar la configuración global de http_proxy, en lugar de duplicar la configuración de apt-getalgún archivo de configuración arcano específico de apt.

DevSolar
fuente
Esta es la verdadera respuesta en mi opinión, porque siempre usarás sudo apt-get ...para cualquier cosa. Entonces, sin esta entrada /etc/sudoers, no funcionará.
mliebelt
¡Esta env_resetlínea es /etc/sudoersrealmente importante!
Ari
1
@Ari: Sí, lo es; por eso me presenté como deshabilitarlo específicamente para apt-gety específicamente para las variables necesarias, en lugar de decir "basta con retirar la línea".
DevSolar
@DevSolar: sí, ¡y más 1 por eso!
Ari