Запуск/отладка PyCharm с привилегиями root

Python Flask PyCharm

Иногда 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 для запуска и отладки файлов кода.

Справочная статья

rundebug-as-root-in-pycharm