gpt4 book ai didi

c++ - 在运行时使用 root 执行程序

转载 作者:太空宇宙 更新时间:2023-11-04 09:41:57 26 4
gpt4 key购买 nike

我有一个 C++ 程序需要 root 权限才能执行某些功能。如果我在 su 模式下运行编译后的代码,例如

linux-c5b6:/home/suman #

它满足了我的要求,但是在运行时我想检查我的进程是否有root权限。如果不是,那么它将从用户那里获取 su 密码并运行我的代码以获得正确的结果。

最佳答案

geteuid(2) 系统调用将返回运行程序的用户的有效用户 ID:

if (geteuid() == 0) {
// running as root
} else {
// not running as root
}

与其让程序询问用户 root 密码,我建议它退出并显示错误消息并指示用户使用 sudo 重新运行程序。

关于c++ - 在运行时使用 root 执行程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20480248/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com