我有一个无法理解的问题。我们的一台机器(物理专用服务器,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 的解决方法、内存故障或磁盘控制器故障 - 不幸的是,我永远不会知道是哪个,因为我退回了服务器。