Используйте внимательно, есть проблемы безопасности с sudo и переменными.
Из того, что man sudoers
я обнаружил, что вы должны использовать
По умолчанию env_reset
По умолчанию env_keep + = "PYTHONPATH OTHERVARIABLE YETANOTHER"
В Ubuntu sudo
действительно сохраняет некоторые переменные. sudo -i
больше похоже на вход в систему как root и затем запуск команды. И то, и другое может быть неудобно, первый из них sudo nano myfile
оставляет корневые файлы внутри вашего дома, а второй sudo -i nano myfile
попытается открыть / root / myfile.
Бегать
sudo printenv PATH
и посмотрим, что это даст. Здесь это дает
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
например. Теперь запустите sudo visudo
и добавьте строку
Defaults secure_path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
заменив тем, что вы нашли прямо перед этим. Добавьте новый путь к нему, если вам нужно.
О библиотеках:
sudo LD_LIBRARY_PATH=/usr/lib/path/to/a/safe/library your command
В дистрибутивах Linux очень много заботы PATH
, и вы действительно должны быть осторожны, прежде чем играть с ним. Будьте особенно осторожны при добавлении путей типа " .
" или /home/username
, это небезопасно.
Одной из опасностей добавления путей является то, что они открываются для возможности выполнения файлов по этим путям root
, открывая окна в системе безопасности, которые могут быть использованы вредоносным программным обеспечением. Могут быть и другие опасности. Просто убедитесь, что вы знаете, что делаете. Обход sudo
мер безопасности может сделать ваш Solaris таким же безопасным, как Windows XP.