Файлы, записанные в течение минуты после сбоя питания, возвращаются к нулевым байтам. Тестирование системы, которая, как мы не можем гарантировать, будет иметь резервную копию ИБП.
Centos 6.4
ядро 2.6.32-358.14.1.el6.x86_64
ext4 установлен со значениями по умолчанию
Посмотрите, как это происходит в двух разных системах (только на двух, на которых я это пробовал)
1-й с контроллером PERC h710 RAID 6 с 4 дисками по 3 ТБ.
Бывает с лвм и без
Это происходит как в кешах со сквозной записью, так и с обратной записью.
2-й без контроллера RAID 2 ТБ диск
проверено только без lvm
Предложения, как этого не допустить?
Судя по вашему описанию, это звучит так, как будто ОС не сбрасывала ваши данные на диск, учитывая, что у вас есть метаданные файла, просто без какого-либо содержимого / длины.
написать (2) никоим образом не гарантирует, что ваши данные попали на диск (если вы открытый (2) ваши файлы с помощью O_DIRECT), вы выполняете указание ОС / файловой системы, и когда она решает сбросить данные / метаданные на диск. Чтобы гарантировать надежное хранение ваших данных, у вас есть два варианта:
Большое предостережение в этом случае заключается в том, что кеши (которые могут или не могут) иметь батарейное питание как на дисках, так и на рейд-контроллерах, в частности, есть некоторые диски, которые помещают ваши записи в свой внутренний кеш оперативной памяти и заявляют, что они написали это, в котором существует какое-то временное окно, когда потеря мощности приведет к потере данных.