Я только что впервые за долгое время перезагрузил свой сервер мониторинга, и на экране появилось следующее:
Jul 11 23:52:30 monit kernel: [ 25.255908] ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
Jul 11 23:52:30 monit kernel: [ 25.256170] ata1.00: BMDMA stat 0x24
Jul 11 23:52:30 monit kernel: [ 25.256278] ata1.00: failed command: READ DMA
Jul 11 23:52:30 monit kernel: [ 25.256410] ata1.00: cmd c8/00:c0:20:68:35/00:00:00:00:00/e0 tag 0 dma 98304 in
Jul 11 23:52:30 monit kernel: [ 25.256416] res 51/40:9f:41:68:35/00:00:00:00:00/e0 Emask 0x9 (media error)
Jul 11 23:52:30 monit kernel: [ 25.256809] ata1.00: status: { DRDY ERR }
Jul 11 23:52:30 monit kernel: [ 25.256933] ata1.00: error: { UNC }
Jul 11 23:52:30 monit kernel: [ 25.304388] ata1.00: configured for UDMA/66
Jul 11 23:52:30 monit kernel: [ 25.304430] ata1: EH complete
. . .
Jul 11 23:52:30 monit kernel: [ 25.552451] sd 0:0:0:0: [sda] Unhandled sense code
Jul 11 23:52:30 monit kernel: [ 25.552462] sd 0:0:0:0: [sda] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Jul 11 23:52:30 monit kernel: [ 25.552475] sd 0:0:0:0: [sda] Sense Key : Medium Error [current] [descriptor]
Jul 11 23:52:30 monit kernel: [ 25.552490] Descriptor sense data with sense descriptors (in hex):
Jul 11 23:52:30 monit kernel: [ 25.552498] 72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00
Jul 11 23:52:30 monit kernel: [ 25.552529] 00 35 68 41
Jul 11 23:52:30 monit kernel: [ 25.552543] sd 0:0:0:0: [sda] Add. Sense: Unrecovered read error - auto reallocate failed
Jul 11 23:52:30 monit kernel: [ 25.552559] sd 0:0:0:0: [sda] CDB: Read(10): 28 00 00 35 68 20 00 00 c0 00
Jul 11 23:52:30 monit kernel: [ 25.552587] end_request: I/O error, dev sda, sector 3500097
Jul 11 23:52:30 monit kernel: [ 25.556607] ata1: EH complete
Я уже знаю, что мне нужно заменить жесткий диск (Стоимость данных> Стоимость жесткого диска), но я хочу знать для себя, что фактически неправильно с этим.
Да, у нашего сервера мониторинга нет RAID, только один жесткий диск ... Не смотрите на меня ...
sd 0:0:0:0: [sda] Add. Sense: Unrecovered read error - auto reallocate failed
Похоже, на диске есть поврежденные сектора, и он не может их перераспределить (возможно, из-за того, что на нем закончились свободные сектора). Выход smartctl -a /dev/sda
предоставит вам дополнительную информацию о состоянии диска.
Лесси говорит: «Арф! Арф Арф! Арф!». Это глупо, потому что это ничего делать с Тимми или колодцы. Вот почему вы не следуете советам системного администратора от собак.
Накопитель выдает сообщение «Невосстановленная ошибка чтения - сбой автоматического перераспределения», что в основном означает «Я пытался читать, мне не удалось, я пытался восстановить (прочтите сектор еще несколько раз, примените ECC и переместите данные в сектор, который не сломан), и это не сработало ". Это, вероятно, означает (как говорит mgorven), что диск уже забит перераспределенными секторами, потому что диск уже некоторое время умирал, но я также думаю, что это может означать, что он вообще не смог восстановить сектор (повторные чтения + ECC не удалось получить красивый блок данных).
В любом случае, да, драйв очень-очень кактусовый. Ваши данные тоже не выглядят здоровыми.
Я знаю, что это устарело, но на всякий случай, если кто-то все еще читает этот пост: «DD также попытается прочитать битые секторы» - здесь может пригодиться gddrescue. Это не так (хорошо, но только один раз).
Сделайте образ dd или rsync-копию этого диска сейчас ++, если у вас нет полной резервной копии, позволяющей удобный восстановить эту коробку. И начните искать совместимый и рабочий сменный диск.
Кстати, UDMA / 66, это диск PATA десятилетней давности?
Как уже упоминалось, это, вероятно, означает, что срок службы вашего диска приближается к концу, но не обязательно сразу - вам следует запустить fsck
на диске и попробуйте исправить ошибки (см. smartmontools вики для совета по исправлению плохих блоков), и диск может быть в порядке еще некоторое время.
Но ты должен начать бежать smartd
(который входит в состав smartmontools
package) и следите за его отчетами и / или настраивайте уведомления по электронной почте. Также вы можете добавлять собственные уведомления, создавая скрипты (в /etc/smartmontools/run.d/
), которые вызываются smartd-runner
.