2

Pythonでファイルにsetuidビットがあるかどうかを確認しようとしています。

stat docは関数について言及していますが、実際にsetuidビットを読み取るのではなく、S_ISUIDでのみ機能します。os.chmod()も記載されていますS_IMODEが、どう解釈すればいいのかわかりません。

setuidルートビットとしてファイルが設定されているかどうかを簡単に確認するにはどうすればよいですか?

4

1 に答える 1

7

stat.S_ISUIDは、「setuid」のモードビットです。統計結果のモードを比較して、そのビットが含まれているかどうかを確認します。

>>> 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 に答える