struct task_struct http://lxr.linux.no/linux+v2.6.30.5/include/linux/sched.h#L246で定義されているプロセスを使用して、現在のユーザーを取得するにはどうすればよいですか? ユーザーがルートかどうかを確認する必要があります。どうやら getuid を使用できません
質問する
449 次
3 に答える
2
task_uid
のユーザー ID を取得するために使用できますtask_struct
。またはtask_euid
、それが必要な場合に使用できます。
于 2013-02-27T09:35:27.263 に答える
0
機能をお試しくださいgetlogin_r()
。これは unistd.h で定義され、ユーザー名を返します。man getlogin_r
他のオプションについては、をご覧ください。
int getlogin_r(char *buf, size_t bufsize);
于 2013-02-27T09:40:19.713 に答える
0
最初はわからなかったメンバー変数 uid_t uid を使用することになりました。私が使用していた(古い)Linuxのバージョンを確認し、ここで見つけました:http://lxr.linux.no/linux+v2.6.18/include/linux/sched.h#L246
ご迷惑おかけして申し訳ありません
于 2013-02-27T10:24:47.050 に答える