On Thu, Jul 09, 2015 at 11:43:49AM +0300, Vladimir Sharun wrote:
Один раз - на солярке, я отключил чексумы, пожил пол-годика, диск помер, поменял - и оно исполнило бесплатный цирк - "восстановило" данные на других
К сожалению это невозможно принципиально (zfs): на дисках есть уникальная метка Это было на опенсолярисе, диск один - сдох совсем. вместо него поставился пустой-новый, далее replace - и начало оно логично, но потом началось чтение с нового пустого диска и запись на другие два. Баг такой веселый. Без выключения чексумов - всё работало как надо (та часть пула, которая была записана до выключения чексумов - читалась ок). Итог такого цирка состоял в вроде-бы правильных данных, с которыми ничего нельзя было сделать. Да, я знаю теперь - низзя выключать было, но проца не хватало и это был единственный вариант "найти его ещё чуть-чуть". Так что пришлось из бэкапа того...
дисках читая с пустого. Результат был фееричен - вылезли ещё граб ли с gzip - читаешь файл, ОС крэшится пытаясь разжать мусор.
failmode=wait | continue | panic
Это опенсолярис, тогда там такого не было. и кернел паник только на гзип-сжатых блоках был. Это не фэйл пула, это фэйл реализации гзип и проверки ошибок в ядре солярки. Не знаю, исправили или нет :), повторить сложно, наверное.
Рекавери - только всякие полицаи писали - "очень классно, данные не перезаписываются". Короче, это возможно, но никакая крупная контора не заморачивалась.
Рекавери с zdb - работает как надо. Мы восстанавливали десятки тер после жесткого крэша бэкплейна.
Мнэээ - а при кернел панике отладчиком тоже много можно сделать, я к тому - удобного и простого инструмента нет. -- Best regards, Paul Arakelyan.