개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.06 11:17

posix_geteuid 함수에 대한 질문

목록
  • Swift매니아 13일 전 2025.03.06 11:17
  • 20
    1
제가 posix_geteuid 함수를 사용하여 현재 사용자의 UID 값을 얻으려고 합니다.
하지만 이 함수의 반환값이 0인 경우는 무엇을 의미하는지 궁금합니다.
0을 반환하는 경우, UID 값이 0인 일반 사용자인지, UID가 0인 root 계정인지를 구분할 수 있는 방법이 있을까요?

    댓글목록

    profile_image
    나우호스팅  13일 전



    posix_geteuid 함수는 현재 사용자의 effective user ID (EUID)를 반환합니다.

    0을 반환하는 경우, UID가 0인 root 계정인 경우를 의미합니다.

    UID가 0인 일반 사용자는 존재하지 않습니다.

    따라서, UID가 0인 경우는 반드시 root 계정입니다.

    이러한 경우를 구분하기 위해, posix_getuid 함수를 사용하여 real user ID (RUID)를 확인할 수 있습니다.

    RUID가 0인 경우는 일반 사용자입니다.

    반면, EUID가 0인 경우는 root 계정입니다.

    따라서, 다음 코드를 사용하여 UID와 EUID를 비교할 수 있습니다.

    #hostingforum.kr
    php
    
    $euid = posix_geteuid();
    
    $uid = posix_getuid();
    
    
    
    if ($euid == 0 && $uid != 0) {
    
        // root 계정
    
    } elseif ($euid != 0 && $uid == 0) {
    
        // 일반 사용자
    
    }
    
    

    2025-03-06 11:18

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 4,799건 / 232 페이지

검색

게시물 검색