SuperAPI AI 工具集

linux-troubleshooting

数据与分析

查看项目

更新于 10-16 08:04

技能介绍

用途:当生产 Linux 服务器出现故障时,先判断症状归属的子系统,再按结构化分诊流程缩小故障域,避免盲目重启或改动。适用于已知症状但不确定归属、需要改动前的结构化排查、无法直接访问服务器时制定只读诊断方案等场景;若问题已明确属于某个专项技能,或任务是主动监控与审计而非事故响应,则不建议使用。

主要能力:提供症状索引与诊断树,覆盖高 CPU/负载、OOM、磁盘满、服务崩溃、Nginx 502/504、站点变慢、MySQL 问题、SSL 过期或续期失败、备份失败、更新后宕机、无法连接服务器、进程挂起与端口/文件占用、流量未到达与抓包等分支。支持两大家族发行版:Debian/Ubuntu 与 RHEL 系的服务名、日志路径与工具差异,并提示 RHEL 系中 SELinux 常是权限正常却报 403/EACCES/connection refused 的隐藏原因。还包含逐层只读的网络诊断工作流(物理/链路、网络、传输、DNS、防火墙与 ACL),以及可选的 sk-* 便捷脚本,如 sk-capture。

使用方式:先问“症状是什么”,再走 references/diagnosis-tree.md 中对应分支;先做只读快照(如 uptime && free -h && df -h、systemctl list-units --type=service --state=failed、journalctl -p err --since "1 hour ago"、tail /var/log/nginx/error.log),收集证据后再用最省成本的判别性检查验证假设。安装脚本可执行 sudo install-skills-bin linux-troubleshooting。

限制:默认仅使用读取/搜索权限;重启、删除、回滚、包与配置变更、数据库写入、防火墙操作和恢复操作,都必须在证据定位故障模式后获得明确授权。缺少日志、历史、权限、网络探测或复现条件时,只能给出最具体的故障域假设并列出未评估分支,不能因症状暂时消失就关闭事故。诊断阶段不得执行改变状态的命令,也不应通过 setenforce 0 或放宽权限来“测试”。