Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/06/2012, à 16:08

Fredoo1234

Sudo et variable d'environnement.

Bonjour à tous,

Tous les scripts que je développe sont stockés dans un endroit précis sur mon disque dur. Pour rendre accessible de n'importe où l'utilisation de mes scripts j'ai mis le chemin adéquat dans la variable PATH à partir du fichier .bashrc.

Cela marche très bien ! Le problème est que le chemin n'est pas prit en compte lorsque j'utilise sudo.

$ env | grep "PATH"
PATH=/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/media/donnees/MATERIEL/scripts/linux
 
sudo env | grep "PATH"
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

J'ai lu sur différent Forum que l'option -i résoud le problème, mais cela ne fonctionne pas chez moi ... --'

Est-ce que quelqu'un aurait une astuce pour ce petit problème ?

Merci d'avance !

Hors ligne

#2 Le 18/06/2012, à 17:26

Pylades

Re : Sudo et variable d'environnement.

Bonjour.
Dans ton fichier /etc/sudoers, tu dois avoir la lignetdoc suivante :

Defaults    env_reset

Il te suffit de la commenter :

#Defaults    env_reset

Pour éditer ce fichier, il est fortement recommandé de juste taper visudo, pour éviter les erreurs de syntaxes.
sudoers

Dernière modification par Πυλάδης (Le 18/06/2012, à 17:28)


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#3 Le 18/06/2012, à 18:49

Fredoo1234

Re : Sudo et variable d'environnement.

Merci pour ta réponse.

Dans ton fichier /etc/sudoers, tu dois avoir la lignetdoc suivante :

Defaults    env_reset

Il te suffit de la commenter :

#Defaults    env_reset

Pour éditer ce fichier, il est fortement recommandé de juste taper visudo, pour éviter les erreurs de syntaxes.

Cela ne fonctionne pas. Le terminal trouve bien le script en question mais il me renvoi "commande introuvable".

EDIT:

J'ai commenté cette ligne dans /etc/sudoers:

#Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

Et maintenant ça fonctionne correctement. Merci beaucoup de m'avoir mis sur la bonne direction. smile

Dernière modification par Fredoo1234 (Le 18/06/2012, à 18:51)

Hors ligne

#4 Le 19/06/2012, à 07:19

serged

Re : Sudo et variable d'environnement.

... Et si tu veux garder les alias pour sudo. Un petit :

alias sudo='A=`alias` sudo  '

dans le .bashrc


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#5 Le 19/06/2012, à 07:44

nesthib

Re : Sudo et variable d'environnement.

@serged : ton astuce est partiellement correcte. Le A=`alias` ne sert à rien puisque par défaut ton environnement est (partiellement) conservé. En fait ce qui est important est l'espace en fin d'alias qui entraîne l'interprétation d'un éventuel alias à suivre (cf. man bash section Aliases)


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne