https://www.nodeseek.com/post-397753-1 这个帖子脚本不错,问老板似乎很忙,搜了下似乎找不到这种测试脚本,让ai搓了个:

https://github.com/Dxdmk/dx/tree/main/shell/test

Server Hardware Info Report Script (服务器硬件信息报告脚本)

这是一个功能强大的Bash脚本,用于检测物理服务器或VPS的详细硬件信息,并生成一份美观、易于阅读的报告。它特别适合服务器管理员、运维工程师以及所有需要在Linux环境下快速了解硬件配置的用户。


✨ 功能特性 (Features)

  • 全面的硬件检测:
    • 系统: 主机名、操作系统版本、内核、运行时间。
    • 处理器: 型号、核心数、线程数、频率、缓存、实时使用率。
    • 内存: 总量、已用、可用,并能详细列出每个物理内存条的型号、制造商、频率、序列号等。
    • 硬盘: 磁盘分区使用情况,并能深入检测每块物理硬盘的型号、容量、SMART健康状态、通电时间、总读写量、磨损度及温度。
    • RAID: 检测硬件RAID控制器。
    • 网络: 列出所有物理网卡的型号、状态、IP地址(IPv4/IPv6)、MAC地址、速度和实时流量。
    • 显卡: 检测VGA兼容的图形控制器。
    • 主板: 显示主板和BIOS的制造商、型号及版本。
  • 美观的报告格式: 仿 neofetch 风格,使用box-drawing字符将信息分块展示,清晰直观。
  • 智能依赖处理: 脚本会自动检测运行所需的命令。从v1.2.0版本开始,如果检测到依赖缺失,它会提示用户并可自动安装,极大提升了便利性。
  • 跨发行版支持: 自动检测并支持主流的Linux发行版,如 Debian, Ubuntu, CentOS, RHEL, Fedora 等。

🚀 使用方法 (Usage)

完全版本(自动安装依赖)

您只需要在您的服务器上以 root 权限运行一行命令即可。

通过 wget 运行:

bash <(curl -sL https://raw.githubusercontent.com/Dxdmk/dx/refs/heads/main/shell/test/test.sh)

通过 curl 运行:

bash <(wget -qO- https://raw.githubusercontent.com/Dxdmk/dx/refs/heads/main/shell/test/test.sh)

精简版本(无依赖)

通过 wget 运行:

bash <(curl -sL https://raw.githubusercontent.com/Dxdmk/dx/refs/heads/main/shell/test/test2.sh)

通过 curl 运行:

bash <(wget -qO- https://raw.githubusercontent.com/Dxdmk/dx/refs/heads/main/shell/test/test2.sh)

📋 报告预览 (Preview)

════════════════════════════════════════════════════════════════════════════════                                    系统硬件信息报告                                    ════════════════════════════════════════════════════════════════════════════════┌─ 系统信息├──────│ 主机名              : 107-174-xxxx-host│ 操作系统            : Debian GNU/Linux 12 (bookworm)│ 内核版本            : 6.1.0-22-amd64│ 运行时间            : 32 minutes└──────────────────────────────────────────────────┌─ 处理器信息├───────│ 型号                : Intel(R) Xeon(R) CPU E3-1240 v3 @ 3.40GHz│ 核心数              : 4│ 线程数              : 8│ 频率                : 3436.250 MHz│ 缓存                : 8192 KB│ 使用率              : 0.0%└──────────────────────────────────────────────────┌─ 内存信息├──────│ 总计                : 15.58 GB│ 已用                : 423Mi│ 可用                : 15.16 GB││ Memory Modules:├────────────────────────────────────────────────────────────────────────────────────────────────────┤│ │ 大小     │ 类型   │ 频率         │ 制造商       │ 序列号          │ 型号                 │├────────────────────────────────────────────────────────────────────────────────────────────────────┤│ │ 4 GB     │ DDR3   │ 1600 MT/s    │ Hynix/Hyunda │ 805D3F91        │ HMT451U7BFR8A-PB     ││ │ 4 GB     │ DDR3   │ 1600 MT/s    │ Hynix/Hyunda │ 805D3EED        │ HMT451U7BFR8A-PB     │└────────────────────────────────────────────────────────────────────────────────────────────────────┘└──────────────────────────────────────────────────┌─ 硬盘信息├──────│ /dev/sda1       1.8T  1.2G  1.7T   1% /││ Physical Disks Details:││ ═══ /dev/sda ═══│   Basic Info:        1.7T SAMSUNG MZ7LM1T9HMJP-00003│   SMART状态:         PASSED│   通电时间:           32680 hours│   Data Transfer Statistics:│     总读取量:         10.690 TB (SMART硬件累计)│     总写入量:         61.603 TB (SMART硬件累计)│   温度:               46°C└──────────────────────────────────────────────────... (更多信息)

📜 版本历史 (Changelog)

v1.2.0 - 2025-07-19 (最新版)

  • [功能] 新增依赖自动安装:
    • 脚本在启动时会检查所有必需的命令。
    • 如果发现依赖缺失,会提示用户并在倒计时后,根据当前系统(Debian/Ubuntu/CentOS等)调用相应的包管理器(apt-get, dnf, yum)进行自动安装。
    • 安装后会进行二次验证,确保所有依赖都已成功安装。

v1.1.0

  • [修复] 改进硬件兼容性:
    • CPU: 修正了在AMD Ryzen等平台上,处理器型号、线程数和频率解析错误的问题。
    • 内存: 重写了dmidecode的解析逻辑,使其能更稳定地识别不同主板和DMI布局下的物理内存条信息。
    • 硬盘: 修复了numfmt命令在某些系统版本上因不兼容的格式化参数而报错的问题,确保硬盘容量能正确显示。
    • 网络: 优化了IPv6地址的显示,当一个网卡拥有多个IPv6地址时,会自动换行对齐,使输出更整洁。

v1.0.0

  • [功能] 初始版本:
    • 实现了所有核心信息的检测与报告生成。
    • 包含了美观的格式化输出。
    • 实现了手动的依赖检查,如果缺少依赖会提示用户手动安装。

🛠️ 依赖 (Dependencies)

为了获取详尽的硬件信息,本脚本依赖于以下命令行工具。在 v1.2.0 及更高版本中,脚本会尝试自动安装它们。

  • coreutils
  • procps
  • util-linux
  • dmidecode
  • smartmontools (smartctl)
  • pciutils (lspci)
  • ethtool
  • iproute2 (ip)
  • lshw
  • jq