Réponses:
http_proxy="http://host:port" apt-get something
devrait marcher.
Si vous avez besoin d'une authentification, essayez
http_proxy="http://user:pass@host:port" apt-get something
Et si vous voulez que cela soit permanent, vous devez probablement définir les variables http_proxy (et ftp_proxy?) Dans votre ~/.bashrc
afin que toutes vos applications compatibles proxy fonctionnent à l'avenir, par exemple 'wget'.
dans /etc/apt/apt.conf, ajoutez la ligne:
Acquire::http::Proxy "http://MYDOMAIN\MYNAME:MYPASS@MY.PROXY.COM:MYPORT"
De: http://ubuntuforums.org/showthread.php?t=96802
(Remarque: complètement volé de cette réponse à ma question similaire sur SF. Cred à Grizzly )
;
/etc/apt/apt.conf.d/01proxy
Un proxy est spécifié en définissant les variables d'environnement http_proxy
, ftp_proxy
et all_proxy
localement (par exemple dans ~/.bashrc
) ou globalement (par exemple dans /etc/bash.bashrc
). Ces paramètres sont respectés par pratiquement tous les packages de logiciels Internet (comme 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"
Cependant, les définir de cette façon n'aide pas lors de l'exécution sudo apt-get ...
- et cela est dû à cette ligne dans /etc/sudoers
:
Defaults env_reset
Cette ligne réinitialise toutes les variables d'environnement lors de l'utilisation sudo
, pour des raisons de sécurité. Afin de conserver les valeurs de http_proxy
etc. dans une sudo
invocation, vous pouvez spécifier des exceptions à env_reset
via 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 cette façon, vous obtenez apt-get
d'honorer le paramètre global pour http_proxy, au lieu de dupliquer le paramètre pour apt-get
dans un fichier de configuration spécifique à apt arcane.
sudo apt-get ...
pour tout. Donc, sans cette entrée /etc/sudoers
, cela ne fonctionnera pas.
env_reset
ligne est /etc/sudoers
vraiment importante!
apt-get
et spécifiquement pour les variables nécessaires, au lieu de dire "juste supprimer la ligne".