我们知道,根uid是0。所以我试图将当前进程uid与0进行比较。具体如下:

uid_eq(get_current_cred()->uid, 0)

但是,我得到了“uid\u eq”的参数2的不兼容类型
我也试过
uid_eq(get_current_cred()->uid, (kuid_t)0)

但这也会导致以下错误:请求转换为非标量类型
如何检查当前进程是否是内核中的根进程?谢谢您。

最佳答案

kuid_t是一个结构,因此您应该声明一个,并将它的val成员设置为0
试试这个

kuid_t rootUid;

rootUid.val = 0;
uid_eq(get_current_cred()->uid, rootUid);

07-26 02:02