ошибки жесткого диска SATA

ошибки жесткого диска SATA

У меня есть один сервер с WDC WD3202ABYS ... Там 100 виртуальных хостов. Сервер работает около 5 лет и за это время я поменял 4 диска. Все по одной и той же причине: ошибка sata. Последний:

ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x5
ata2.00: cmd 35/00:60:57:7b:b6/00:01:06:00:00/e0 tag 0 dma 180224 out
         res 51/10:60:57:7b:b6/10:01:06:00:00/e0 Emask 0x81 (invalid argument)
ata2.00: status: { DRDY ERR }
ata2.00: error: { IDNF }
ata2.00: configured for UDMA/133
sd 1:0:0:0: SCSI error: return code = 0x08000002
sdb: Current [descriptor]: sense key: Aborted Command
    Add. Sense: Recorded entity not found

Descriptor sense data with sense descriptors (in hex):
        72 0b 14 00 00 00 00 0c 00 0a 80 00 00 00 00 00 
        06 b6 7b 57 
end_request: I/O error, dev sdb, sector 112622423
Buffer I/O error on device dm-8, logical block 14077747
lost page write due to I/O error on dm-8
Buffer I/O error on device dm-8, logical block 14077748
lost page write due to I/O error on dm-8
Buffer I/O error on device dm-8, logical block 14077749
lost page write due to I/O error on dm-8
Buffer I/O error on device dm-8, logical block 14077750
lost page write due to I/O error on dm-8
Buffer I/O error on device dm-8, logical block 14077751
lost page write due to I/O error on dm-8
Buffer I/O error on device dm-8, logical block 14077756
lost page write due to I/O error on dm-8
ata2: EH complete
SCSI device sdb: 625142448 512-byte hdwr sectors (320073 MB)
sdb: Write Protect is off
sdb: Mode Sense: 00 3a 00 00
SCSI device sdb: drive cache: write back
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x5
ata2.00: cmd 35/00:90:17:30:b7/00:02:08:00:00/e0 tag 0 dma 335872 out
         res 51/10:90:17:30:b7/10:02:08:00:00/e0 Emask 0x81 (invalid argument)
ata2.00: status: { DRDY ERR }
ata2.00: error: { IDNF }
ata2.00: configured for UDMA/133
sd 1:0:0:0: SCSI error: return code = 0x08000002
sdb: Current [descriptor]: sense key: Aborted Command
    Add. Sense: Recorded entity not found

Descriptor sense data with sense descriptors (in hex):
        72 0b 14 00 00 00 00 0c 00 0a 80 00 00 00 00 00 
        08 b7 30 17 
end_request: I/O error, dev sdb, sector 146223127
printk: 34 messages suppressed.
Buffer I/O error on device dm-8, logical block 18277835

Похоже, какая-то программная ошибка...

но вскоре после этого (возможно, когда я запустил fsck) появилась следующая ошибка:

EXT3-fs error (device dm-8): ext3_put_super: Couldn't clean up the journal
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/01:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x1 (device error)
ata2.00: status: { DRDY ERR }
ata2.00: configured for UDMA/133
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/40:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x9 (media error)
ata2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: configured for UDMA/133
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/40:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x9 (media error)
ata2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: configured for UDMA/133
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/40:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x9 (media error)

Возможно ли, что эти ошибки также являются "программными"... Я имею в виду, что этому жесткому диску всего 9000 часов... где нет дополнительной нагрузки на жесткий диск... температура 29 градусов по Цельсию... Нужно ли мне заменить жесткий диск? Или достаточно проверить диск?

EXT3-fs error (device dm-8): ext3_put_super: Couldn't clean up the journal
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/01:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x1 (device error)
ata2.00: status: { DRDY ERR }
ata2.00: configured for UDMA/133
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/40:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x9 (media error)
ata2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: configured for UDMA/133
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/40:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x9 (media error)
ata2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: configured for UDMA/133
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x4
ata2.00: cmd c8/00:00:8f:0d:84/00:00:00:00:00/e1 tag 0 dma 131072 in
         res 51/40:00:a8:0d:84/10:02:08:00:00/e1 Emask 0x9 (media error)

Как узнать причину?


Вот ошибки от smart:

Error 36 occurred at disk power-on lifetime: 9160 hours (381 days + 16 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 22 09 80 e3  Error: UNC at LBA = 0x03800922 = 58722594

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  c8 00 08 1f 09 80 03 0a  47d+13:38:13.534  READ DMA
  ec 00 00 00 00 00 00 0a  47d+13:38:13.530  IDENTIFY DEVICE
  ef 03 46 00 00 00 00 0a  47d+13:38:13.528  SET FEATURES [Set transfer mode]

Хорошо. Возможен ли следующий сценарий: 1. Диск был на 9000 без fsck. 2. Есть некоторые ошибки 3. В dmesg начались ошибки типа:

ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata2.00: BMDMA stat 0x5
ata2.00: cmd 35/00:60:57:7b:b6/00:01:06:00:00/e0 tag 0 dma 180224 out
         res 51/10:60:57:7b:b6/10:01:06:00:00/e0 Emask 0x81 (invalid argument)
ata2.00: status: { DRDY ERR }
ata2.00: error: { IDNF }
ata2.00: configured for UDMA/133
sd 1:0:0:0: SCSI error: return code = 0x08000002
sdb: Current [descriptor]: sense key: Aborted Command
    Add. Sense: Recorded entity not found
  1. И ошибки типа ошибки inode и т. д.
  2. Я попытался размонтировать этот раздел, и возникла ошибка жесткого диска, что он не может найти такой inode и т. д... ?

Если так.. Я не понимаю. Мне нужно менять диск каждый год? Просто чтобы предотвратить эту ошибку? У кого-то такая же проблема? Не только с одним диском...

решение1

По моему опыту, ошибки, которые вы видите, на самом деле являются аппаратными ошибками, отраженными в программном обеспечении. Сообщение «потеря записи страницы из-за ошибки ввода-вывода» я видел на плохих жестких дисках, и оно ведет себя так же, как вы описываете, когда пытаетесь выполнить fsck. Это почти наверняка настоящая аппаратная ошибка.

Вам следует проверить вывод smartctl, чтобы узнать, в чем может заключаться проблема.

smartctl --attributes /dev/sdb

Это даст вам вывод, подобный этому:

=== НАЧАЛО ЧТЕНИЯ РАЗДЕЛА SMART DATA ===
Номер ревизии структуры данных атрибутов SMART: 16
Атрибуты SMART конкретного поставщика с пороговыми значениями:
ID# ИМЯ_АТРИБУТА ЗНАЧЕНИЕ ФЛАГА НАИБОЛЕЕ ЗНАЧЕНИЕ ТИП ПОРОГА ОБНОВЛЕНО WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate 0x000f 200 200 051 Предварительная ошибка Всегда - 0
  3 Spin_Up_Time 0x0003 212 186 021 Предварительный сбой Всегда - 4358
  4 Start_Stop_Count 0x0032 100 100 000 Old_age Всегда - 97
  5 Reallocated_Sector_Ct 0x0033 200 200 140 Предварительная ошибка Всегда - 0
  7 Seek_Error_Rate 0x000f 200 200 051 Предварительная ошибка Всегда - 0
  9 Power_On_Hours 0x0032 066 066 000 Old_age Всегда - 25420
 10 Spin_Retry_Count 0x0013 100 253 051 Предварительная ошибка Всегда - 0
 11 Calibration_Retry_Count 0x0013 100 253 051 Предварительная ошибка Всегда - 0
 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Всегда - 86
194 Температура_Цельсия 0x0022 104 001 000 Возраст_старости Всегда - 46
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Всегда - 0
197 Current_Pending_Sector 0x0012 200 200 000 Old_age Всегда - 0
198 Offline_Uncorrectable 0x0010 200 200 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Всегда - 0
200 Multi_Zone_Error_Rate 0x0009 200 200 051 Предварительный сбой Оффлайн - 0

Вывод может быть загадочным, но я бы обратил пристальное внимание на Reallocated_Sector_Ct, поскольку он сообщает вам, что на жестком диске есть известные плохие сектора. Команда 'smartctl -a' даст гораздо больше данных. На плохом жестком диске, который у меня был некоторое время назад, в нижней части этого вывода находится 'SMART Error Log', в котором было несколько записей.

решение2

У вас произошла неисправимая ошибка чтения.

Error: UNC at LBA = 0x03800922 = 58722594

Данные, которые были в этом блоке, теперь утеряны.

Вам следует:

  • использовать зеркало в первую очередь. Корпоративные диски на самом деле предназначены для использования за зеркалом, и они скорее вернут ошибку чтения, чем будут очень стараться получить данные.
  • восстановить потерянные данные из резервных копий

У вас НЕТ НИКАКИХ ОПРАВДАНИЙ не использовать RAID (особенно если вы размещаете веб-сайты для клиентов!) — ОС не такая уж большая, вам не нужен для нее отдельный диск в системе с двумя дисками.

решение3

Используете ли вы RAID-контроллер? Какой тип контроллера вы используете?

Одной из вещей (которая одновременно и разочаровывает, и поучительна) является растущая сегментация, которую производители HDD вводят на рынок SATA. Теперь есть диски для «малых предприятий/RAID использования» и «одиночных/настольных применений». SAS, похоже, продвигается на рынок «высокопроизводительных предприятий».

Ваша модель # — серия дисков WD RE3, разработанная для RAID-массивов. Мне сказали, что это означает, помимо прочего, что диск «сдастся» раньше (т. е. в течение 3–4 секунд) при попытке исправить ошибки, вместо того, чтобы пытаться снова и снова в течение более длительного периода времени. Ранний отказ сообщает об ошибке RAID-контроллеру, поэтому он может использовать другой диск для восстановления. Если вместо этого диск ждет дольше, RAID-контроллер выкинет диск из массива за то, что он не отвечает.

Неудачи должнывсе ещебыть редким, и не раз в год. Возможно, это другой аспект вашей установки? (У меня однажды была досадная схватка с кабелем SATA, теперь он установлен над моей дверью в качестве предупреждения другим кабелям ...)

решение4

У меня был очень плохой опыт с дисками Western Digital. Более половины моих дисков пришлось заменить по гарантии из-за полного отказа или плохих секторов.

После покупки только дисков WD в течение примерно 8 лет я больше не хочу тратить на них деньги. Я понятия не имею, какому диску WD я могу доверять; мой опыт пока говорит «ни одному из них».

Вы заменили оригинальный диск 4 раза; вы купили все пять дисков одновременно? Купили новый, чтобы заменить каждый, когда он вышел из строя? Вернули диск по гарантии для замены? Как и когда вы приобрели пять дисков и какие это были модели? По моему опыту, партии дисков WD часто бывают плохими и выходят из строя одновременно.

Связанный контент