Я хочу запустить IntelliJ IDEA с привилегированными правами. Это потому, что при запуске моего приложения в IDE оно запускает SFTP-сервер. Это работает только если у меня есть разрешение на это.
До сих пор подход заключался в запуске программы IntelliJ с помощью sudo
. Неудобство здесь заключалось в том, что IntelliJ запускал совершенно новый контекст конфигурации, который теперь находится в каталоге root
. Поэтому мне пришлось начать с пустой/новой пользовательской конфигурации IDE (ее можно легко изменить, но это не суть), а также мне пришлось снова ввести свой лицензионный код.
Есть ли способ просто выполнить программу, не действуя как root, но продолжая действовать как вошедший в систему пользователь?
решение1
Я бы не стал запускать IDE под root. Это навлечет массу проблем, если что-то пойдет не так.
Вместо этого предоставьте себе правильный доступ sudo и заключите элемент, требующий доступа root, в скрипт.
Например, чтобы запустить acme_sftp_server от имени root, создайте скрипт
#!/bin/bash
sudo acme_sftp_server
Затем предоставьте себе привилегии sudo для запуска acme_sftp_server через sudo без пароля.
Затем вызовите свой скрипт, а не сервер через IntelliJ