红联Linux门户
Linux帮助

linux c编程如何使程序从普通用户登录到root用户权限运行

发布时间:2010-03-23 12:59:21来源:红联作者:cumtlonglong
linux c编程如何编程实现程序从普通用户登录到root用户权限运行。
我是菜鸟,谢谢帮助!
文章评论

共有 7 条评论

  1. cumtlonglong 于 2010-03-27 20:53:47发表:

    顶顶顶顶

  2. cumtlonglong 于 2010-03-26 15:55:25发表:

    好像不太对,我按照你说的方法试了,行不通的,
    我有个问题:
    对于exec函数族,它会将现有程序完全替换,这样即便是进入root用户也任然不能做任何操作的?
    可能是我的分析的不太对吧,若是请指教:
    我的程序如下,请指教:
    #include "apue.h" //包含各种库文件

    int
    main(int argc, char *argv[])
    {
    pid_t pid;
    printf("start...\n");
    printf("father:\n");
    system("whoami");
    if ((pid = fork()) <0)
    err_sys("fork error");
    else if(pid == 0)
    {
    if (execlp("su","su -",argv[1] ,(void *)0) < 0)
    err_sys("exec error");
    system("whoami");
    exit(0);
    }
    exit(0);

    }

    输出为:找不到该用户!!

    谢谢

  3. cumtlonglong 于 2010-03-25 22:40:01发表:

    谢谢,我试试先!{:2_93:}

  4. mingdengzhao 于 2010-03-24 17:30:47发表:

    0),想C程序中传参数(就是ROOT的密码)
    1,新建进程FORK函数
    2,EXECP家族函数执行su -
    3,编译通过
    4,运行测试
    ./C 123456 <----ROOT的密码

  5. cumtlonglong 于 2010-03-24 14:45:30发表:

    顶顶顶

  6. cumtlonglong 于 2010-03-23 18:07:50发表:

    谢谢,我说的是用c语言实现,让程序运行状态从普通用户转到root用户权限,而其过程中程序不能关闭。

  7. dlmuzhou 于 2010-03-23 14:41:30发表:

    在命令行执行su root