Как программно изменить uid и gid работающего внешний процесс с использованием c?Программно изменить uid и gid работающего внешнего процесса с помощью c
ответ
Небольшой пример, который включает в себя возможность изменить UID ЕТ GID, используя существующие имена пользователей и групп:
#include <sys/types.h>
#include <unistd.h>
#include <pwd.h>
#include <grp.h>
// .. snip
// find user and group
struct passwd * pwd = getpwnam("new_user");
struct group * grp = getgrnam("new_group");
// not included : error checking
uid_t uid = pwd->pw_uid;
gid_t gid = grp->gr_gid;
setgid(gid);
setuid(uid);
редактировать: Это работает только для текущего процесса
Извините, обновите вопрос только сейчас, я хочу изменить uid и gid работающего внешнего процесса, но не самого себя. – zsounder
Это несправедливо :) В любом случае, я боюсь, что это обычно невозможно. – SirDarius
yup, кажется немного несправедливым, но я думаю, что он мог бы решить мою проблему :) – zsounder
- 1. Невозможно изменить GID процесса
- 2. Программно получать UID и GID от имени пользователя в Unix?
- 3. linux | синхронизировать uid и gid
- 4. Есть ли системный вызов для получения uid/gid текущего процесса?
- 5. Как получить UID и GID в jnrfuse
- 6. Pone 4.3 uid и gid не найдены
- 7. Что такое GID/UID системы на Android?
- 8. Измените ApplicationID работающего процесса с C#
- 9. Выполнение chown только на файлах с определенным UID или GID
- 10. Как переназначить uid/gid в tar-архиве?
- 11. GSUtil Rsync не сохраняя UID/GID владельца
- 12. api-процесс processmaker (как получить dynaform uid с помощью процесса uid и задачи uid?)
- 13. может ли любой пользователь изменить uid/gid с помощью setuid()/setgid?
- 14. Изменение UID/GID только одного потока в Linux
- 15. Delphi изменить код сборки работающего процесса
- 16. C++ Выполнение внешнего процесса
- 17. C# использовать отражение для изменения работающего процесса
- 18. Как установить gid и uid в os.FileMode в golang?
- 19. получить progid работающего процесса
- 20. Вызвать метод работающего процесса
- 21. Docker реплицирует UID/GID в контейнере с хоста
- 22. Получить стек backtrace работающего процесса
- 23. Как прочитать список gid, ассоциированный с uid в пространстве ядра?
- 24. ГДЕ gid = $ gid LIMIT 26 не работает?
- 25. Создание MiniDump работающего процесса
- 26. Как изменить размер программно с помощью C#?
- 27. очистка памяти кучи работающего процесса C++
- 28. Отображение результата работающего cmd-процесса
- 29. Получить идентификатор процесса работающего приложения metro
- 30. Перенос страниц памяти работающего процесса
Является ли это на самом деле сделать то же самое путь на iOS, как на unix-системах? Если нет, тег iOS следует удалить. Если так, ничего себе, это потрясающе! – setholopolus