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

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:
日志信息 故障现象描述 与硬盘关系
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,如需转载请自行联系原作者

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
11天前
|
算法 Linux 调度
深入理解Linux内核调度器:从基础到优化####
本文旨在通过剖析Linux操作系统的心脏——内核调度器,为读者揭开其高效管理CPU资源的神秘面纱。不同于传统的摘要概述,本文将直接以一段精简代码片段作为引子,展示一个简化版的任务调度逻辑,随后逐步深入,详细探讨Linux内核调度器的工作原理、关键数据结构、调度算法演变以及性能调优策略,旨在为开发者与系统管理员提供一份实用的技术指南。 ####
47 4
|
12天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
49 3
|
12天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
37 2
|
6天前
|
算法 Linux 开发者
Linux内核中的锁机制:保障并发控制的艺术####
本文深入探讨了Linux操作系统内核中实现的多种锁机制,包括自旋锁、互斥锁、读写锁等,旨在揭示这些同步原语如何高效地解决资源竞争问题,保证系统的稳定性和性能。通过分析不同锁机制的工作原理及应用场景,本文为开发者提供了在高并发环境下进行有效并发控制的实用指南。 ####
|
6天前
|
Ubuntu Linux 网络安全
linux系统ubuntu中在命令行中打开图形界面的文件夹
在Ubuntu系统中,通过命令行打开图形界面的文件夹是一个高效且实用的操作。无论是使用Nautilus、Dolphin还是Thunar,都可以根据具体桌面环境选择合适的文件管理器。通过上述命令和方法,可以简化日常工作,提高效率。同时,解决权限问题和图形界面问题也能确保操作的顺利进行。掌握这些技巧,可以使Linux操作更加便捷和灵活。
14 3
|
12天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
44 3
|
6月前
|
缓存 Ubuntu 网络协议
Linux系统编程之文件I/O函数的使用:介绍文件I/O函数的基本概念、用法和实现方式
Linux系统编程之文件I/O函数的使用:介绍文件I/O函数的基本概念、用法和实现方式
110 1
|
4月前
|
小程序 Linux
【编程小实验】利用Linux fork()与文件I/O:父进程与子进程协同实现高效cp命令(前半文件与后半文件并行复制)
这个小程序是在文件IO的基础上去结合父子进程的一个使用,利用父子进程相互独立的特点实现对数据不同的操作
107 2
|
Linux
Linux系统应用编程 --- 文件I/O实现输出重定向
Linux系统应用编程 --- 文件I/O实现输出重定向
68 0
|
Linux API
Linux系统应用编程 --- 文件I/O
Linux系统应用编程 --- 文件I/O
91 0
下一篇
无影云桌面