插件窝 干货文章 linux怎么查看硬件错误

linux怎么查看硬件错误

错误 sudo 查看 内存 877    来源:    2025-05-03

在Linux系统中,可以通过多种方式查看硬件错误或故障信息。以下是常用的方法和工具:


1. 使用 dmesg 查看内核日志

内核会记录硬件相关的错误和警告信息,通过 dmesg 命令可以查看:

sudo dmesg -T | grep -i "error\|fail\|warn\|hardware"
  • -T:显示人类可读的时间戳。
  • grep 过滤关键字(如 error、fail、warn 等)。

2. 检查系统日志 (/var/log)

系统日志文件可能包含硬件错误信息:

# 查看系统日志
sudo cat /var/log/syslog | grep -i hardware
sudo cat /var/log/kern.log | grep -i error

# 使用 journalctl(Systemd 系统)
sudo journalctl -p 3 -xb
  • -p 3:过滤优先级为“错误”及以上的日志。
  • -xb:显示详细信息并分页。

3. 使用 smartctl 检测硬盘健康状态

如果怀疑硬盘问题,使用 SMART 工具:

# 安装 smartmontools
sudo apt install smartmontools  # Debian/Ubuntu
sudo yum install smartmontools  # RHEL/CentOS

# 查看硬盘 SMART 信息
sudo smartctl -a /dev/sda
  • 检查 SMART overall-health 和错误日志(Errors Log)。

4. 内存检测工具 (memtest86+)

内存错误可能导致系统不稳定: - 重启后从 GRUB 菜单选择 Memtest86+ 运行内存测试。 - 或手动安装并运行: bash sudo apt install memtest86+ # Debian/Ubuntu sudo memtester 1G 5 # 测试 1GB 内存,循环 5 次


5. 查看 CPU 和温度信息

# CPU 信息
cat /proc/cpuinfo

# 温度传感器(需安装 lm-sensors)
sudo apt install lm-sensors   # Debian/Ubuntu
sudo sensors-detect           # 检测硬件传感器
sensors                       # 显示温度/电压

6. PCI 设备错误 (lspci)

lspci -vvv                    # 查看 PCI 设备详细信息
lspci -vvv | grep -i "error"  # 过滤错误

7. RAID 阵列状态(如有)

cat /proc/mdstat              # 软件 RAID 状态
sudo megacli -PDList -aAll     # MegaRAID 工具(需安装)

8. 硬件厂商工具

  • Dell 服务器omreport(通过 OpenManage)。
  • HP 服务器hpasmclihplog
  • IBM/Lenovoipmitool

9. 使用 edac-utils(内存和 PCIe 错误)

sudo apt install edac-utils    # Debian/Ubuntu
sudo edac-util --status        # 查看纠错内存错误计数

常见硬件错误场景

  1. 硬盘故障:SMART 错误、I/O 超时(dmesg 中的 I/O error)。
  2. 内存故障dmesg 中的 ECC errormemtest86+ 报错。
  3. CPU/过热sensors 显示高温或 dmesg 中的 thermal throttling
  4. PCIe 设备lspcidmesg 中的 PCIe Bus Error

通过以上工具组合,可以快速定位大多数硬件问题。如果是服务器或企业环境,建议结合 IPMI(如 ipmitool)监控带外管理日志。