Eu tenho export PATH="$PATH:/opt/local/bin" em /root/.bashrc e /root/.profile (nada mais em /root/.profile ) e /bin/bash é o shell de login para root em /etc/passwd . No entanto, invocar sudo -i (que de acordo com man sudo inicia um shell de login e deve executar ~/.profile ) faz com que /opt/local/bin esteja ausente de PATH de acordo com echo $PATH .
EDIT: invocar bash explicitamente faz com que /root/.bashrc seja originado.
A saída de sudo grep 'export PATH=' /root/.bashrc é
export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
export PATH="$PATH:/opt/local/bin" # MacPorts
/etc/sudoers (99% de certeza que eu não mudei nada):
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
root ALL=(ALL:ALL) ALL
%admin ALL=(ALL) ALL
%sudo ALL=(ALL:ALL) ALL