当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python os.geteuid() and seteuid()用法及代码示例


Python中的OS模块提供了与操作系统进行交互的函数。操作系统属于Python的标准实用程序模块。该模块提供了使用依赖于操作系统的函数的便携式方法。

如果文件名和路径无效或无法访问,或者具有正确类型但操作系统不接受的其他参数,则os模块中的所有函数都会引发OSError。

os.geteuid()Python中的方法用于获取当前进程的有效用户ID,而os.seteuid()方法用于设置当前流程的有效用户ID。


有效用户ID:通常与真实用户ID相同,但已更改为允许非特权用户访问只能由root用户访问的文件。有效的用户ID用于大多数访问检查。它也用作流程创建的文件的所有者。

注意: os.seteuid()os.geteuid()方法仅在UNIX平台和函数上可用os.seteuid()该方法通常仅对超级用户可用,因为只有超级用户才能更改用户ID。
超级用户是指具有运行或执行操作系统中所有程序的所有权限的root用户或管理用户。

os.geteuid() method

用法: os.geteuid()

参数:不需要参数

返回类型:此方法返回一个整数值,代表当前进程的有效用户ID。

代码1:os.geteuid()方法的使用
# 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)
输出:
Effective user ID of the current process:1000

Geteuid-terminal-output

os.seteuid() method


用法: os.seteuid(euid)

参数:
euid:一个整数值,表示当前进程的新有效用户ID。

返回类型:此方法不返回任何值。

代码2:os.seteuid()方法的使用
# 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)
输出:
Effective user ID of the current process:0
Effective user ID changed
Effective user ID of the current process:1000

Setuid terminal output



相关用法


注:本文由纯净天空筛选整理自ihritik大神的英文原创作品 Python | os.geteuid() and seteuid() method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。