AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 9306
Accepted
kch
kch
Asked: 2009-05-18 23:56:54 +0800 CST2009-05-18 23:56:54 +0800 CST 2009-05-18 23:56:54 +0800 CST

当未受影响的 unix 服务器开始发狂时,您检查的第一件事是什么?

  • 772

所以你有这个设置整齐的 unix 服务器,它超级快,运行良好,几个月来一切都很好,突然间,各种奇怪的错误开始出现在各种不同的服务中,而且它们本身没有多大意义,更不用说在一起了。

将 ssh 会话连接到机器后,您应该立即检查哪些便宜的东西?

我对强调不明显命令和罕见情况的创伤故事特别感兴趣,但我想明显的东西因人而异,所以我们可以随意列出它们。

unix disaster-recovery troubleshooting debugging
  • 12 12 个回答
  • 671 Views

12 个回答

  • Voted
  1. Best Answer
    Avery Payne
    2009-05-19T00:35:50+08:002009-05-19T00:35:50+08:00

    第一顺序:反应灵敏吗?

    如果您无法登录,则会出现更大的问题。这通常有两种形式:硬件故障和软件故障。两者都有潜在的灾难性。为防止 DFA 错误,请先检查一般硬件运行状况 - 通常简单浏览一下就足够了。

    二阶:系统的底层结构是否健康有序?

    检查系统的“黄金三合会”:

    • 有足够的 CPU 时间可供处理
    • 有足够的磁盘空间可供存储
    • 有足够的内存可供工作负载使用

    在过去的几十年里,三合会已经扩展成一个“四合会”,其中包括通信(网络):

    • 连接是功能性、响应性和容量

    三阶:问题的严重性是什么?

    哪些计划或服务受到影响?按照严重程度的递减顺序,它是系统性的(系统范围的)、集群的(一组程序)还是孤立的(一个特定的程序)?程序集群通常会因为特定的底层服务失败或无响应而出错。系统性问题有时与此有关(想想 DNS 或 IP 冲突),但知道在哪里寻找通常是关键。

    四阶:诊断工具是否提供与问题相关的有用数据? 现在您已经了解了系统的运行状况(二阶)以及系统的哪些部分遇到了问题(三阶),这应该可以轻松缩小问题所在。

    错误消息或日志文件应该是此旅程中的常见航路点。

    CPU问题:

    • 加载av
    • 最佳
    • 跟踪

    磁盘空间/IO问题:

    • df
    • 杜
    • lsof
    • iostat
    • vmstat

    内存问题:

    • 自由的

    连接问题:

    • 平
    • 路线(以及 arp 和 rarp 和朋友)
    • iptables、ipchains、ipfw(对于那些 BSD 人来说)
    • traceroute 或 mtr
    • 主机、nslookup 或 dig
    • 网络统计

    最常见的抱怨(我听到的):

    电子邮件发送速度不够快(从发送到收件人收到超过一分钟),或者电子邮件拒绝我的发送尝试。这通常归结为在垃圾邮件风暴期间启动 Postfix 中的速率限制器,这会影响接受内部交付的能力。

    一个真实的例子:

    然而,这并非总是如此。有一次,无论服务重新启动,问题仍然存在;所以 3 分钟后是时候开始环顾四周了。CPU 很忙,但低于 100%,但在只有 2 个内核的盒子上负载已飙升至 15,并且有可能会更高。top 命令显示邮件系统和邮件扫描程序都处于超速状态,但没有看到 amavis 子进程。这就是线索——邮件队列命令 (mailq) 显示了大约 150 多封未送达的邮件,其中超过 80% 是垃圾邮件,在最后 20 分钟内。快速调整以降低速率限制器(降低垃圾邮件风暴的摄入率)同时增加子电子邮件扫描程序进程的数量(以帮助处理积压),然后重新启动服务,解决了问题并且系统能够在短时间内完成交货。

    问题的原因是 amavis 父进程已经死机,而子进程最终都运行了它们的过程(它们在进行了多次扫描以防止内存泄漏后自行终止)。因此,postfix 中有 SMTP 进程试图联系……稀薄的空气……进行所需的垃圾邮件/病毒扫描。我使用的发行版包含永远不会更新的过时软件包;由于安装将在一年左右更换,我手动将安装“覆盖”到最新版本,其中包括几个错误修复。从那以后我没有遇到同样的问题。

    • 20
  2. Mark Regensberg
    2009-05-19T09:55:07+08:002009-05-19T09:55:07+08:00

    通常是“谁”后跟“最后一个”

    我长期以来管理的机器上的一堆问题是因为对“未触及”的定义非常松散——通常有人做了一些事情:)

    • 5
  3. kch
    2009-05-19T00:00:28+08:002009-05-19T00:00:28+08:00

    好吧,我会开始的。

    这一次咬了我一次,我花了几个小时尝试数千种不同的东西,到处禁用服务,重新启动等等。问题是什么?完全没有磁盘空间。

    所以,这是我在调试突然出现问题的服务器时输入的第一件事:

    df -h
    

    我现在永远不会忘记这一点。它只是为我节省了很多浪费的精力。以为我会分享。

    • 4
  4. Oli
    2009-05-19T00:01:54+08:002009-05-19T00:01:54+08:00

    顶部(或 htop)

    • 2
  5. Chopper3
    2009-05-19T00:59:27+08:002009-05-19T00:59:27+08:00

    如果可以的话,我总是会尝试关闭所有网卡(除了管理网卡)。

    • 1
  6. ParoX
    2009-05-19T01:01:19+08:002009-05-19T01:01:19+08:00

    我检查的第一件事是“顶部”(是否有任何奇怪的进程;占用内存或 CPU 时间的进程。)

    如果那里什么都没有,我会检查“谁”,看看是否有其他人出于某种原因在我的机器上。

    也许文件系统被卸载了;检查调用“cat /etc/mtab”,然后调用“fstab”,以确保在启动时一切正常。

    检查正常运行时间以确保框中的用户数是合理的(应该只有您),然后浏览 var/log/auth.log 以查看是否有任何问题。

    这些都是包罗万象的。根据您的盒子抛出的错误,您可能需要检查导致问题的特定进程。

    • 1
  7. Gavin McTaggart
    2009-05-23T22:02:39+08:002009-05-23T22:02:39+08:00

    在主机上运行(at)sar之类的东西几乎是强制性的。能够获取 CPU、网络、内存和磁盘 I/O(以及其他)的历史快照的用处不可低估。

    有很多次,我能够通过检查主机在过去 24 小时内所做的事情来诊断故障,并查看事情何时开始出错。

    • 1
  8. Andy
    2009-05-23T22:28:47+08:002009-05-23T22:28:47+08:00

    检查 dmesg 是否有任何错误 - 我通常以 a 开头dmesg | tail,因为事情可能仍然出错,并且服务器仍在尝试执行导致错误的任何事情。

    • 1
  9. Nolte
    2009-05-22T15:40:55+08:002009-05-22T15:40:55+08:00

    顶部 df -h 并始终检查 /var/log 以确保该分区尚未填满。这导致我几次彻底崩溃。

    • 0
  10. Omegatron
    2009-05-23T20:30:35+08:002009-05-23T20:30:35+08:00

    df-ha

    检查硬盘驱动器是否已满并且有人没有收到警告

    htop 或顶部

    检查内存和cpu使用情况并没有异常高。

    或者,如果盒子没有响应,我会进入 vm-ware 客户端并从那里检查 cpu/ram。

    • 0

相关问题

  • 如何对 Windows 进行故障排除?发布您的清单[关闭]

  • 网速慢 - 我应该检查什么?

  • 更改 PHP 的默认配置设置?

  • IIS 6.0 (Windows Server 2003) 备份的最佳实践?

  • 当一切都爆炸时,你的清单是什么?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve