当前位置:首页>Linux>化繁为简:一款极简、高颜值的 Linux 自动化巡检工具

化繁为简:一款极简、高颜值的 Linux 自动化巡检工具

  • 2026-10-11 06:11:54
化繁为简:一款极简、高颜值的 Linux 自动化巡检工具
GEEK-NET
STATUS:ONLINE// NODE: 0x24
万物开源,皆可部署|Connecting Intelligence.

对于运维工程师、SRE 或是自己折腾服务器/NAS 的极客朋友来说,定期对服务器进行“体检”是必不可少的日常工作。

但在实际操作中,我们常常遇到以下尴尬:

  • 环境问题: 想用 Python 写巡检?结果老旧服务器的 Python 2.6/2.7,新系统的 Python 3.12,各种库版本依赖报错让人抓狂;
  • 发行版差异: CentOS 7 用 systemctl / yum,CentOS 6 走 chkconfig,Ubuntu 用 apt,Alpine 用 apk,脚本跨系统跑起来各种报错;
  • 报告低效难看: 手动敲一堆 top、df -h、free -m、dmesg,然后再复制粘贴到 Word/Excel 调整排版,费时费力;
  • 漏检风险: 忘记查 Inode 导致磁盘满、忘看 SSL 证书到期、没注意日志里的 OOM 隐患……

为了解决这些痛点,我今天推荐一款面向运维与 SRE 的 **Linux 一键巡检脚本——Linux_Auto_Inspection**。

为什么推荐Linux_Auto_Inspection

1. 纯 Bash 单文件,零依赖开箱即用

脚本采用 纯原生 Bash 编写(仅需 Bash 4.0+),不需要安装任何 Python、PowerCLI 或第三方包。不管是刚开的干净 VPS、内网隔离服务器,还是 Alpine 轻量容器环境,拉下来就能跑!

2. 跨 30+ 款主流发行版

自动吃透了主流 Linux 的异构差异:

  • RHEL 系: CentOS, RHEL, Rocky, AlmaLinux, Oracle Linux, Fedora, Amazon Linux
  • Debian 系: Ubuntu, Debian, Kali, Mint, Deepin, Raspbian
  • 国产/企业 OS: openEuler, Kylin(麒麟), UOS, Anolis(龙蜥), TencentOS
  • 其他: SUSE / openSUSE, Arch / Manjaro, Alpine Linux 等

3. 极速扫描(8~15 秒出结果)

经过重构优化,常规巡检从过去的 1 分钟缩短至 8~15 秒 左右,同时对系统资源占用极低,绝不影响生产业务。

4. 工程师风“高颜值” HTML 报告

生成的报告摈弃了浮夸的视觉,采用干净清爽的工程师/Token Insight 风格:

  • 侧边栏 17 章节目录导航
  • 异常告警高亮标记(Critical / Warning 徽章)
  • 支持一键筛选、快速搜索与响应式布局
  • 支持直接导出、邮件转发或浏览器打印归档

17 大巡检维度,60+ 检查项全覆盖

脚本从底层硬件到上层服务进行全方位“体检”,涵盖以下 17 大类核心指标:

巡检维度
涵盖内容与指令
1. 主机基本信息
系统版本、内核、架构、运行时间、CPU 型号、虚拟化类型
2. CPU 与负载
使用率、1/5/15 min 负载均衡指标
3. 内存与 Swap
物理内存使用率、Swap 占用、Buffers/Cached 细节
4. 磁盘与 Inode
挂载点使用率、Inode 使用率(预防文件数爆满)
5. 磁盘 I/O 性能
读写吞吐、IOPS、 await 延迟、Util 繁忙度
6. 大文件排查
扫描大于 100M 的文件及最近 7 天突变的大日志
7. 文件描述符
FD 当前使用数、系统最大限制数排查
8. 网络状态
IP、网卡流量、TCP 状态统计(ESTABLISHED/TIME_WAIT 等)、路由表
9. 异常进程
僵尸进程(Zombie)、D 状态(不可中断睡眠)进程、高 CPU/内存占用TopN
10. 安全基线
SSH 配置安全、空密码账户、SUID 提权文件、最近登录异常
11. 定时任务
系统与用户 crontab、/etc/cron.d/ 隐藏任务扫描
12. 关键服务
自适应识别 systemd / sysvinit / chkconfig 状态
13. 容器引擎Docker
 与 Podman 容器运行状态、镜像资源占用
14. 内核参数
sysctl 核心参数(如 net.ipv4.ip_forward、tcp_tw_reuse 等)
15. 系统更新
自动识别 yum/dnf/apt/zypper/pacman/apk 待更新包
16. 日志与 OOM
dmesg / journalctl 异常过滤、内存溢出(OOM-killer)历史记录
17. NTP 与证书
时间同步状态(chrony/ntp/timedatectl)、SSL 证书过期剩余天数

极速上手:一行命令就可以跑起来

1. 快速执行

在目标 Linux 服务器上,直接执行以下任意一种方式即可:

# 方式 1:一键流(curl 拉取直接跑)curl -sL https://raw.githubusercontent.com/Aidan-996/Linux_Auto_Inspection/main/linux_inspect.sh | bash# 方式 2:单文件下载执行(推荐)wget -O linux_inspect.sh https://raw.githubusercontent.com/Aidan-996/Linux_Auto_Inspection/main/linux_inspect.shchmod +x linux_inspect.sh./linux_inspect.sh

2. 常用参数设置

如果你是在隔离内网或磁盘极大的生产环境中运行,可以使用参数进一步提速:

# 极速模式:跳过大文件扫描、系统更新检查与 SSL 检查(适合内网环境)./linux_inspect.sh --fast# 自定义报告输出路径./linux_inspect.sh -o /data/reports/server_check.html# 输出 JSON 格式(方便集成至自动化运维平台/CMDB)./linux_inspect.sh -f json

小贴士: 如果脚本在 Windows 下编辑后上传到 Linux 提示 syntax error,可用以下命令一键修好换行符:sed -i 's/\r$//' linux_inspect.sh

生产级健壮性:细微之处见真章

写一个简单的 Shell 脚本不难,但写一个能跑在几千台不同版本服务器上的脚本极难。Linux_Auto_Inspection 在细节上做了大量降级逻辑(Fallback):

  1. 服务管理器自适应: 优先走 systemctl,不存在则自动降级到 service,再降级到 /etc/init.d/;
  2. 多源 OS 识别: 依次扫描 /etc/os-release -> kylin-release -> redhat-release -> debian_version 等 10 多种标识文件;
  3. NTP 时间源全覆盖: 兼容 chronyc、ntpq、ntpstat、timedatectl 及 ntpctl,任一接口响应即识别;
  4. 防火墙五套并查: 同步检测 firewalld、ufw、nftables、iptables 及 SuSEfirewall2。

无论你是需要对几十上百台服务器进行批量体检的 SRE / 运维工程师,还是管理自己家庭实验室、NAS 服务器的 折腾玩家,Linux_Auto_Inspection 都能帮你节省大量重复体力劳动,输出专业漂亮的巡检报告。

GitHub 地址:/Aidan-996/Linux_Auto_Inspection

往期推荐 · RECENT NODES
↘ 网络监控:一款基于时序数据库的开源监控告警系统
↘ 开源部署:一款基于Java 实现的编码智能体
网域极客GEEK-NET
CONNECTING INTELLIGENCE.
↘ 探索互联,点亮推荐  ❤
[ JOIN CLOUD ]
云端同步中...

求点赞

求分享

求喜欢

最新文章

随机文章