从哪里获取有关故障磁盘的信息?

从哪里获取有关故障磁盘的信息?

我的服务器内有一个磁盘发生故障,我正在尝试找出它是哪一个。我没有列出我应该列出的所有序列号。我计划这样做,但与此同时,我可以从正在运行的系统中提取任何其他信息吗?

WARNING: Your hard drive is failing
Device: /dev/sdc [SAT], unable to open device

智能控制结果:

$smartctl --all /dev/sdc
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.10.0-514.2.2.el7.x86_64] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

Smartctl open device: /dev/sdc failed: No such device

由于该磁盘已不再在线,我还能在哪里查询其信息吗?

更新

grep dmesg 获取 sdc:

$dmesg | grep sdc
[   12.074540] sd 0:0:2:0: [sdc] 5860533168 512-byte logical blocks: (3.00 TB/2.72 TiB)
[   12.074542] sd 0:0:2:0: [sdc] 4096-byte physical blocks
[   12.083407] sd 0:0:2:0: [sdc] Write Protect is off
[   12.083410] sd 0:0:2:0: [sdc] Mode Sense: 7f 00 10 08
[   12.084143] sd 0:0:2:0: [sdc] Write cache: enabled, read cache: enabled, supports DPO and FUA
[   12.798801]  sdc: sdc1 sdc9
[   12.807266] sd 0:0:2:0: [sdc] Attached SCSI disk
[716178.562173] sd 0:0:2:0: [sdc] Synchronizing SCSI cache
[716178.562252] sd 0:0:2:0: [sdc] Synchronize Cache(10) failed: Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK

然后在 fdisk 中查找这些驱动器:

$fdisk -l 2>/dev/null | egrep -i '^disk /dev+.' | grep 3.00 | sort
Disk /dev/sda: 3000.6 GB, 3000592982016 bytes, 5860533168 sectors
Disk /dev/sdd: 3000.6 GB, 3000592982016 bytes, 5860533168 sectors
Disk /dev/sds: 3000.6 GB, 3000592982016 bytes, 5860533168 sectors

我这个系统里只有三块3TB的磁盘,而且都是在线的。然而,最后一个一直位于 /dev/sds 的 fdisk 列表的底部。如果磁盘掉线然后重新上线,是否会为其重新分配相同的 dev id 还是新的 dev id?这可能就是驱动。

答案1

如果您的驱动器有单独的 LED,您可以生成一些磁盘活动以使 LED 亮起:

dd if=/dev/sdb of=/dev/null 

并在响应磁盘上尝试此操作,通过排除过程找到坏磁盘。

相关内容