我使用Apache,PHP,MySQL运行Debian虚拟服务器。 只有一个网站stream量非常低,但服务器往往(几乎每天)冻结,不响应。
当发生这种情况时,服务器无法从Web浏览器或通过SSH,我必须去我的提供商的pipe理和执行服务器硬复位后,服务器似乎正常工作。
我怎样才能找出造成冻结的原因?
Linux vm2797 2.6.32-5-amd64 #1 SMP Tue Jun 14 09:42:28 UTC 2011 x86_64 GNU/Linux
如果在/ var / log / syslog或/ var / log / messages文件中看不到任何内容,我build议您使用任何系统状态logging工具。 我使用nmon(捕获数据模式)来监视我的系统。
你可以在这里find它
重新configuration你的系统日志到不同的服务器 – 这将推动事件,任何监控轮询服务器(可能会错过大的段错误,除非你在确切的时刻进行轮询)。
抓取日志到崩溃的机器是一个糟糕的主意 – 您将永远失去日志的最多导入(最后一行)行。
man rsyslog.conf给出了有关redirect到另一台机器的信息,以及如何configuration来监听日志消息。
日志将显示在主机的系统日志中,前面加上它们来自的服务器的名称。
在聆听方面,'man rsyslogd'会给你启动选项,然后可以在/ etc / default / rsyslog中设置(你可能需要-4或-6)。 您可以使用lsof -p pid_of_rsyslogd来validation它正在侦听
这里要做的是看你的日志。 它们通常在/ var / log中find。 记下重新启动系统的时间,并在该时间之前立即查看日志中的消息。
/var/log/syslog /var/log/messages /var/log/apache2/error.log /var/log/mysql*
将是开始的好地方。