我正在尝试在 Ubuntu 上编写一个 C++ 程序,检查用户是否可以关闭 PC,如果可以,则为用户关闭 PC。
因此,我正在考虑获取用户 ID,然后检查他是否有权关闭计算机。
但是,我真的不知道 Ubuntu 中的标准是什么,规定用户是否拥有这样的权利......你知道这是什么吗?
谢谢 !
答案1
我想我已经找到了解决问题的方法,所以现在我将其发布出来。
测试管理员权限可以像这样进行:
uid_t uid = getuid(), euid = geteuid();
if(uid < 0 || uid != euid) {
// Can stop or reboot system
} else {
// Cannot stop nor reboot system
}