On 2016-03-24, Artem Chuprina wrote: > За целостностью данных у нас следят простые intrusion detection systems. > В твоем случае, возможно, сгодится fcheck. >
$ cat /etc/fcheck/fcheck.cfg Directory = /etc/ DataBase = /var/lib/fcheck/fcheck.dbf $Signature = /usr/bin/sha256sum Logger = /usr/bin/logger -tfcheck $ cat /var/lib/fcheck/fcheck.dbf ... 1845266!33188!1!0!0!637!1448875975!/etc/default/apache2!5f5748b1d5ce1adb2304cecf4cf25908f0a8163666d3fb53830e91b7368e306f ... Гавкает наверно по указанному в Logger. Я почти о таком думал. Только вещь нужна "пасивная". Не гарачие бекапы а скорее как сказано ниже - архивы... > Но общий принцип прост: чексумма должна храниться, и должна быть такой, > чтобы при повреждении данных их можно было восстановить. По > документации, этим свойством обладает, например, RAID-Z у zfs. Он не > только вылет диска переживает, но и битый бит может восстановить. zfs > сама по себе проверяет чексуммы (и при чтении тоже), но понятно, что > узнать "данные побились" и восстановить данные - не одно и то же. > > В качестве более простого и надежного решения - база md5sum (если речь > не идет о намеренном вторжении, то md5 достаточно), и более одной копии > архива (тут уже речь идет скорее об архиве, а не о бэкапе). Каковые > копии никогда не втыкаются в один комп (что подразумевает физически > разные носители). > > И, соответственно, если регулярная проверка одной копии показала > несовпадение md5, эти данные восстанавливаются из другой копии. Не сильно улавливаю разницу между бекапом и архивом. Речь о домашних медийных данных, нужно обеспечить их сохранность пока я жив. Непрерывность доступа не нужна. Раз в пол года втыкаю внешний накопитель. Т.е. даже демон не нужен. Ранее был отформатирован в NTFS (использовалось не только как архив, но и как средство переноса данных). В основном хранил 2 копии и в момент бекапа удалял старее, записывав новее. Но позавчера перевел в ext4, т.к.: * на каталогах и файлах были странные метки времени (rsync предлагал менять все на все - потому работал с обычным копированием) * нет хардлинков, я использовал 2 каталога попеременно, потому короткая история, а обычно по неосторожности удаляется файл и длинная история пригодилась бы * ntfsfix(8) сказал нужно подключить провериться в Windows (( В использовании NTFS были плюсы - читается в любой OC и монтируется от определенного пользователя, после единственной настройки usbmount не требовались права root. Меня раздражает хранение прав доступа и бессмысленость uid/gid при переносе носителя в другую систему... Когда то писал на DVD-R, но спустя 3 года уже ничего не читалось )) так что заявления производителей про тесты под высокой температурой для эмуляции деградации со временем - чушь. ================================================================ Я уж думаю что можно просто в каждом каталоге самому нагенерить чексумы, только вместе с именем еще сохранять метку времени и размер файла - эти данные как раз использует rsync для быстрой проверки. И пересчитывать сумму только для изменившихся имени файла, метки времени модификации / размера. Тогда средства резервирования и контроля целосности будут перпендикулярны. В fcheck мне не по нраву общая база - мультимедийные данные сгрупированы по каталогам и перестраиватся будут по каталогам. В общем удобней скопировать подкаталог с контрольными суммами чем отдельным шагом их извлекать из общей базы. Мне кажется возможным на Perl/Python накропать свой обход каталогов с высчитыванием md5sum и сохранением меток времени файлов. ================================================================ Интересно что холодные данные могут "умирать" без вашего ведома. Как бы полезно периодически перечитывать данные, по крайней мере для HDD так. Контроллер перезапишет блок, у которого обнаружатся ошибки кодом избыточности и он либо "перемагнитит" либо переместит блок. В общем полезно не только архивировать, но и перечитывать архивы )) -- http://defun.work/

