Linux内核I/O系统报错日志与硬盘故障对应关系

日志信息故障现象描述与硬盘关系
scsi1: ERROR on channel 0, id 7, lun 0, CDB: Read (10) 00 73 fc 62 bf 00 00 80 00
Info fld=0x73fc6326, Current sdi: sense key Medium Error
Additional sense: Unrecovered read error
SMART规范定义“Medium Error”错误是一种不可恢复的错误,可能由于介质的缺陷或记录的数据错误。该错误有别于“Hardware Error”。
出现Medium Error的主要原因是硬盘坏,或者硬盘的数据无法读写。
(1)硬盘扇区坏
或(2)硬盘与磁盘控制器连接信号质量不稳定,导致数据出现异常
mptbase: ioc1: IOCStatus=804b LogInfo=31080000
Originator={PL}, Code={SATA NCQ Fail All Commands After Error}, SubCode(0×0000) 

 

原生指令排序(Native Command Queuing,简称NCQ),原先是改善服务器硬盘存取控制技术,应用在SCSI和SATA 1.0/2.0/3.0接口硬盘读写的加速技术,其接口开启磁盘阵列RAID亦有所提升。透过硬盘固件、硬盘控制器以及操作系统三者的互相配合,改善硬盘内部磁区的读取顺序,可以提高硬盘效能约30%,亦能够轻微减轻硬盘损耗的速率。NCQ对用于服务器上的硬盘的效率提升尤为明显。 

PL:Protocol Layer,指磁盘控制器中的协议层

 

该信息与硬盘是否故障无直接联系
end_request: I/O error, dev sdi, sector 1945920256
EXT2-fs error (device sdi1): read_inode_bitmap: Cannot read inode bitmap – block_group = 222, inode_bitmap = 14547217
EXT2-fs error (device sdi1): ext2_get_inode: unable to read inode block – inode=951895, block=15202501
内核不能从硬盘上的文件系统读取数据。(1)硬盘扇区坏。
或(2)硬盘与磁盘控制器连接信号质量不稳定,导致数据出现异常。
mptbase: ioc1: IOCStatus=8000 LogInfo=31110d00
Originator={PL}, Code={Reset}, SubCode(0x0d00)
mptbase: ioc1: IOCStatus=804b LogInfo=31110d00
Originator={PL}, Code={Reset}, SubCode(0x0d00)
驱动准备让磁盘控制器IOC单元复位,出现该操作原因为驱动发现多次读写硬盘数据失败。
IOCStatus=0×8000
磁盘控制器配置页面处于共享的递归方式。 

IOCStatus=0×8048
尝试读取不存在的超级配置数据。

IOCStatus=0x804b
超级数据序列号由0xffffffff变为0

 

该信息不能作为硬盘故障的依据。打印该信息的原因,与硬盘/磁盘控制器IOC单元/硬盘与控制器之间的链路有关。IOC错误码含义见前面。
mptscsih: ioc1: attempting task abort! (sc=000001007b4cf340)
scsi1 : destination target 8, lun 0
command = Read (10) 00 5f 2a 4d 3f 00 10 00 00
磁盘控制器驱动尝试取消读写任务。本示例代码中,表明取消在target 8,lun 0的读数据任务。该信息与硬盘是否故障无直接联系
mptbase: ioc1: IOCStatus=8048 LogInfo=31130000
Originator={PL}, Code={IO Not Yet Executed}, SubCode(0×0000)
磁盘控制器驱动报告报告当前IOC(I/O Controller)单元状态码该信息与硬盘是否故障无直接联系
mptscsih: ioc1: task abort: SUCCESS (sc=000001007b4cf340)磁盘控制器驱动报告读写任务取消成功该信息与硬盘是否故障无直接联系
mptscsih: ioc1: attempting target reset!
mptscsih: ioc1: attempting bus reset! (sc=000001007b4cf340)
mptscsih: ioc1: Attempting host reset! (sc=000001007b4cf340)
mptbase: Initiating ioc1 recovery
磁盘控制器驱动尝试复位target/bus/host,并重新恢复IOC(I/O Controller)单元该信息不能作为硬盘故障的依据。打印该信息的原因,与硬盘/磁盘控制器IOC单元/硬盘与控制器之间的链路有关。
scsi: Device offlined – not ready after error recovery: host 1 channel 0 id 8 lun 0硬盘offline,硬盘的位置为host 1 channel 0 id 8 lun 0硬盘处于故障状态或丢失
SCSI error : <1 0 8 0> return code = 0×10000
end_request: I/O error, dev sdj, sector 1596607807
scsi1 (8:0): rejecting I/O to offline device
SCSI层报告在host 1 channel 0 id 8 lun 0设备上读写错误,返回码为0×10000,表明设备已不在位。硬盘处于故障状态或丢失
mptsas: ioc1: attaching sata device, channel 0, id 11, lun 0, phy 0系统新加入新的硬盘,硬盘所在位置为phy 0,即第一个物理槽位。插入新的硬盘
mptsas: ioc0: removing sata device, channel 0, id 21, phy 2从系统中拔掉一块硬盘,硬盘对应的物理位置为phy 2,即第3个物理槽位。拔除一块硬盘
Remounting filesystem read-only文件系统变为只读,原因为文件系统遭到破坏与硬盘是否故障无直接关系

注:本文以使用LSISAS1064E/1068E SAS控制器服务器Linux内核日志信息为例,即磁盘控制器驱动为mptsas。

本文转自 guowang327 51CTO博客,原文链接:http://blog.51cto.com/guowang327/1961089,如需转载请自行联系原作者

点赞