2

我正在尝试检查文件是否在 Python 中具有 setuid 位。

stat 文档提到了一个S_ISUID函数,但它仅适用于os.chmod(),而不是实际读取 setuid 位。它还列出了S_IMODE,但我不知道如何解释它。

如何轻松检查文件是否设置为 setuid 根位?

4

1 回答 1

7

stat.S_ISUID 是“setuid”的模式位。您比较 stat 结果的模式以查看它是否包含该位:

>>> ping = os.stat('/bin/ping')
>>> ping.st_mode & stat.S_ISUID
2048
>>> echo = os.stat('/bin/echo')
>>> echo.st_mode & stat.S_ISUID
0
于 2010-01-29T17:35:12.613 回答