web-dev-qa-db-fra.com

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

Je viens d'installer allez dans /usr/local/go, et dans ~/.bashrc ajouté cette ligne:

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

Maintenant, go fonctionne à partir de la ligne de commande, mais Sudo go me 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
9
Benjamin Lindley

La commande Sudo a les paramètres env_keep et env_reset dans le fichier sudoers.

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

6
Dmitry Alexeyev

Appuyez simplement sur Ctrl+Alt+T sur votre clavier pour ouvrir Terminal. Quand il s'ouvre, lancez la commande ci-dessous.

Sudo ln -s /usr/local/go/bin/go /usr/bin/go
5
Mathnode

Editez le fichier/etc/sudoers. Ajoutez les chemins désirés à la ligne suivante:

Défauts secure_path =/sbin:/bin:/usr/sbin:/usr/bin

exemple:

Défauts secure_path =/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

3
AntumDeluge

Vérifiez si vous avez configuré la politique de sécurité pour votre PATH à l'aide de la commande suivante:

$ Sudo sudo -V | grep PATH
Value to override user's $PATH with: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Si c'est le cas, désactivez-le ou ajoutez-le à l'aide de Sudo visudo.

Voir: Pourquoi les variables PATH sont-elles différentes lors de l'exécution avec Sudo et su? sous Unix SE

0
kenorb