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
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
.
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
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
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