Alguns programas não encontrados quando usados com o sudo

8

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
    
por Benjamin Lindley 02.04.2012 / 19:29

4 respostas

6
O comando

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 .

    
por Dmitry Alexeyev 02.04.2012 / 19:39
3

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
    
por Mathnode 14.09.2012 / 17:10
2

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

    
por AntumDeluge 14.01.2015 / 10:57
0

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

    
por kenorb 24.12.2015 / 19:09