Мне сложно понять, как PATH
на переменную влияет sudo
. Я могу запустить команду activator
как обычный пользователь, потому что я добавил путь, где находится это приложение, в .bashrc
файл этого пользователя. Я также могу убедиться, что это так, с помощью:
user@kubuntu:~$echo $PATH
/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/activator-1.3.2
sudo activator
Однако при попытке запустить я получаю sudo:
активатор: команда не найдена
Я попытался решить эту проблему, добавив путь /opt/activator-1.3.2
к /etc/environment
, но я все еще получаю ту же ошибку "команда не найдена", хотя sudo echo $PATH
показывает, что она /opt/activator-1.3.2
находится в переменной PATH. Еще более запутанным для меня является тот факт, что если я запускаю sudo su
, то команда активатора выполняется нормально.
решение1
Вы всегда можете сделать:
sudo env "PATH=$PATH" godi_console В качестве меры безопасности в Debian в /etc/sudoers для параметра secure_path задано безопасное значение.