Я запускаю этот небольшой python script как для Linux, так и для Solaris как для не привилегированного пользователя:
#!/usr/bin/python
import os
print 'uid,euid =',os.getuid(),os.geteuid()
Перед запуском бит setuid устанавливается в script (не на интерпретаторе python):
chown root:myusergrp getuid.py
chmod 4750 getuid.py
В Solaris эффективный uid устанавливается из-за бит setuid:
uid,euid = 10002 0
Но не в Linux:
uid,euid = 10002 10002
Обратите внимание: версия python равна 2.6 для Solaris и Linux
Возможно ли, что Python Linux работает как Python Solaris?