繁体   English   中英

在php中杀死Linux进程

[英]kill a linux process in php

我正在编写一个php代码,用于远程控制连接到linux pc的某些进程和设备。 这些代码是用python编写的。 我可以使用php exec()例如exec()system()函数运行脚本和程序,但无法杀死进程。

我想杀死蟒蛇:

<?php 
$PID = exec("pidof python");
echo $PID;
$kill = "kill " . $PID;
exec($kill);
?>

它返回正确的PID编号,但不会终止该进程。 我也试过exec("kill #PIDnum"); 但它不起作用。

有什么建议么?

提前致谢

您只能从运行系统上的Web服务器的用户标识所拥有的PHP中杀死进程,该用户标识通常设置为低特权帐户,例如“ nobody”,“ www”,web”等。

如果python是从PHP脚本启动的,则它可以工作。 但除此之外,没有。

解决方法是将行添加到PHP的文件中,该文件包含要终止的PID的列表。 这不会杀死进程,您需要使用bash或perl,python等语言编写一个单独的脚本来执行此操作。让cron以root身份运行该脚本,以定期读取文件并杀死PID 。 但是,那不会是瞬间的。 不过,您可以将cron设置为每分钟运行一次这样的脚本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM