磁盘故障在dmesg(Linux内核消息缓冲区)中的体现通常包括一系列与磁盘相关的错误、警告和信息性消息。这些消息可能因磁盘类型(如SATA、SCSI、NVMe等)、故障性质(如读写错误、坏道、控制器故障等)以及系统配置的不同而有所差异。
以下是一些可能在dmesg中出现的磁盘故障相关消息示例:
读写错误:
[ 123.456789] sd 2:0:0:0: [sda] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 123.456789] sd 2:0:0:0: [sda] tag#0 Sense Key : Medium Error [current]
[ 123.456789] sd 2:0:0:0: [sda] tag#0 Add. Sense: Unrecovered read error
坏道:
[ 234.567890] sd 3:0:0:0: [sdb] tag#1 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 234.567890] sd 3:0:0:0: [sdb] tag#1 Sense Key : Aborted Command
[ 234.567890] sd 3:0:0:0: [sdb] tag#1 Add. Sense: Uncorrectable error
控制器故障:
[ 345.678901] ata1.00: exception Emask 0x0 SAct 0x10 SErr 0x0 action 0xe frozen
[ 345.678901] ata1.00: irq_stat 0x40000008
[ 345.678901] ata1.00: failed command: READ FPDMA QUEUED
[ 345.678901] ata1.00: cmd 60/08:00:10:00:00/00:00:04:00:00/e0 tag 0 ncq 4096 in
[ 345.678901] res 41/40:00:10:00:00/00:00:04:00:00/e0 Emask 0x9 (media error)
磁盘掉线/重新上线:
[ 456.789012] ata2.00: exception Emask 0x0 SAct 0x800 SErr 0x0 action 0x6 frozen
[ 456.789012] ata2.00: irq_stat 0x40000008
[ 456.789012] ata2.00: failed command: READ FPDMA QUEUED
[ 456.789012] ata2.00: cmd 60/08:00:20:00:00/00:00:08:00:00/e0 tag 0 ncq 8192 in
[ 456.789012] res 41/40:00:20:00:00/00:00:08:00:00/e0 Emask 0x9 (media error)
[ 456.789012] ata2.00: status: { DRDY ERR }
SMART错误:
[ 567.890123] sd 0:0:0:0: [sda] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 567.890123] sd 0:0:0:0: [sda] tag#0 Sense Key : Hardware Error
[ 567.890123] sd 0:0:0:0: [sda] tag#0 Add. Sense: Unknown error
要查看dmesg中的磁盘相关消息,可以在终端中运行以下命令:
dmesg | grep -i disk
或者,你可以使用journalctl命令查看系统日志,其中可能包含更详细的磁盘故障信息:
journalctl -k | grep -i disk
请注意,dmesg输出的信息可能非常庞大,因此建议使用grep等工具进行筛选,以便更快地找到与磁盘故障相关的消息。此外,根据你的系统配置和磁盘类型,可能需要调整上述命令中的关键字以获得更准确的结果。