1
Возможно ли разрезать процесс и запустить программу как обычный пользователь, например. с правами sudo? Или, если с sudo, с нормальными правами?Вилка с привилегиями пользователя/правами
Возможно ли разрезать процесс и запустить программу как обычный пользователь, например. с правами sudo? Или, если с sudo, с нормальными правами?Вилка с привилегиями пользователя/правами
Если ваш процесс выполняется от имени root, то после fork() вы можете выполнять setgid() и setuid() и запускаться как обычный пользователь в дочернем процессе, не затрагивая родительский процесс, который продолжает выполняться с правами root ,
«Запуск от root» включает в себя запуск с sudo? – Earlybite
Ну, разве это не то, что делает судо? Попробуйте эксперимент самостоятельно, запустите свой собственный код с помощью sudo и распечатайте значения geteuid(), getegid(), getuid() и getgid() и посмотрите, что произойдет. Используйте это как возможность обучения читать свои страницы руководства и понимать различия между ними и то, что они означают. –
Спасибо, сэр! – Earlybite