科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件Unix系统下硬盘的故障排除

Unix系统下硬盘的故障排除

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在计算机系统中,硬盘是一个精密的机械设备,是我们存储数据的最主要场所。下面,我以Solaris2.x为例,就部分硬盘故障在Unix系统下的出错信息及诊断情况介绍如下。

2008年3月18日

关键字: 读写 unix 电路板 硬盘故障 故障排除 Linux

  • 评论
  • 分享微博
  • 分享邮件

  Unix系统下硬盘的故障排除

  在计算机系统中,硬盘是一个精密的机械设备,是我们存储数据的最主要场所。其结构主要分为外部结构和内部结构两大部分。外部结构主要由接口、控制电路板等组成,其中控制电路板充当了硬盘大脑的角色,控制着硬盘的正常动作。内部结构主要由磁头组件、磁头驱动机构、磁盘片等组成。由于硬盘内部结构的精密性及加电时高速转动的特性,硬盘所要求的密闭性能很高,所以在处理硬盘故障时,是不能随意打开硬盘的。应针对不同的故障信息及类型,作出相应的诊断及处理。下面,我以Solaris2.x为例,就部分硬盘故障在Unix系统下的出错信息及诊断情况介绍如下:

  硬盘控制电路板故障

  系统出现以下信息:

  unix : WARNING : /pci@1f,4000/scsi@3 (glm0)

  unix : Connected command timeout for Target 6.0

  unix : WARNING:ID[SUNWpd.glm.cmd_timeout.b017]

  unix : WARNING: /pci@1f,4000/scsi@3 cglm0):

  unix : Target 6 reducing sync. Transfer rate

  unix : Scsi transport failed: reason reset : retrying command:

  unix : Disconnected tagged cmd(s) <1> timeout for Target 0.0

  针对以上出现的信息,我们首先使用# init 0命令对系统进行了正常关闭,然后在监控状态下,使用probe-scsi-all命令,对SCSI设备进行了多次检测,在多数情况下不能检测到该硬盘,初步判断为SCSI传输错误。为排除是否为主板SCSI接口故障,我们更换了另一块正常硬盘,检测结果正常,因此说明主板SCSI接口无故障,应是硬盘外部的控制电路板故障,为挽救该硬盘的数据,我们找了一块同一型号的正常硬盘,小心地将其外部的控制电路板拆下,更换到故障硬盘上。重新开机启动,系统正常,数据完整,避免了数据灾难的发生。

  硬盘引导块故障

  系统出现如下信息:

  WARNING:/sbus@1f,0/SUNW,fas@e,8800000/sd@1,0(sd1)

  Error for Command : load/start/stop

  Error Level: Retryable

  Requested Block: 0 Error Block : 0

  Vendor:SEAGATE Serial Number : 00000000

  Sense Key : Hardware Error

  ASC : 0x2 (no seek complete) , ASCQ : 0x0 , FRU : 0x1

  当系统出现以上信息后,不能正常启动。为此,我们使用系统光盘启动系统,进入单用户状态,首先使用# format命令,发现系统已不能识别磁盘类型,于是我们对磁盘的各类参数根据磁盘型号重新进行定义,并格式化硬盘,重新分区,创建文件系统,多数情况下硬盘得以修复,可再利用。但是,当引导块故障严重时,用以上办法处理,有时也是无法挽救硬盘的。

  硬盘读写故障

  当用户读写文件或做文件系统检查时,系统出现如下信息:

  CANNOT SEEK:BLK 1140887

  CNNNOT READ:BLK 1140887

  THE FOLLOWING SECTORS COULD NOT BE READ:1140887 1160992......

  一旦出现以上信息,读写操作都将中断。以前,我通常认为出现这种情况时,数据不可恢复,只能重做文件系统,损失数据,挽救硬盘。但通过对文件系统认识的加深,发现超级块错误导致了磁盘的读写错误,为此,我们通过对主超级块的恢复操作,解决了磁盘的读写错误。首先使用# fsck -o p /dev/dsk/c0t0d0s7命令对文件系统进行修饰,然后使用# newfs -N /dev/rdsk/c0t0d0s7命令显示磁盘的超级块备份,最后使用#fsck -F ufs -o b=57632 /dev/rdsk/c0t0d0s7命令对主超级块进行恢复,从而使硬盘的读写故障得以修复,用户的数据得以挽救。  

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章