Comment installer des paquets avec apt-get sur un système connecté via un proxy?

49

J'ai un système Ubuntu 11.10 connecté à Internet via un proxy et j'aimerais installer des paquets via apt-get. Lorsque j'essaie de faire cela, je reçois ce message d'erreur:

sudo apt-get install libboost-program-options-dev
[...]
Err http://gb.archive.ubuntu.com/ubuntu/ oneiric/main libboost1.46-dev i386 1.46.1-5ubuntu2
407  Proxy Authentication Required

Des idées?

719016
la source
Est-ce que leurs détails de proxy gratuits sont disponibles afin que je puisse me connecter et télécharger des paquets @ mon bureau.
Jaison Justus

Réponses:

74

Cette méthode a fonctionné pour moi ..... juste essayer ...

vérifier le fichier /etc/apt/apt.conf

Le contenu était,

Acquire::http::proxy "http://<proxy>:<port>/";
Acquire::ftp::proxy "ftp://<proxy>:<port>/";
Acquire::https::proxy "https://<proxy>:<port>/";

C’est la raison pour laquelle vous pouviez accéder à un proxy mais ne pas le dépasser car il n’existe pas d’information sur le mot de passe. Il suffit donc de mettre cette information dedans ..

Acquire::http::proxy "http://<username>:<password>@<proxy>:<port>/";
Acquire::ftp::proxy "ftp://<username>:<password>@<proxy>:<port>/";
Acquire::https::proxy "https://<username>:<password>@<proxy>:<port>/";

sauvegardez le fichier et vous avez terminé ...


BROTIP: Plus de mieux ajouter ces lignes dans un autre fichier, /etc/apt/apt.conf.d/80proxy. Cela garantira qu'après une mise à niveau de version, les modifications ne seront pas perdues.

Vineet Menon
la source
1
<br> Et si dans le nom d'utilisateur il y a un "@" char. <br> Par exemple, si le nom d'utilisateur est une adresse électronique complète?
1
@ Hunger, référez-vous à cyberciti.biz/faq/… .
Vineet Menon
2
si vous faites cela le matin, n'oubliez pas de supprimer les chevrons
ldgorman
Acquire :: socks :: proxy "socks5: // serveur: port";
Kris Roofe
46

Pour configurer un proxy temporaire, définissez la http_proxyvariable d'environnement. Si le proxy est proxy.example.comsur le port 8080et que vous devez vous authentifier avec un nom d'utilisateur useret un mot de passe pass, exécutez:

sudo http_proxy='http://user:[email protected]:8080/' apt-get install package-name

Pour définir un tel proxy de manière permanente, créez /etc/apt/apt.conf.d/30proxycontenant:

Acquire::http::Proxy "http://user:[email protected]:8080/";

Les modifications sont immédiatement visibles la prochaine fois que vous exécutez apt.

Lekensteyn
la source
2
Cela ne fonctionne toujours pas, même erreur. Je dois mentionner que mon proxy est installé globalementApplications -> System Tools -> System Settings -> Network Proxy -> Apply system Wide
719016
La connexion proxy fonctionne pour moi (testé avec netcat ainsi que Squid). Quel serveur proxy est utilisé? Certains mandataires peuvent avoir besoin d'autres méthodes d'authentification.
Lekensteyn
La solution de contournement temporaire +1 était une réponse plus appropriée pour moi!
wim
1
@Lekensteyn: pourquoi avez-vous choisi le préfixe '30'? Je définis maintenant l’ordre d’analyse, mais: existe-t-il une convention relative à la procuration de 30 environ?
jgomo3
1
@ jgomo3 J'ai probablement consulté les autres fichiers (ou un fichier LISEZMOI dans ce répertoire, s'il existe?), puis choisi une valeur au hasard. Les fichiers sont lus dans l'ordre alphabétique.
Lekensteyn
2

Une autre solution consiste à utiliser Synaptics Package Manager, en définissant dans ses préférences le proxy auquel vous souhaitez vous connecter. Vous pouvez trouver la configuration en utilisant ce chemin: Paramètres -> Préférences -> Réseau

Heiko81
la source