Re: Как **надежно** сожранить данные?
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/
Reply to: