我正在尝试通过同一个VPS上的php启动一个ssh文件,但我遇到了一些问题。
当我通过腻子屏幕连接到VPS时,"nosaukums"没有显示在屏幕列表中,但一切都
在启动sh
文件。exec('cd /home/galvena/gameserveris ; screen -dmS nosaukums sh start.sh);
可能出了什么问题?
我还有第二个问题。当我尝试通过php关闭屏幕时,出现错误
必须连接到终端
尝试执行以下操作时:
exec('cd /home/galvena/gameserveris ; screen -r nosaukums ; stop');
我看不出在另一个屏幕中运行这个恶魔的原因。相反,您可以做的是在 init.d 文件夹中创建一个简单的 shell 脚本,其中包含您已经拥有的停止和启动命令。然后从 php 中你可以调用类似的东西system('service your_service_name stop/start');
java solr deamon 的此类脚本示例可以在这里看到:http://rc98.net/solrinit
您还可以使用ps -aux | grep nosaukums
来检查其是否正在运行。我很确定你也可以用一个 unix 命令获得该服务的 pid,不幸的是我不知道,但一些谷歌搜索会 def 显示它,然后运行exec('kill PID');
那只是我的头顶。希望对你有帮助...
请注意,服务命令可能需要根权限,因此您可以将脚本放在其他地方并手动运行它,或者直接在 php 中实现它......