Linux
這個 raid1 軟體陣列有故障嗎?(媽媽)
長版:我正在執行帶有軟體 raid1 (mdadm) 的 Red Hat Enterprise Linux 5 (REHL5) 機器。
前幾天我去備份了一些mysql數據,突然就登錄不上機器了。我輸入了一個使用者名來登錄,然後它就會坐在那裡。如果按下控制序列,它們將出現在螢幕上,但永遠不會登錄。它也沒有響應 ctrl+alt+delete。所以我做了一個硬關機。
我重新啟動它並通過以下方式監視 raid1 陣列:
mdadm --detail /dev/md1
該數組保存根掛載點。
它開始重新同步陣列。我不確定這是因為墜機還是只是因為我硬掉電了。不管怎樣,我讓它完成:
[f@mysqldatanode ~]# mdadm --detail /dev/md1 /dev/md1: Version : 00.90.03 Creation Time : Thu Apr 19 15:28:52 2007 Raid Level : raid1 Array Size : 479893568 (457.66 GiB 491.41 GB) Device Size : 479893568 (457.66 GiB 491.41 GB) Raid Devices : 2 Total Devices : 2 Preferred Minor : 1 Persistence : Superblock is persistent Update Time : Fri Dec 25 10:03:50 2009 State : clean Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 UUID : ab4849de:1f4f41c4:defd01e8:a4979ca6 Events : 0.78 Number Major Minor RaidDevice State 0 8 2 0 active sync /dev/sda2 1 8 18 1 active sync /dev/sdb2
我查看了一些日誌 (/var/log/messages*),發現了幾條如下所示的消息,表明硬碟驅動器出現故障:
Dec 21 11:39:47 localhost kernel: sd 0:0:1:0: SCSI error: return code = 0x08000002 Dec 21 11:39:47 localhost kernel: sdb: Current: sense key: Medium Error Dec 21 11:39:47 localhost kernel: Additional sense: Unrecovered read error Dec 21 11:39:47 localhost kernel: Info fld=0x3348912 Dec 21 11:39:47 localhost kernel: end_request: I/O error, dev sdb, sector 53774610 Dec 21 11:39:47 localhost kernel: raid1:md1: read error corrected (8 sectors at 53565760 on sdb2) Dec 21 11:39:48 localhost kernel: raid1: sdb2: redirecting sector 53565648 to another mirror
因此,我嘗試尋找壞塊,並以同樣的方式再次鎖定。
[f@mysqldatanode ~]# badblocks -s /dev/md1 Checking for bad blocks (read-only test): 0/ 479893568
那麼我應該如何評估兩個驅動器的健康狀況呢?由於有問題的陣列包含根掛載點,我是否需要將它們移動到另一台機器上來分析它們?
您可以通過 mdadm 使 /dev/sdb 設備故障(最好確保您使整個設備故障,即所有執行它的 mds)然後檢查它是否有錯誤,但根據您的描述,您最好更換設備.
我的 ide 設備經常出現故障,我一直在重新添加被拒絕的設備,直到最終電腦開始像你描述的那樣掛起。更換故障設備解決了問題。
無論哪種情況,您都應該盡快進行備份。