Skip to content
Related Articles

Related Articles

Improve Article
Python | os.geteuid() and seteuid() method
  • Last Updated : 25 Jun, 2019

OS module in Python provides functions for interacting with the operating system. OS comes under Python’s standard utility modules. This module provides a portable way of using operating system dependent functionality.

All functions in os module raise OSError in the case of invalid or inaccessible file names and paths, or other arguments that have the correct type, but are not accepted by the operating system.

os.geteuid() method in Python is used to get the current process’s effective user id while os.seteuid() method is used to set the current process’s effective user id.

Effective User ID: It is normally same as real user ID but it is changed to enable a non-privileged user to access files that can only be accessed by root. Effective user ID is used for most access checks. It is also used as the owner for the files created by the process.

Note: os.seteuid() and os.geteuid() methods are available only on UNIX platforms and functionality of os.seteuid() method is typically available only to the superuser as only superuser can change user id.
Superuser means a root user or an administrative user who has all the permissions to run or execute any program in the operating system.



os.geteuid() method

Syntax: os.geteuid()

Parameter: No parameter is required

Return Type: This method returns an integer value which represents the current process’s effective user id.

Code #1: Use of os.geteuid() method




# Python program to explain os.geteuid() method 
  
# importing os module 
import os
  
# Get the effective user ID
# of the current process
# using os.geteuid() method
euid = os.geteuid()
  
# Print the effective user ID
# of the current process
print("Effective user ID of the current process:", euid)
Output:
Effective user ID of the current process: 1000

Geteuid-terminal-output

os.seteuid() method



Syntax: os.seteuid(euid)

Parameter:
euid: An integer value representing new effective user ID for the current process.

Return Type: This method does not return any value.

Code #2: Use of os.seteuid() method




# Python program to explain os.seteuid() method 
  
# importing os module 
import os
  
# Get the effective user ID
# of the current process
# using os.geteuid() method
euid = os.geteuid()
  
# Print the effective user ID
# of the current process
print("Effective user ID of the current process:", euid)
  
# Change effective user ID
# of the current process
# using os.seteuid() method
euid = 100
os.seteuid(euid)
print("Effective user ID changed")
  
# Print the effective user ID
# of the current process
euid = os.geteuid()
print("Effective user ID of the current process:", euid)
Output:
Effective user ID of the current process: 0
Effective user ID changed
Effective user ID of the current process: 1000

Setuid terminal output

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up
Recommended Articles
Page :