在注意到我们的虚拟根服务器(2 x 1 TB RAID 1 子集)负载很高后,我在 /var/log/messages(CentOS)中发现了这些消息:
kernel: ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
kernel: ata3.00: failed command: WRITE DMA
kernel: ata3.00: cmd ca/00:10:e0:1b:01/00:00:00:00:00/e1 tag 18 dma 8192 out
kernel: res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
kernel: ata3.00: status: { DRDY }
kernel: ata3: hard resetting link
kernel: Clocksource tsc unstable (delta = -25761696872 ns)
kernel: ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
kernel: ata3.00: configured for UDMA/100
kernel: ata3.00: device reported invalid CHS sector 0
kernel: ata3: EH complete
有人能解释一下吗?这是一个严重的硬盘问题还是其他问题?我如何检查虚拟硬盘的运行状况(没有 SMART 功能)?
答案1
磁盘没有及时响应并被操作系统重置,这可能意味着很多事情,但最常见的两种情况是:
- 介质错误 - 磁盘上的某些位置无法读取或写入
- 链接错误--电缆损坏
此特定错误,如果之前没有其他错误或延迟增加,可能表示存在媒体错误。您可以使用 smartctl 查看智能计数器中是否存在 CRC 错误。
如果是介质错误,那么磁盘就会出现问题,因为失败的命令是写入。通常写入不会因介质错误而失败,而是稍后的读取失败。可能是因为之前的读取花费的时间太长,写入因超时而失败。我也见过这种情况。
您还应该注意到,链接已重新协商为 1.5 Gbps,如果这是第一次故障,则说明您有链接问题,如果这是第三次或更多次此类故障,则这表明我在 Linux 中看到了不良行为,即使故障不是链接问题而是媒体错误,它也会尝试以降低的速度缓解重置。
行动项目:
- 智能检查 CRC 错误
- 检查过去犯了多少错误
- 如果你想恢复 3Gbps 速度,请重启
- 检查日志中是否有“由于过多错误而禁用 NCQ”消息,这可能解释了磁盘速度变慢,但不能解释磁盘问题本身
- 确保你有备份,因为你的磁盘很可能出现故障