
posix_geteuid 함수는 현재 실행중인 프로세스의 Effective User ID (EUID)를 반환합니다. EUID는 프로세스가 사용하는 실제 사용자 ID입니다.
이 함수는 root 사용자 ID를 반환할 때 항상 0을 반환합니다. 이는 POSIX 스펙에 따라 root 사용자 ID는 0으로 정의된 것입니다.
시스템 권한을 확인하는 예제는 다음과 같습니다.
#hostingforum.kr
php
$euid = posix_geteuid();
if ($euid == 0) {
echo "현재 프로세스는 root 사용자로 실행중입니다.";
} else {
echo "현재 프로세스는 root 사용자로 실행중이지 않습니다.";
}
또한, 다음 예제는 현재 프로세스의 UID와 EUID를 비교하여 시스템 권한을 확인하는 방법을 보여줍니다.
#hostingforum.kr
php
$uid = posix_getuid();
$euid = posix_geteuid();
if ($uid == $euid && $euid == 0) {
echo "현재 프로세스는 root 사용자로 실행중입니다.";
} elseif ($uid == $euid) {
echo "현재 프로세스는 일반 사용자로 실행중입니다.";
} else {
echo "현재 프로세스는 root 사용자로 실행중입니다.";
}
이 예제는 UID와 EUID가 같을 때, UID와 EUID가 같고 root 사용자 ID일 때, UID와 EUID가 다른 경우를 각각 처리합니다.
2025-07-15 14:37