Por que o sudo não conseguiu o ambiente correto do PATH?

1

Eu executo o comando sudo hadoop fs -ls / , ele disse que o comando hadoop não foi encontrado. Mas eu já o configurei em /etc/profile , e também o verifico alternando para o usuário root.

O que acontece aqui?

    
por zjffdu 10.10.2014 / 10:07

2 respostas

0

Você pode querer fazer um arquivo sudoers.d para o sudo para manter permanentemente suas variáveis de ambiente.

% bl0ck_qu0te%
  1. cd ~/Desktop
  2. touch 'myfile'
  3. Abra o arquivo em um editor.
  4. Adicione estas linhas (ambas as linhas em branco mencionadas abaixo são muito importantes):

    <This must be a blank line>
    Defaults env_keep += "your_variable_name_within_quotes"
    <This must be a blank line>
    
  5. sudo chmod 440 'myfile'

  6. sudo mv 'myfile' '/etc/sudoers.d/myfile'
  7. Agora, abra: '/etc/sudoers' e verifique se há a linha: #includedir /etc/sudoers.d
  8. Se não estiver lá, NÃO EDITAR , em vez disso, sudo visudo
  9. Anexe a linha no final e pressione Ctrl + X para salvá-la.
  10. Reinicie e experimente um comando sudo com essa variável de ambiente.
por Renae Lider 10.10.2014 / 10:34
0

o cron usa seu próprio PATH padrão, algo como /bin:/usr/bin . Veja o cron (8) e crontab (5) páginas do manual.

    
por glenn jackman 10.10.2014 / 12:53