机房服务器硬件检测工具,内存硬盘健康检测

机房服务器长期运行,内存和硬盘是最容易出问题的部件。
本文面向零基础运维,介绍如何使用 memtester 检测内存、smartctl 检测硬盘健康,并给出具体命令和结果判断。
读完你能独立完成一次硬件巡检,提前发现隐患。

工具准备与安装

大多数 Linux 发行版默认没有 memtester 和 smartmontools,需要手动安装。

  • Debian/Ubuntu:sudo apt update && sudo apt install memtester smartmontools -y
  • CentOS/RHEL:sudo yum install memtester smartmontools -y

安装完成后,用 memtester --version 和 smartctl --version 验证是否成功。

内存健康检测:memtester 实战

memtester 通过分配指定大小的内存并反复写入、读取、比对来发现硬件错误。
建议在业务低峰期执行,避免影响性能。

步骤:

  1. 查看内存总量:free -h,假设显示 32G。
  2. 分配略小于总量的内存进行测试,例如 30G,避免触发 OOM。
  3. 执行命令:sudo memtester 30G 1。其中 1 表示循环次数,测试一次即可。
  4. 观察输出,如果最后显示 Done 且没有 FAILURE,说明内存基本正常。

注意: 测试大内存耗时较长,30G 可能需要几十分钟,建议使用 screen 或 nohup 防止 SSH 断开。

如果出现 FAILURE: 0x... 则说明内存有坏块,需要更换内存条。

硬盘健康检测:smartctl 关键指标

smartctl 能读取硬盘的 S.M.A.R.T. 信息,提前预警故障。

基本用法:

  • 查看硬盘列表:lsblk 或 fdisk -l,找到设备名如 /dev/sda。
  • 开启 SMART:sudo smartctl -s on /dev/sda。
  • 查看健康摘要:sudo smartctl -H /dev/sda,正常会显示 PASSED。
  • 查看详细属性:sudo smartctl -A /dev/sda。

重点关注的属性:

  • Reallocated_Sector_Ct:重映射扇区数,大于 0 需警惕。
  • Current_Pending_Sector:待映射扇区数,大于 0 表示有不稳定扇区。
  • Offline_Uncorrectable:离线不可纠正错误,大于 0 说明有坏道。
  • Raw_Read_Error_Rate:读取错误率,持续增长可能故障。

如果以上数值非零且持续增加,建议尽快备份数据并更换硬盘。

常见报错与避坑指南

1. memtester 报 “Cannot allocate memory”
原因:分配内存超过可用量。解决:减小测试大小,或先停止占用内存的服务。

2. smartctl 报 “Smartctl open device: /dev/sda failed: Permission denied”
原因:未使用 root 权限。解决:命令前加 sudo。

3. smartctl 无法识别 USB 硬盘
原因:USB 桥接芯片可能不支持透传。解决:尝试加 -d sat 参数,如 sudo smartctl -d sat -H /dev/sdb。

4. 测试期间服务器负载过高
memtester 会占满 CPU 和内存,务必在业务空闲时进行,并设置好监控告警。

验证与定期巡检建议

执行完检测后,建议记录结果并与上次对比。

  • 内存:memtester 通过则正常,若失败需更换内存。
  • 硬盘:smartctl 的 PASSED 且关键属性无增长,可继续使用;否则安排更换。

定期巡检命令示例:

sudo smartctl -H /dev/sda | grep "SMART overall-health"
sudo smartctl -A /dev/sda | egrep "Reallocated_Sector_Ct|Current_Pending_Sector|Offline_Uncorrectable"

建议每月执行一次,并保存输出。
对于关键业务服务器,可结合监控系统(如 Zabbix)自动采集 SMART 指标。

常见疑问

内存检测需要停机吗?
不需要,但会占用大量内存和 CPU,建议在业务低峰期进行,并确保有足够剩余内存。

硬盘检测会影响读写吗?
smartctl 只读取信息,不影响正常读写。但不要在执行 smartctl -t long 自检时进行高负载操作,以免延长自检时间。

SSD 和机械硬盘的检测有区别吗?
基本命令相同,但 SSD 需额外关注 Wear_Leveling_Count、Media_Wearout_Indicator 等寿命指标。

检测到坏道怎么办?
立即备份重要数据,然后使用 badblocks 进一步确认,并计划更换硬盘。不要继续写入,以免扩散。

按照以上步骤,你可以用 memtester 和 smartctl 完成机房服务器硬件检测,及时发现内存和硬盘的健康问题。
建议将检测命令写成脚本,定期执行并记录结果。

分享到:
上一篇
服务器宕机事件故障报告模板,事故复盘
下一篇
服务器硬盘SMART信息查看,预判硬盘损坏
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意