2017-11-10 14 views
0

작동하지 않는 리눅스 프로세스를 죽이고,하지만 내 PHP 스크립트는이 PHP 간부 내가 PHP 스크립트에서 프로세스를 종료하기 위해 노력하고있어

ps ax | grep 8648 

8648 ?  Ss  0:15 /usr/bin/php -f /home/whatever/websites/engine/shadow_engine/engine_SHDW_01.php -- --id=SHDW_01 
9226 pts/0 S+  0:00 grep 8648 

실패 계속 :

if(isset($_GET['id']) && strlen(trim($_GET['id'])) > 0){ 
    $killCommand = "kill {$_GET['id']}"; 
    exec($killCommand, $killOutput, $killStatus); 

    if($killStatus === 0){ 
     echo "Process successfully killed"; 
    } else { 
     echo "Failed to kill process"; 
    } 
} 

$ killStatus 항상 1을 반환 exec 명령이 실패했다는 것을 의미하는 0 대신에 'sudo kill {$ _GET ['id ']}'또는 'sudo kill -9 {$ _GET ['id ']}'시도했지만 그 중 아무 것도 작동하지 않습니다 .

편집 : '라인 0 : 죽일 : 쉬 (1707) - 작동 할 수 없습니다'아파치 오류 로그는 말한다

+0

해당 프로세스의 소유자는 누구입니까? – Andrew

+0

내가 어떻게 PHP somescript.php –

답변

0

당신이 암호를 제공하지 않기 때문에이 작동하지 않는 당신의 exec() 내부 sudo을하려고합니다. sudo kill {$_GET['id']}

PS에

sudo php -f yourscript.php 

또는 스크립트 파이프 내부 sudo는 암호 : 중은 sudo를 전체 스크립트를 실행 하려고 은 여전히 ​​필요할 수있다, 나는 시도 제안 평소와 같이 터미널에서 프로세스를 먼저 종료하고 작동하는지 확인하십시오.

+0

와 함께 시작 했습니까? 메신저 URL에서 원격 프로세스를 죽이려고 –