![由 php cli 脚本导致的完整服务器现金 - 可能吗?](https://linux22.com/image/750215/%E7%94%B1%20php%20cli%20%E8%84%9A%E6%9C%AC%E5%AF%BC%E8%87%B4%E7%9A%84%E5%AE%8C%E6%95%B4%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%8E%B0%E9%87%91%20-%20%E5%8F%AF%E8%83%BD%E5%90%97%EF%BC%9F.png)
我有一个无法理解的问题。我们的一台机器(物理专用服务器,Debian 10,nginx,mysql,PHP 7.3)正在运行一个 php 应用程序,该应用程序还通过一些 cronjobs 定期使用 php-cli。
cronjobs 没有做什么特别的事,只是一些文件系统工作和一些 mySQL 请求。
然而,机器每隔一小时就会重新启动一次,没有任何日志文件条目(syslog、kern.txt、dmesg 中没有任何内容)。SSD 完好无损,RAM 测试成功,没有故障。
我们现在禁用了 cronjobs,并且机器已经运行了 12 多个小时。
最初,我怀疑是硬件问题,因为我从未听说过 php 实例可以完全杀死 Debian。这意味着 php 脚本可能会导致内核崩溃。这是可能吗?
如果是这样,有什么方法可以调试它吗?
答案1
这是可以想象的,但可能性很小。您提到了“文件系统工作”——如果这是通过系统命令进行的,那么从技术上讲是可能的,但不应该在您不知情的情况下发生。
我最近有一台运行多个 Web 服务器的虚拟机服务器,它几乎每天都会崩溃 - 虽然不是几个小时那么频繁,但同样没有日志或任何东西。我从未彻底弄清楚,但相同的虚拟机在另一台服务器上都运行良好。我怀疑原因是错误的 BIOS 更新/修复/针对 spectre/meltdown 的解决方法、内存故障或磁盘控制器故障 - 不幸的是,我永远不会知道是哪个,因为我退回了服务器。