我有许多 Linux 服务器 (SUSE 9 & 10) 用于运行向大型计算网格提供数据的 Web 服务。最近我们遇到了一些难以解释的中断(即硬件和软件日志没有显示任何明显的错误),我们开始怀疑长时间的正常运行时间(通常为 200-300 天)是否是问题所在。鉴于这些服务器被大量使用,我是否应该考虑定期重启?
Kur*_*urt 49
您必须在内核更新后重新启动(除非您使用的是 KSplice),其他任何事情都是可选的。我个人在维护窗口期间按月重启,以确保服务器和所有服务按预期恢复。通过这种方式,我可以合理地确定,如果我必须进行计划外重启(即关键内核更新),系统将正确恢复。服务器和服务(即 Nagios)的自动监控也对帮助这个过程大有帮助(重新启动,观察指示灯变红,然后希望全部变回绿色)。
PS,如果您定期重新启动,则需要确保调整 fsck 检查(即适当地调整检查之间的最大挂载计数,否则如果服务器启动 fsck 处理几 TB 的数据,则快速 2 分钟重新启动可能需要 30 分钟。我通常将挂载计数设置为 0 (tune2fs -c 0),将检查间隔设置为 6 个月左右,然后每隔一段时间手动强制执行一次 fsck 并重置计数。
Kam*_*iel 12
我实际上定期重新启动我的服务器,任何时候进行重大配置更改。重要的是要知道,在发生紧急情况时,服务器软件会毫不费力地启动。您最不希望看到的情况是,您正试图从中断中恢复,但又不得不弄乱您的服务器配置,因为您在设置时没有对其进行彻底测试。
小智 7
Linux 服务器永远不需要重新启动,除非您绝对需要更改正在运行的内核版本。大多数问题都可以通过更改配置文件并使用 init 脚本重新启动服务来解决。
您需要注意重新启动...如果您“即时”更改了任何内容而没有在服务的配置文件中反映您的更改,则在重新启动后将不会应用这些更改。
不过,我通常会在预定的系统更新后重新启动。通常没有必要,但我在办公室没人的时候做,那为什么不呢?无论如何,当我开始更新时,经常会进行内核升级。
小智 5
不是真的需要,linux 内存处理非常好。但是,如果您有那么长的正常运行时间,那么您可能正在运行具有已知漏洞的内核 - 您可能想观看它。