Quase sempre preciso executar scripts php que necessitam de privilégios administrativos no linux, para isso uso "sudo -s" para logar como administrador e php /caminho/para/o/script.php para executar o script.
Mas como utilizo o Zend Server CE, o path para o php e outros binários relacionados é /usr/local/zend/bin, e este path não está presente após o sudo -s, como podem ver abaixo: rodrigo@rodrigo-laptop:~$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/zend/bin:/usr/local/zend/share/ZendFramework/bin rodrigo@rodrigo-laptop:~$ sudo -s [sudo] password for rodrigo: root@rodrigo-laptop:~# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin Lendo a documentação do sudo, vi que o comando "env_reset" é responsável por redefinir diversas configurações de ambiente, inclusive o PATH se o mesmo não estiver listado na sessão "Environment variables to preserve:" da saída do comando "# sudo -V". E no meu ubuntu (10.10 - maverick) está listado: # sudo -V ... Environment variables to preserve: XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH MAIL LS_COLORS Isso é um BUG ou eu interpretei mal as informações da manpage do sudo? Alguém sabe alguma forma de contornar este problema? Sendo que eu não gostaria de alterar as configurações padrões, apenas de pegar o PATH padrão que o sudo define e acrescentar os paths do Zend Server, por exemplo: PATH="$PATH:/usr/local/zend/bin" Obrigado. -- Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece Lista de discussão Ubuntu Brasil Histórico, descadastramento e outras opções: https://lists.ubuntu.com/mailman/listinfo/ubuntu-br

