Quando eu uso o sudo para executar um comando, as variáveis de ambiente não são visíveis?

2
$cat test
export var=value

$source ./test

$cat print.sh
echo $var

$chmod +x print.sh

$echo $var
value

$sudo ./print.sh

Eu não recebo nada. Eu estava esperando ver valor.

O que está acontecendo?

    
por p2pnode 27.10.2011 / 13:48

1 resposta

5

se você quiser manter o ambiente com um sudo, use sudo -E que preservará o ambiente.

Se você precisa sempre preservar algumas de suas variáveis de ambiente, edite o arquivo sudoers para adicionar linhas:

Defaults        env_reset
Defaults        env_keep += "YOURVARIABLE OTHERVARIABLE YETANOTHER"
    
por 27.10.2011 / 13:54