Provided by: manpages-zh_1.5.2-1_all bug

NAME

       execve -

 (SYNOPSIS)
       #include <unistd.h>

       int  execve  (const  char  *filename,  char *const argv [], char *const
       envp[]);

 (DESCRIPTION)
       execve()   filename   .  filename  ,    "#!  interpreter   [arg]"     .
       interpreter      ,  ,    "interpreter [arg] filename".

       execve()     ,    (text), (data), bss  (stack)    .     PID   ,    exec
       .   .        .

           ptrace ,   execve()  SIGTRAP .

            a.out ,    stub,     , Linux  (linker) ld.so(8)     ,    .

             ELF  ,   PT_INTERP  (interpreter)    .     libc5         /lib/ld-
       linux.so.1,   GNU libc2 (libc6)    /lib/ld-linux.so.2.

 (RETURN VALUE)
          execve()  ,    -1, errno   .

 (ERRORS)
       EACCES     .

       EACCES        .

       EACCES   (mount) noexec.

       EPERM    nosuid,   ,    SUID  SGID .

       EPERM     ,   ,    SUID  SGID .

       E2BIG    .

       ENOEXEC     ,   ,     .

       EFAULT  filename     .

       ENAMETOOLONG
               filename .

       ENOENT  filename , ,  ELF  .

       ENOMEM    .

       ENOTDIR  filename ,   ELF     ,    .

       EACCES   filename      ,     .

       ELOOP    filename ,   ELF     .

       ETXTBUSY
                       .

       EIO      I/O .

       ENFILE      .

       EMFILE      .

       EINVAL   ELF    PT_INTERP  (,    ).

       EISDIR  ELF   .

       ELIBBAD   ELF   .

CONFORMING TO

       SVr4,  SVID, X/OPEN, BSD 4.3.  POSIX   #!   ,  . SVr4    EAGAIN, EINTR,
       ELIBACC, ENOLINK, EMULTIHOP; POSIX    ETXTBSY,  EPERM,  EFAULT,  ELOOP,
       EIO, ENFILE, EMFILE, EINVAL, EISDIR  ELIBBAD   .

 (NOTES)
       SUID and SGID processes can not be ptrace()d SUID or SGID.

        #!  shell  ,      127 .

       Linux    SUID  SGID .

 (SEE ALSO)
       ld.so(8), execl(3), fork(2)

[]

        <xuming@users.sourceforge.net>

[]

       2003/05/13

Linuxman

       http://cmpp.linuxforum.net