Debian 服务器冻结

Debian 服务器冻结

我提前为自己不是合适的管理员而道歉,我只是一个程序员,在服务器上安装了 Debian Etch 以及 mysql、php、apache 和 ISPConfig。

因此,它正常运行了 900 多天,没有出现任何问题(没有重要的负载,只有我们的几个服务),然后它开始表现不佳 - 突然冻结(只有 ping 工作,没有其他工作),当我尝试通过 ISP 的接口重新启动它时,它完全冻结。然后我不得不请求支持人员手动重启。之后,它正常工作了几天,然后同样的事情再次发生(到目前为止发生了三次)。

现在我执行了网络启动并运行了 fsck(发现 1.1% 不连续),希望这会有所帮助

我的问题是,是否有人有过类似的经历,什么原因导致了这样的问题(当只有 ping 有效时)?

另外,我查看了系统日志,但没有发现任何可以表明存在问题的信息。我是否应该查看其他日志?


非常感谢您的回答!

抱歉,我还没有注册,所以我没有投票选项。不过还是谢谢!

首先,要明确这个问题,这是一个托管服务器,并且在ISP的支持下有网络启动/重置/手动重置功能。

这可能是一个 HDD 问题,因为在 fsck 之后,一切似乎都工作正常,直到我深入研究并意识到只有首页可以工作,而其他页面不工作(页面出现“403 禁止”错误或只是空白页或 mysql 错误...)。

SSH 似乎也可以工作,但实际上不起作用:我可以尝试登录,它会拒绝错误的密码,但是当我输入正确的密码时 - 连接就会关闭。

我将尽可能尝试通过网络启动和备份再次访问文件,然后将不得不更换磁盘......

是否可以克隆有错误的磁盘?无论如何,值得尝试吗?

更新:今天(我提出问题后的第二天)结果显示硬盘确实有问题。再次感谢您的时间和帮助!

答案1

假设这是一台专用的物理服务器:

下次系统死机时,您应该让托管公司插入“崩溃车”,然后查看屏幕(控制台)上的内容,或者自己去检查。下次系统开始出现故障时,如果您能够登录,请键入“dmesg”并查找错误消息;通过编辑问题并粘贴它们或使用 pastebin 来包含它们。

我过去曾用数码相机或手机拍过照片,以便日后参考或远程向某人展示。任何严重的内核消息很可能都会显示在屏幕上(这取决于日志的配置方式);如果没有这些信息,您得到的答案基本上就是胡乱猜测。

我猜测是硬盘故障;带上可启动 CD(Ubuntu 可能是最简单的)并运行 smartctl -A在此处插入硬盘设备路径。您将获得驱动器健康参数列表​​,更重要的是,还会获得驱动器错误日志(如果有)。

还:忽略建议进行操作系统升级的人。 这是极其危险的建议。

更新:是的,如果您没有良好或最新的备份,则可以克隆损坏的驱动器。看看 GNU ddrescue。不过,它是一种高级工具。如果资金紧张,请将其送去恢复,或者至少聘请有数据恢复经验的专业系统管理员。

答案2

这可能是硬件问题。磁盘或内存错误、过热(风扇或通风口堵塞)、网卡损坏。除非有任何硬件错误,否则我首先会将系统升级到 lenny,然后再升级 squeeze。它可能会自动修复您的问题。

我还会扫描系统中的坏块(这是命令名称)。在 mkfs.ext3 中存在以下选项:

-c     This option causes e2fsck to use badblocks(8) program to do a read-only scan of the device in order to find any bad 
       blocks.  If any bad blocks are found, they are added to the bad block inode to prevent them from being allocated to
       a file or directory. If this option is specified twice, then the bad block scan will be done using a 
       non-destructive read-write test.

这样您将能够避免由坏块引起的磁盘错误。

还可以考虑使用 memtest86 或 memtest86+ 运行内存测试。如果发现错误,并且您愿意尝试,可以使用 memtest 的输出来提供给内核并映射出任何坏内存:http://rick.vanrein.org/linux/badram/

我确实知道它工作得很好。我曾经遇到过一个坏的 dimm,它会在内存分配的某个时刻导致系统崩溃和烧毁。使用 memtest 并找到坏的内存区域后,我使用 badram 内核参数将其映射出来,问题就解决了。

相关内容