ps не правильно показывает UID процесса, если UID и EUID отличаються --- --- вот что получаеться, если запустит приложенный простенький тест $ sudo ./a.out & running: pid 3953, uid 0, euid 113 [1] 3953 $ ps -axo pid,euid,uid | grep 3953 3953 113 113
ничего не понятно Что такое в Вашем понимании uid? Если смотреть на реальный, эффективный и saved, то никаких проблем нет - все действительно разное. Реальный (если не ошибаюсь) и есть тот самый uid? ------- int main (int argc, char* argv[]) { // setuid(1); setresuid(2,3,4); printf(\"%d uid %d\\n\",getpid(),getuid()); pause(); return 0; } ------ /a.out 7717 uid 2 [<a href="mailto:inger@altair" target="_new">inger@altair</a> 6882]$ ps -axo pid,ruid,euid,suid,uid|grep 7717 7717 2 3 4 3
Всё правильно, у меня возникла путаница в терминологии.