知道脚本是否以root权限启动

时间:2018-01-07 22:16:46

标签: python python-3.x

如何知道脚本是否以root权限开始?

一开始我会做这样的事情:

import ...

print('Welcome')

if_start_with_sudo:
    ...
else:
    print('This program must be start as root')
    exit()

有可能吗?

1 个答案:

答案 0 :(得分:1)

使用Python os模块的geteuid()。根据{{​​3}}:

  

返回当前进程的有效用户ID。

考虑到root用户的UID始终为0,您只需要检查os.geteuid()是否返回0:

if os.geteuid() == 0:
    # UID is 0, your program is being run by the root user