LaunchAgents: запуск приложения от имени пользователя root
Я делаю приложение для киоска для OSX. предыдущая версия этого приложения работала на OSX 10.8, но компьютеры обновились, и теперь приложение не работает должным образом. Мне нужно, чтобы пользователь не мог убить процесс. Итак, давайте назовем основное приложение как A. «A» должен иметь возможность запускаться от любого пользователя с правами root, чтобы избежать его уничтожения пользователями. Я использую LaunchAgent для автоматического запуска при входе пользователя. нет проблем с запуском A от имени пользователя root. как Launchctl не может запустить A правильно от имени root. и я не могу запустить A как Демон, потому что он должен быть интерактивным, я использую вторую программу под названием «B», «B» выполняет системный вызов «A» от имени пользователя root, а затем вызывает «exit» чтобы не быть убитым "А", когда "Б" умирает. это работает, если я запускаю B прямо из терминала, но когда Launchctl запускает B и умирает, A тоже умирает. я не знаю, как ее решить, как сохранить «А» в качестве пользователя root, даже когда «В» заканчивается.
вот как Б зовет А:
int main(int argc, const char * argv[]) { system("sudo /Path/to/A & exit;"); } system("sleep 15"); // trick that tell launchctl that everything was ok return 0; }
0 ответов на вопрос
Похожие вопросы
-
3
Ускорение загрузки OS X на годичной MBP
-
3
Как повторно связать резервную копию Airport Time Machine после перехода на новый Mac?
-
6
Как вы отключите звук запуска на Mac?
-
-
5
Почему мой Macbook сильно нагревается при использовании Boot Camp?
-
7
Есть ли в Mac OS X эквивалент Ctrl + Tab?
-
6
Способ переноса данных Time Machine на новый диск
-
13
Сброс положения Mac OS X Windows после отсоединения внешнего монитора
-
10
Программное обеспечение для резервного копирования для Mac OS X
-
5
Как удалить и удалить .kext в Mac OS X?
-
4
Как переназначить клавишу извлечения на клавиатуре MacBook, чтобы «удалить»?