Certains programmes ne sont pas trouvés lorsqu'ils sont utilisés avec sudo

9

Je viens d'installer go to /usr/local/go, et en ~/.bashrcajoutant cette ligne:

export PATH=$PATH:/usr/local/go/bin

Fonctionne maintenant à gopartir de la ligne de commande, mais sudo gome donne:

$ sudo go
sudo: go: command not found
~
$ sudo echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/benjamin/algs4/bin:/usr/local/go/bin
Benjamin Lindley
la source
Pouvez-vous publier la sortie desudo echo $PATH
Manish Sinha

Réponses:

7

sudoLa commande a env_keepet les env_resetparamètres dans le sudoersfichier.

Vous devez soit modifier votre paramètre env_keep, soit utiliser sudo -E.

Dmitry Alexeyev
la source
Sur mon système Debian-9 sudo -Ene conserve pas la $PATHvariable.
Ark-kun
3

Modifiez le fichier / etc / sudoers. Ajoutez les chemins souhaités à la ligne suivante:

Par défaut secure_path = / sbin: / bin: / usr / sbin: / usr / bin

exemple:

Par défaut secure_path = / sbin: / bin: / usr / sbin: / usr / bin: / usr / local / sbin: / usr / local / bin

AntumDeluge
la source