Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.
I/O error, dev sda, sector ... op 0x0:(READ) Linux / DevOps

I/O error, dev sda, sector (READ/WRITE) — Решение дисковых ошибок Linux

Обновлено: 18.08.2026  ·  Официальная база знаний

Архитектура ошибки и симптомы сбоя

Сообщение «I/O error, dev sda, sector ... op 0x0:(READ) flags 0x0» генерируется подсистемой блочных устройств ядра Linux. Ошибка означает, что драйвер блочного устройства не смог выполнить низкоуровневую операцию чтения или записи по указанному LBA-сектору накопителя. Контроллер диска исчерпал лимит внутренних попыток коррекции ошибок (Hardware ECC Read Retries) и вернул статус сбоя I/O.

Диагностическая таблица параметров сбоя

ПараметрЗначениеИнженерный смысл сбоя
dev sdaBlock DeviceИмя сбойного физического или логического накопителя.
sector ...LBA Sector AddressТочный логический номер поврежденного сектора (Bad Block).
op 0x0:(READ)Operation TypeТип операции (READ — сбой чтения данных, WRITE — сбой записи).

Пошаговое дерево решений и сценарии траблшутинга

Сценарий 1: Проверка критических атрибутов SMART

# Полная проверка SMART накопителя:
sudo smartctl -x /dev/sda

# Экспресс-анализ поврежденных секторов:
sudo smartctl -A /dev/sda | grep -E "(Reallocated|Current_Pending|Offline_Uncorrectable|UDMA_CRC)"

Если параметр Current_Pending_Sector > 0, на диске присутствуют физические сбойные сектора, ожидающие переназначения.

Сценарий 2: Создание посекторного аварийного образа через ddrescue

Если диск выходит из строя, не запускайте fsck! Немедленно снимите посекторный образ на исправный накопитель:

# Установка GNU ddrescue:
sudo apt-get install gddrescue || sudo dnf install ddrescue

# Посекторное копирование с пропуском битых блоков:
sudo ddrescue -d -r 3 /dev/sda /mnt/backup/sda_rescue.img /mnt/backup/rescue.map

Сценарий 3: Принудительное переназначение битого сектора (Remap)

Если диск используется в тестовой среде и требуется принудительно заставить контроллер перезаписать сектор из резервной области:

# Принудительная перезапись конкретного сбойного сектора (ВНИМАНИЕ: стирает данные сектора!):
sudo dd if=/dev/zero of=/dev/sda seek=<SECTOR_NUMBER> oflag=direct count=1 bs=512
Сбои на основном диске с базами данных?
ITSTM выполнит экстренную эвакуацию данных, посекторное клонирование накопителей и бесшовную замену дисков в аппаратных и программных RAID-массивах.
Практический опыт инженера: Для предотвращения внезапных сбоев дисков настройте регулярный фоновый SMART Self-Test (smartd) с запуском короткого теста (Short Test) ежедневно и длинного (Extended Test) раз в неделю.

Частые вопросы (FAQ)

Почему нельзя запускать e2fsck/xfs_repair сразу при появлении I/O error?

Утилиты проверки ФС при наличии физических бэд-блоков пытаются многократно прочитать поврежденные сектора метаданных, что может окончательно разрушить блок магнитных головок диска и сделать восстановление невозможным.

Что означает, если растет атрибут UDMA_CRC_Error_Count?

Этот атрибут указывает на искажение данных при передаче по кабелю между контроллером и диском. Проблема в 95% случаев решается заменой кабеля SATA/SAS или чисткой разъемов корзины.