101 votes

Comment exécuter "sudo apt-get update" via un proxy en ligne de commande ?

Dans mon bureau, je veux mettre à jour et télécharger par (wget) et ici ils utilisent un proxy ?

Comment puis-je faire cela en ligne de commande ?

112voto

RCIX Points 4400

Dans certaines versions, sudo est configuré de telle sorte que toutes les variables d'environnement sont effacées lors de l'exécution de la commande. Pour conserver la valeur de votre http_proxy pour corriger cela, vous devez éditer /etc/sudoers, exécuter :

visudo

Ensuite, trouvez une ligne qui dit :

Defaults env_reset 

et ajouter après elle :

Defaults env_keep = "http_proxy ftp_proxy" 

Les choses vont commencer à fonctionner comme prévu.

Merci à kdogksu dans les Forums Ubuntu pour trouver la solution pour ça.

Afin de corriger non seulement apt-get mais aussi les utilitaires graphiques X11 (par exemple synaptic, mintintall, ...), la ligne suivante dans le fichier /etc/sudoers devrait faire l'affaire :

Defaults env_keep = "http_proxy https_proxy ftp_proxy DISPLAY XAUTHORITY"

50voto

John Cartwright Points 501

Utilisez ça.

ubuntu@ubuntu:~$ cat /etc/apt/apt.conf
Acquire::http::Proxy "http://Username:Password@proxy.foo.bar.edu.au:8080";

C'est ce que j'utilise. Il fonctionne parfaitement.

Apt permet également de placer des paramètres individuels dans des fichiers sous le nom de /etc/apt/apt.conf.d/ Cette méthode a exactement le même effet que la précédente, mais elle peut être plus facile à maintenir si vous avez d'autres lignes dans le fichier .conf fichier :

ubuntu@ubuntu:~$ cat /etc/apt/apt.conf.d/05proxy
Acquire::http::Proxy "http://Username:Password@proxy.foo.bar.edu.au:8080";

32voto

Kamil Zadora Points 908

Ce qui a marché pour moi, c'est :

sudo http_proxy=http://yourserver apt-get update

Ce qui est un peu étrange car le simple fait d'exporter http_proxy et de lancer sudo echo $http_proxy a permis d'afficher la valeur exportée.

13voto

Mufaka Points 54
export http_proxy=http://proxyusername:proxypassword@proxyaddress:proxyport
sudo apt-get update

L'exportation ne devrait pas avoir besoin sudo et si votre mandataire est anonyme, il suffit de laisser tomber l'option proxyusername:proxypassword@ partie.

5voto

Prashant Adlinge Points 415

Si vous voulez exécuter "sudo apt-get update" à travers un proxy en ligne de commande, utilisez la commande ci-dessous,

sudo apt-get -o Acquire::http::proxy="http://user:password@host:port/" update;

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X