파이썬 스크립트 내에서 관리자 권한 확인 관리자 권한 (sudo)으로 실행되고

python 스크립트가 BSD와 같은 OS에서 관리자 권한 (sudo)으로 실행되고 있는지 확인하는 방법은 무엇입니까? 관리자 권한없이 실행하려면 사용자에게 친숙한 경고를 표시해야합니다.



답변

이건 어때? 다음을 확인하십시오 uid == 0.

[kbrandt@kbrandt-admin: ~] python -c 'import os; print os.getuid()'
196677

[kbrandt@kbrandt-admin: ~] sudo python -c 'import os; print os.getuid()'
0


답변

어때요?

import os
username=os.system("whoami")
if username is not "root":
    print "You aren't root"
else:
    print "Hello, "+username


답변

문자열 “root”와 사용자 이름을 일치 시키려고 유혹하지 마십시오.

일반적으로 UID의 텍스트 표현을 얻기 위해 덜 효율적인 콜 아웃을 제공하거나 신뢰할 수없는 환경 변수에 의존하게됩니다.


답변