📜  Python| os.geteuid() 和 seteuid() 方法

📅  最后修改于: 2022-05-13 01:54:48.327000             🧑  作者: Mango

Python| os.geteuid() 和 seteuid() 方法

Python中的OS 模块提供了与操作系统交互的功能。操作系统属于 Python 的标准实用程序模块。该模块提供了一种使用操作系统相关功能的可移植方式。

os 模块中的所有函数在文件名和路径无效或不可访问的情况下,或具有正确类型但操作系统不接受的其他参数的情况下引发OSError

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

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

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

os.geteuid() 方法

代码 #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-终端输出

os.seteuid() 方法

代码 #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

设置终端输出