Иногда python может требовать разрешения su, например, для настройки ssl, конечно, вы можете выполнить его в командной строке.sudo
, но в интегрированной среде разработки, такой как Pycharm, если вы хотите использовать некоторые из ее функций, таких как отладка точки останова Niucha, вам может потребоваться запустить весь проект с привилегиями root, т.е.sudo /Applications/PyCharm.app/Contents/MacOS/pycharm
, но это приведет к изменению пользовательского каталога (пользовательский каталог становится /root), что приведет к изменениям в операционной среде, поэтому более идеально запускать pycharm как обычный пользователь, а при запуске/отладке
Используя привилегии root, вот как это сделать:
1. Установите интерпретатор Python для запуска в режиме sudo по умолчанию, и ввод пароля не требуется:
sudo visudo -f /etc/sudoers.d/python
Введите следующий текст в файл
<user> <host> = (root) NOPASSWD: <full path to python>
Здесь из-за виртуальной среды, которую я использую, мой путь к Python — это путь к виртуальной среде, который зависит от моей реальной ситуации.
adison ALL = (root) NOPASSWD: xxx/venv/bin/python
Примечание. Для редактирования файлов в sudoers.d необходимо использовать visodu, в котором есть функция проверки безопасности. Другие инструменты редактирования могут привести к сбою разбора файлов, что сделает невозможным использование команды sudo. Не удалось разрешить sudo, не удалось инициализировать ошибку плагина политики (можно исправить в режиме восстановления системы, метод находится вздесь)
2. Создайте файл сценария (Например, python2.7_sudo.sh), запускаем интерпретатор python в режиме sudo, содержимое файла следующее:
#!/bin/bash
sudo xxx/venv/bin/python "$@"
Изменить права доступа к исполняемому файлу
chmod +x python2.7_sudon.sh
3. Используйте python2.7_sudon.sh в качестве интерпретатора pycharm.
Запустите pycharm, откройте проект, выберите команду меню «Настройки» - «Интерпретатор проекта», выберите значок шестеренки справа от «Интерпретатора проекта» и выберите «Добавить локальный» во всплывающем меню,Затем выберите только что созданный python2.7_sudon.sh в диалоговом окне выбора файла., после подтверждения
После вышеуказанных настроек проект запустит интерпретатор Python с разрешениями su для запуска и отладки файлов кода.