RAIDアレイのトラブルシューティング方法を教えてください。


8

今朝、RAIDアレイにチェックインしたところ、次のようになりました。

$ cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md1 : active raid1 sdc7[0]
      238340224 blocks [2/1] [U_]

md0 : active raid1 sdc6[0]
      244139648 blocks [2/1] [U_]

md127 : active raid1 sdc3[0]
      390628416 blocks [2/1] [U_]

unused devices: <none>
$

私の考えでは、これは私のアレイの1つのディスクが故障していることを意味します、これは本当ですか?

今後、適切なトラブルシューティングを行うにはどうすればよいですか?私の/etc/mdadm/mdadm.confように見えます:

$ cat /etc/mdadm/mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays
ARRAY /dev/md127 UUID=124cd4a5:2965955f:cd707cc0:bc3f8165
ARRAY /dev/md0 UUID=91e560f1:4e51d8eb:cd707cc0:bc3f8165
ARRAY /dev/md1 UUID=0abe503f:401d8d09:cd707cc0:bc3f8165

どの物理ドライブが故障していて交換が必要かを知るにはどうすればよいですか?

ありがとう

編集1

# mdadm --detail /dev/md0
/dev/md0:
        Version : 0.90
  Creation Time : Tue Sep  1 19:15:33 2009
     Raid Level : raid1
     Array Size : 244139648 (232.83 GiB 250.00 GB)
  Used Dev Size : 244139648 (232.83 GiB 250.00 GB)
   Raid Devices : 2
  Total Devices : 1
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Mon Sep 21 07:11:24 2015
          State : clean, degraded 
 Active Devices : 1
Working Devices : 1
 Failed Devices : 0
  Spare Devices : 0

           UUID : 91e560f1:4e51d8eb:cd707cc0:bc3f8165
         Events : 0.76017

    Number   Major   Minor   RaidDevice State
       0       8       38        0      active sync   /dev/sdc6
       1       0        0        1      removed
root@regDesktopHome:~# 

なぜそれは言うFailed Devices : 0でしょうか?

EDIT2
オープニングGPartedのは、私は両方を見ることができ、/dev/sdb/dev/sdc私の2台のそのうちRAIDドライブが。しかし、mdadmは/dev.sdb何らかの理由で削除されたと考えています...それは奇妙です。「/ dev / sdb」にパーティションをマウントしようとしたところ、次のようになりました

$sudo mount /dev/sdb7 test
[sudo] password for ron: 
mount: unknown filesystem type 'linux_raid_member'

すべてが正しいように見えます。RAIDアレイを正しい順序に戻すにはどうすればよいですか?

編集3

私は走ったsmartctl -a /dev/sdcsmartctl -a /dev/sdb、私もやったbadblocks /dev/sdcし、badblocks /dev/sdbしばらくはsdc100%クリーンなようで、sdbいくつかの不良ブロックが返されました:

# badblocks /dev/sdb
16130668
16130669
16130670
16130671

それが潜在的に私が見ている障害の原因でしょうか?これらの不良ブロックを修復/無視する方法はありますか、代わりにドライブを交換する必要がありますか?

編集4

# smartctl --all /dev/sdb
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.13.0-62-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 7200.12
Device Model:     ST31000528AS
Serial Number:    6VP0308B
LU WWN Device Id: 5 000c50 013d3ae45
Firmware Version: CC34
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    7200 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 2.6, 3.0 Gb/s
Local Time is:    Sat Sep 26 11:35:02 2015 PDT

==> WARNING: A firmware update for this drive may be available,
see the following Seagate web pages:
http://knowledge.seagate.com/articles/en_US/FAQ/207931en
http://knowledge.seagate.com/articles/en_US/FAQ/213891en

SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x82) Offline data collection activity
                                        was completed without error.
                                        Auto Offline Data Collection: Enabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever 
                                        been run.
Total time to complete Offline 
data collection:                (  600) seconds.
Offline data collection
capabilities:                    (0x7b) SMART execute Offline immediate.
                                        Auto Offline data collection on/off support.
                                        Suspend Offline collection upon new
                                        command.
                                        Offline surface scan supported.
                                        Self-test supported.
                                        Conveyance Self-test supported.
                                        Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                        power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine 
recommended polling time:        (   1) minutes.
Extended self-test routine
recommended polling time:        ( 195) minutes.
Conveyance self-test routine
recommended polling time:        (   2) minutes.
SCT capabilities:              (0x103f) SCT Status supported.
                                        SCT Error Recovery Control supported.
                                        SCT Feature Control supported.
                                        SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   114   099   006    Pre-fail  Always       -       78420742
  3 Spin_Up_Time            0x0003   095   095   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   099   099   020    Old_age   Always       -       1240
  5 Reallocated_Sector_Ct   0x0033   099   099   036    Pre-fail  Always       -       60
  7 Seek_Error_Rate         0x000f   082   060   030    Pre-fail  Always       -       199357441
  9 Power_On_Hours          0x0032   052   052   000    Old_age   Always       -       42401
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   099   037   020    Old_age   Always       -       1240
183 Runtime_Bad_Block       0x0000   098   098   000    Old_age   Offline      -       2
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   094   094   000    Old_age   Always       -       6
188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0
189 High_Fly_Writes         0x003a   050   050   000    Old_age   Always       -       50
190 Airflow_Temperature_Cel 0x0022   062   046   045    Old_age   Always       -       38 (Min/Max 30/38)
194 Temperature_Celsius     0x0022   038   054   000    Old_age   Always       -       38 (0 17 0 0 0)
195 Hardware_ECC_Recovered  0x001a   030   012   000    Old_age   Always       -       78420742
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       1
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       1
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       73332271657814
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       2822963046
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       2361465529

SMART Error Log Version: 1
ATA Error Count: 6 (device log contains only the most recent five errors)
        CR = Command Register [HEX]
        FR = Features Register [HEX]
        SC = Sector Count Register [HEX]
        SN = Sector Number Register [HEX]
        CL = Cylinder Low Register [HEX]
        CH = Cylinder High Register [HEX]
        DH = Device/Head Register [HEX]
        DC = Device Command Register [HEX]
        ER = Error register [HEX]
        ST = Status register [HEX]
Powered_Up_Time is measured from power on, and printed as
DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,
SS=sec, and sss=millisec. It "wraps" after 49.710 days.

Error 6 occurred at disk power-on lifetime: 42372 hours (1765 days + 12 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 d9 44 ec 01  Error: UNC at LBA = 0x01ec44d9 = 32261337

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 d8 44 ec 41 00      09:26:28.967  READ FPDMA QUEUED
  27 00 00 00 00 00 e0 00      09:26:28.941  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]
  ec 00 00 00 00 00 a0 00      09:26:28.940  IDENTIFY DEVICE
  ef 03 46 00 00 00 a0 00      09:26:28.928  SET FEATURES [Set transfer mode]
  27 00 00 00 00 00 e0 00      09:26:28.901  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]

Error 5 occurred at disk power-on lifetime: 42372 hours (1765 days + 12 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 d9 44 ec 01  Error: UNC at LBA = 0x01ec44d9 = 32261337

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 d8 44 ec 41 00      09:26:26.095  READ FPDMA QUEUED
  27 00 00 00 00 00 e0 00      09:26:26.069  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]
  ec 00 00 00 00 00 a0 00      09:26:26.068  IDENTIFY DEVICE
  ef 03 46 00 00 00 a0 00      09:26:26.055  SET FEATURES [Set transfer mode]
  27 00 00 00 00 00 e0 00      09:26:26.029  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]

Error 4 occurred at disk power-on lifetime: 42372 hours (1765 days + 12 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 d9 44 ec 01  Error: UNC at LBA = 0x01ec44d9 = 32261337

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 d8 44 ec 41 00      09:26:23.222  READ FPDMA QUEUED
  27 00 00 00 00 00 e0 00      09:26:23.195  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]
  ec 00 00 00 00 00 a0 00      09:26:23.194  IDENTIFY DEVICE
  ef 03 46 00 00 00 a0 00      09:26:23.182  SET FEATURES [Set transfer mode]
  27 00 00 00 00 00 e0 00      09:26:23.137  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]

Error 3 occurred at disk power-on lifetime: 42372 hours (1765 days + 12 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 d9 44 ec 01  Error: UNC at LBA = 0x01ec44d9 = 32261337

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 d8 44 ec 41 00      09:26:20.351  READ FPDMA QUEUED
  60 00 80 e8 44 ec 41 00      09:26:20.350  READ FPDMA QUEUED
  27 00 00 00 00 00 e0 00      09:26:20.324  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]
  ec 00 00 00 00 00 a0 00      09:26:20.323  IDENTIFY DEVICE
  ef 03 46 00 00 00 a0 00      09:26:20.311  SET FEATURES [Set transfer mode]

Error 2 occurred at disk power-on lifetime: 42372 hours (1765 days + 12 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 d9 44 ec 01  Error: UNC at LBA = 0x01ec44d9 = 32261337

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 80 e8 44 ec 41 00      09:26:17.478  READ FPDMA QUEUED
  60 00 40 a8 44 ec 41 00      09:26:17.478  READ FPDMA QUEUED
  60 00 20 88 44 ec 41 00      09:26:17.476  READ FPDMA QUEUED
  60 00 08 80 44 ec 41 00      09:26:17.453  READ FPDMA QUEUED
  27 00 00 00 00 00 e0 00      09:26:17.427  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]


SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

# 

編集5

抜いた後/dev/sdb、以前/dev/sdcは今になっていることに気づきました/dev/sdbsmartctl -a /dev/sdb不良ディスクを抜いて起動した後、シリアル番号が変わっていることを確認しました。私は運が悪いので、ドライブは保証対象外なので、自分で新しい交換用ドライブを入手します。


参考:正常なミラーでは[U_]ではなく[UU]が表示されます。ご想像のとおり、ミラーの1つが欠落しています。@Halfgaarの提案が最善です。
Tim S.

編集6を再編集してmdadm --manage ... --add ...、Halfgaarが提案したことを実行しましたか?
MadHatter、2015年

2
Stack Exchangeサイトの重要な点の1つは、それらがフォーラムではなく、スレッドがないことです。あなたは質問をしました、それは答えられました。さらに(関連する)質問がある場合は、新しい質問として質問し、該当する場合は元の質問を参照してください。ただし、その前に、サイトを検索することをお勧めします。
user9517 2015年

回答:


11

の出力に壊れたドライブ(Fのマークが付いている)が表示されないのを見てcat /proc/mdstat、アレイが劣化してからサーバーを起動しました。

で情報を取得できmdadm --detail /dev/md0ます。それはおそらく他のどのドライブがその中にあるべきかを教えてくれるでしょう。

編集に応答するには:

/dev/sdb最初に分析します。smartctl -a(特に)再割り当てされたセクターの数とエラーログを確認するために使用します。でセルフテストを行いsmartctl -t long /dev/sdbます。使用badblocksなど

次に:

  • 置き換える場合は/dev/sdb、パーティションテーブルをからコピーします/dev/sdc。GPTでない場合は、を使用できますsfdisk -d /dev/sdc | sfdisk /dev/sdb。または、GPTの場合は、を使用gdiskしてパーティションテーブルをファイルに保存し、それをロードできます。高度な機能の下に隠されています。
  • 考慮すべき一般的なこと:(新しい)ドライブに4kセクターがある場合、パーティションが4kアラインメントになっていることを確認してください。
  • 既存のを再度追加する/dev/sdb場合は、既存のmdadm --zero-superblockすべてのパーティションで実行することができます。
  • そして、あなたができるmdadm --manage /dev/md0 --add /dev/sdb6とも同じmd1sdb7

言うまでもなく、ドライブを混同すると、一部のコマンドはデータを消去します。だから、何であるかを確認するsdcsdb...

編集:不良ブロックについて:ソフトウェアレベルのツールで不良ブロックが検出された場合、ドライブが破損しています。通常、ディスクは、書き込み時に透過的に再割り当てすることにより、ディスクを隠します。「ハードドライブセクターの再配置」のためのグーグル。あなたのsmartctl -a出力は、再割り当てのためのセクターを示すべきですsdb。ええ、あなたsdbはあなたがアレイから追い出されました、そしてあなたはそれを交換する必要があります。

編集:smartctl -a出力について。そこには、主に重要な2つの点があります。

  • 60の再割り当てセクターが表示されます。正規化された値は依然として99であり、36に達した場合にのみ公式に「悪い」(カウントダウンする)場合でも、セクターの再割り当てを開始するディスクを信頼するべきではありません。したがって、特にこの値が変化し始める場合、生の値は重要です。smartd監視するように構成することもできます。
  • エラーログには、42372時間経過したエントリが表示されます。パラメータ9(あなたの場合)により、それが最近のものであることがわかりますPower on hours。間違ったATAコマンドを与えるなど、SMARTエラーログエントリを引き起こす可能性がある無害なものがありますが、この場合、アレイの機能が低下しているため、それらは関連している可能性があります。

あなたのシステムにどのディスクがあるかを決定することに関しては; たとえば、実行dmesg |grep -i sdbすると役立ちます。おそらくシステムに3つのディスクsdbがあり、2番目のSATAコントローラー上のディスクです。ゼロベースか1ベースかに応じて、1または2という名前が付けられます。

からブートする可能性が高いため、上で概説した操作をsda置き換えsdbて実行するだけで済みます。ブートドライブが壊れている場合は、次のものが必要です。

  • 他のディスクにもgrubをインストールしました。
  • 別のディスクから実際に起動できるサーバーを用意します。

先日、Dellサーバーを使用していsdbたところ、ブランクがあったときから始めたくありませんでしsdaた。それには、説得力と即興性が必要でした。

名前ata1.01を実際のデバイス名などに変換する必要がある場合があります。たとえば、ディスクに障害が発生すると、「ATA 1.01でのATA例外」などのカーネルエラーが発生したり、その影響が出たりします。そのためのこの答えを読んでください。(これらのカーネルエラーは保留中のディスク障害を確実に示しているため、これらのカーネルエラーを警告するように中央ログシステムを構成しました)。


また、追加EDIT2
stdcerr

1
@cerr状況を分析する方法を説明する回答を編集します。
Halfgaar

1
@cerr不良ブロックの発見についてコメントしました。
Halfgaar

1
@cerr smartctl出力を洞察するために編集しました。
Halfgaar 2015

1
@cerrそれはすでに私の答えにあります--add
Halfgaar
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.