Привет всем! Прошу просветить. =)
Сегодня столкнулся с ситуацией, что при ребилде массива (с рабочего диска на добавленный) на рабочем диске обнаружился нечитаемый сектор. Попробовал прочитать его c помощью команды: hdparm --read-sector - не читается, соседние читаются, а этот нет. Через некоторое время пока я занимался какими то прочими делами, снова запустив ребилд, массив собрался. Сектор читается. В SMART стоит 0 в счетчике reallocated секторов, в счетчике ошибок рандомного чтения тоже 0, температура диска в порядке, все читается. Погрешил на SATA кабель, потому что ходил и двигал этот комп, подключая внешний диск во время сборки массива.
Но суть не в этом. Есть такая команда hdparm --write-sector (--repair-sector), которая как я понимаю делает ремап сектора, то есть помечает его как плохой, если не может прочесть и переносит его в запасную зону диска. В паре мест прочел, что можно сделать эту операцию, потом проверить ФС и утилита проверки ext3/ext4 скорее всего все восстановит, если найдет какие-то ошибки.
А у меня на диске сделан один большой раздел, который входит в состав массива /dev/md0 1го уровня. Поверх массива развернута группа томов lvm с 3мя томами, а уже на них отформатированные в ext4 разделы. И вот что здесь получится при выполнении команды восстановления сектора непонятно. Если это сектор расположился на границе какого-либо тома lvm или в области его метаданных, тут как я понимаю e2fsck уже не поможет? Как вообще быть в таком случае?
ps: может быть задаю совершенно бредовый вопрос, но хочется понять и разобраться, чтобы знать на будущее. =)