Page 1 sur 1

[Sudo] Variable d'environnement et Yaourt(resolu)

Publié : jeu. 23 févr. 2012, 09:43
par Gamoth
Bonjour,

Depuis mon installation de Archlinux derrière un proxy (cf : http://forums.archlinux.fr/topic10039.html), tout se passait plutôt bien.
Mais récemment, je n'ai plus pu utiliser la commande Yaourt depuis mon utilisateur standard.
$ yaourt -Syu
:: Synchronisation des bases de données de paquets...
Erreur : échec de récupération du fichier « core.db » depuis distrib-coffee.ipsl.jussieu.fr : Could not resolve host: distrib-coffee.ipsl.jussieu.fr; Nom ou service inconnu
Erreur : échec de récupération du fichier « core.db » depuis distrib-coffee.ipsl.jussieu.fr : Could not resolve host: distrib-coffee.ipsl.jussieu.fr; Nom ou service inconnu
Erreur : la mise à jour de core a échoué (erreur de la bibliothèque de téléchargement)
A bien y regarder, je pouvais toujours continuer à utiliser pacman en root donc je me suis penché sur les variables d'environnement exporté.
$ sudo env
TERM=xterm
LANG=fr_FR.UTF-8
https_proxy=http://user:passwd@proxy.fr:8080
SHELL=/bin/bash
LOGNAME=root
USER=root
USERNAME=root
MAIL=/var/mail/root
HOME=/root
PATH=/usr/bin:/bin:/usr/sbin:/sbin
SUDO_COMMAND=/usr/bin/env
SUDO_USER=gamoth
SUDO_UID=1000
SUDO_GID=100
Alors que mon fichier /etc/sudoers indique ceci :
## sudoers file.

root ALL=(ALL) ALL
gamoth ALL=(ALL) ALL
Defaults env_keep += "http_proxy"
Defaults env_keep += "all_proxy"
Defaults env_keep += "ftp_proxy"
Defaults env_keep += "https_proxy"
Je ne comprend pas pourquoi mes autres variables d'environnements proxy ne sont pas gardées alors qu'elles sont dans le env de mon user standard.

Pouvez-vous m'éclairer de vos lanternes ?

Merci d'avance.

Re: [Sudo] Variable d'environnement et Yaourt

Publié : jeu. 23 févr. 2012, 10:18
par benjarobin
Hum la sortie de env | grep proxy te retourne quoi ?

Re: [Sudo] Variable d'environnement et Yaourt

Publié : jeu. 23 févr. 2012, 12:18
par Gamoth
Voila mes variables proxy en environnement user.

Re: [Sudo] Variable d'environnement et Yaourt

Publié : jeu. 23 févr. 2012, 12:45
par benjarobin
D'après le man de sudo, tu devrait mettre tout sur une ligne, soit:

Code : Tout sélectionner

Defaults env_keep += "http_proxy all_proxy ftp_proxy https_proxy"

Re: [Sudo] Variable d'environnement et Yaourt

Publié : jeu. 23 févr. 2012, 13:47
par Gamoth
En effet, cela fonctionne bien, merci.
Il faudra penser à l'indiquer : http://wiki.archlinux.fr/Yaourt?rdfrom= ... 3Dno#Proxy
J'avais trouvé une autre solution qui consistait à garder l'environnement de l'utilisateur en jouant sur la variable : env_reset qui par défaut est à True.

Ce qui donne pour désactiver l'effacement de l'environnement utilisateur :
$ sudo cat /etc/sudoers
## sudoers file.
Defaults !env_reset
La solution marche correctement, je me demande quelle solution est à préferer.

Merci en tout cas pour ton aide.

Re: [Sudo] Variable d'environnement et Yaourt(resolu)

Publié : jeu. 23 févr. 2012, 14:08
par benjarobin
Wiki mise à jour, sinon l'utilisation de Defaults !env_reset est déconseillé

Re: [Sudo] Variable d'environnement et Yaourt(resolu)

Publié : jeu. 23 févr. 2012, 14:35
par Gamoth
Concernant le wiki, il est à noter que l'export http_proxy et de https_proxy ne suffit pas à l'utilisation de yaourt, certains dépôt étant en ftp.

Pour ma culture personnelle, pourquoi l'utilisation de Defaults !env_reset est déconseillé ?

Re: [Sudo] Variable d'environnement et Yaourt(resolu)

Publié : jeu. 23 févr. 2012, 14:58
par benjarobin
Car tu risque d'écrire au mauvaise endroit avec l'utilisateur root, celui peut utiliser aussi de mauvais fichiers de configuration, etc...
Bref un accident est si vite arrivé :D