Использует RAID-1 mdadm 2 разделов (один на внутреннем жестком диске ноутбука, один на внешнем жестком диске) хорошая идея.
Я хочу, чтобы система работала RAID-1, если оба диска присутствуют, работают регулярным объемом (degradad RAID-1), если внешний жесткий диск отключается, и быстро повторно синхронизируйте, когда я включаю внешний жесткий диск снова.
Вопросы:
Основные требования:
Если я удалю диск во время пересинхронизации, то я ожидаю, что данные будут несколько непоследовательны, но ожидать быстрое пересинхронизирующее завершение, когда я повторно добавляю его снова. Например, Я хочу, чтобы остальной диск отследил то, что изменяется (может быть много изменений), и что синхронизация назад только те части, которым нужен он.
Похож на находящиеся в external_HDD работы идеи массива RAID-1.
Массив запускает ухудшенный и отслеживает изменения в нем с помощью поглощенного записью битового массива.
Когда я соединяю свой внешний жесткий диск, мой udev
сценарий обнаруживает, что один из раздела удовлетворяет моему массиву и добавляет его. Это синхронизируется (немедленно, если не было никаких изменений), и затем действует как ускорение для доступа для чтения.
Когда я разъединяю свой внешний жесткий диск (включая внезапное удаление), другой udev
регистры сценариев, что диск удален и массив, становятся ухудшенными снова.
Однако существует значимое отбрасывание производительности записи, но это приемлемо для этого использования.
Другое преимущество состоит в том, что я могу временно отформатировать тот раздел для некоторого другого использования и затем возвратить его массиву (с полным, восстанавливают).
Я сказал бы, что это не хорошая идея. Все, от чего Вы защищаете самое большее, является физическими/электрическими проблемами с диском, и у Вас только когда-либо есть одна копия резервного копирования, которое очень уязвимо, будучи обновленным.
Если отказ происходит на другом диске, или с Вашей машиной в целом, во время пересинхронизации Вас можно было оставить с основным диском, являющимся неисправным и диском "bakcup", имеющим частично обновленными (т.е. потенциально очень коррумпированные) файловая система. Это идет причин, почему большинство решений для резервного копирования включает несколько резервных копий (другая основная причина, являющаяся этим, у Вас может быть по крайней мере одно резервное копирование офлайн (и предпочтительно удаленный) при обновлении другого), но усугублен тем, что пересинхронизация RAID не будет файловой системой, знающей, так не сможет сделать что-либо, чтобы гарантировать, что частичная пересинхронизация оставляет файловую систему в чем-нибудь похожем к согласованному состоянию (например, это могло бы синхронизировать записанные данные перед связанными блоками журнала и так далее).
При СОВЕРШЕНИИ НАБЕГА на целую систему таким образом затем, поглощенный записью хит производительности записи мог бы быть довольно значительным также (см. сообщения как http://blog.ganneff.de/blog/2008/01/30/write-intent-bitmaps-considere.html), хотя, если Вы только СОВЕРШАЕТЕ РЕЙД на файловые системы, которые не видят много действия записи, это не может быть беспокойством о Вас.
При использовании этой техники удостоверьтесь, что Вы работаете sync
прежде насильственно извлечь диск.
Вы рассмотрели использование rsync для обновления резервной файловой системы вместо этого? Это было бы медленнее в Вашем лучшем случае решений (поскольку полное сканирование размеров файла и дат необходимо, даже если ничто не изменилось, который мог бы быть значительным, если файловая система содержит много файлов), но обычно достаточно быстро и конечно будет быстрее, чем полная пересинхронизация, где драйвер RAID для решения этого необходим.
Одна проблема, которую я вижу в этом, что файловая система на удаленном внешнем жестком диске могла бы быть в состоянии, которое не может быть смонтировано, хотя современные файловые системы с журналированием и т.д. снижают этот риск.
Но если бы Вы используете mdadm, я могу предположить, что Вы используете некоторый аромат Linux и рекомендовали бы использовать rsync вместо этого. Это было бы быстро как, только измененные файлы будут скопированы, и это также позволило бы Вам иметь сценарий, который создает папку с текущей датой на внешнем жестком диске, и затем создайте полное резервное копирование своего внутреннего жесткого диска под ним, но hardlinking файлы против предыдущего резервного копирования, таким образом использовав пространство только для новых данных. Тем путем можно легко восстановить файл, который, возможно, был удален на внутреннем жестком диске.