sudo
tem os parâmetros env_keep
e env_reset
no arquivo sudoers
.
Você precisa editar sua configuração env_keep ou usar sudo -E
.
Acabei de instalar para a /usr/local/go
e, em ~/.bashrc
, adicionei esta linha:
export PATH=$PATH:/usr/local/go/bin
Agora, go
funciona na linha de comando, mas sudo go
me dá:
$ 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
sudo
tem os parâmetros env_keep
e env_reset
no arquivo sudoers
.
Você precisa editar sua configuração env_keep ou usar sudo -E
.
Basta pressionar Ctrl + Alt + T no seu teclado para abrir o Terminal. Quando se abre, execute o comando abaixo.
sudo ln -s /usr/local/go/bin/go /usr/bin/go
Edite o arquivo / etc / sudoers. Adicione os caminhos desejados à seguinte linha:
Padrões secure_path = / sbin: / bin: / usr / sbin: / usr / bin
exemplo:
Padrões secure_path = / sbin: / bin: / usr / sbin: / usr / bin: / usr / local / sbin: / usr / local / bin
Verifique se você tem a configuração da política de segurança para o seu PATH pelo seguinte comando:
$ sudo sudo -V | grep PATH
Value to override user's $PATH with: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Em caso afirmativo, desative-o ou adicione-o por sudo visudo
.
Veja: Por que as variáveis do PATH são diferentes quando executadas via sudo e su? no Unix SE
Tags command-line sudo