伺服器没有回应? 请使用紧急终端机

您可能已经知道,我们的平台可以保护您伺服器上可能发生的硬体故障。

当在机器上发生问题,或是我们发觉有可能会发生问题时(温度异常,记忆体错误,等),您的 “伺服器” 会被自动签移到另外一台主机上。当然,如果您的问题是发生在您的 “伺服器” 内,并不是物理主机的问题,这时若伺服器没有回应下,您需要自行处理问题。

首先处理问题的第一个步骤是从 Gandi 的网页介面上看一下伺服器的状态是否是 “运作中”。在某些情况下有可能会是 “已停止” 或是 “已暂停” ,举例来说,伺服器没有续用。如果显示的是 “运作中” 并且伺服器没有回应,请依照下列方法进行检查。

有三不同的情况:

您还可以使用 SSH 连线您的主机

在这个情况下,下列这些指令可以帮助您分析问题:

  • uptime 可以看到您目前伺服器的负载值,
  • free 可以在 “used” 栏位看到您应用程式使用记忆体的情况,
  • top (我们建议您安装使用 htop 可以即时显示应用程式使用系统资源(记忆体, CPU) 的等级,
  • dmesg 显示来自您内核的讯息,
  • 用 tail 查看日志档(logs),像是 /var/log/messages 与 /var/log/daemons,举例来说(执行 tail /var/log/daemons),就可以看到有用的讯息,
  • df –h 显示您硬碟可使用的总空间。

最常见的错误状况:

  • 系统硬碟没有足够的空间: 这种情况最常发生因为系统的日志档消耗了所有硬碟空间,或是您的资料库成长的太快。解决方法是清除不必要的空间或是 加大您的硬碟.
  • 伺服器的记忆体大小不足,或是使用了太多的记忆体: 简易的解决方法就是增加额外的记忆体大小。如果您对系统熟悉,您可以尝试修改 Linux 可用记忆体的设定,指令是 sysctl -w vm.overcommit_memory = 2。注意: 修改后可能需要重新启动系统,您也必须增加 “vm.overcommit_memory = 2” 到 ”/etc/sysctl.conf” 与 ”/etc/gandi/sysctl.conf” 内。
  • 在您的伺服器上同时有太多程序在执行: 调整您应用程式的设定来降低同时执行过多程序的问题(譬如同时连接到 Apache 的数量)或是增加伺服器的等级来符合需求。

您没有办法使用 SSH 登入伺服器,并且用 ping 时会很慢甚至没有回应

您可以在您的帐户内使用 紧急终端机 来直接连接您的伺服器,就像您使用萤幕与键盘直接连接伺服器一样。

在这种情况下,您可以停止所有有问题的应用程式,然后再次尝试连接您的伺服器。

您可以使用紧急终端机中的 'sysreq' 模式。使用 Ctrl + o 来进入 sysreq 模式,然后输入您的指令。您可以使用 Ctrl + o + i 来删除所有程序。Ctrl + o + h 来查询其他有用的指令。

您的伺服器显示 “unreachable”,但是一切动作正常,并且没有其他错误讯息

有可能您的伺服器正在遭受 DDoS 攻击。因此,您的伺服器与整个网路会被独立起来,借此保护我们的基础设施与其他客户。

您需要确认自己的伺服器的情况是否遭受攻击,请用 traceroute 这个指令来测试您自己伺服器的 IP 位址。如果在 Gandi 的其中一个路由中停了下来,表示您的伺服器已经被独立了起来,您可以透过终端机连线到您的电脑,请透过 联络我的们客服团队 来确认问题(他们通常先联络您)。伺服器被独立的情况只有在很紧急的情况下才会发生。

在那之后,如果您还是被封锁,这表示您是属于第四种情况: 请联络我们的客服 跟我们说伺服器依旧被封锁,他们将会尽快处理并回复给您。

最后更改: 2016/06/08 08:46 (外部编辑)