Я хотел бы сделать резервную копию моей системы, не выключая ее. Системный клон также должен работать на другом компьютере.
Я попытался "dd" весь системный раздел на другом диске, после этого я уверен, что никаких административных задач не запущено. Я думаю, что должен был сказать grub загрузиться на этом диске, поэтому я выполнил команду:
grub-install /dev/sdc1
но я получил эту ошибку:
The file /boot/grub/stage1 not read correctly.
Я знаю, что я делаю не очень чисто, поэтому у вас есть хорошее решение для достижения моих целей или идея для решения проблемы grub?
Ответы:
Есть несколько вариантов, у каждого из которых есть компромиссы. Вы не можете использовать
dd
для клонирования файловую систему, когда она смонтирована для чтения / записи, иначе клон будет поврежден, так как источник изменяется во время копирования, поэтому назначение будет частично устаревшим, а частично - нет. Если вы действительно хотите иметь возможность использоватьdd
горячее копирование раздела, вы можете сделать это с помощью снимков LVM . Это требует, чтобы вы сначала установили систему с помощью LVM , но затем вы можете создать моментальный снимок в любое время, а поскольку моментальный снимок заморожен и не смонтирован, вы можете безопасноdd
сохранить моментальный снимок, а затем удалить его. Другой недостаток использованияdd
заключается в том, что он тратит время на копирование всего неиспользуемого пространства в томе и требует, чтобы место назначения было как минимум таким же большим, даже если большая часть источника не используется.Вместо использования
dd
вы можете просто использовать традиционные инструменты резервного копирования, такие какtar
илиdump
для резервного копирования снимка. Преимущество этого заключается в том, что вы не тратите время на копирование свободного места и могут быть восстановлены в меньший раздел, если в нем есть место для файлов. Вы также можете извлечь только некоторые файлы, чтобы выполнить частичное восстановление. Вам также не нужно использовать LVM с этим методом: если вы уверены, что файлы не изменяются при создании резервной копии, это безопасно делать на смонтированной файловой системе. Худшее, что может случиться, - это то, что отдельный файл, измененный во время резервного копирования, будет поврежден, а не вся резервная копия, как это может случитьсяdd
.Как вы, наверное, поняли, после восстановления файловой системы вам все равно нужно переустановить grub, чтобы система загрузилась. Я не уверен, почему вы получили эту ошибку, когда пытались, но кажется, что вы использовали grub-legacy, так как grub2 не имеет stage1.
источник
tar
вы хотите исключить не только / proc, но также / dev, / sys и / run, либо использовать--one-file-system
переключатель, чтобы не допустить его перехода в другие файловые системы.Использование чего-то вроде
rsync
илиtar
для копирования раздела может быть проще. Я бы смонтировал раздел во второй точке монтирования, как/mnt
перед копированием. Эти параметры также позволяют изменить размер или тип раздела. У вас могут быть структуры на дополнительных разделах. У меня часто есть отдельные разделы для/var
и/usr
. Это также необходимо учитывать.Возможно, вам придется покопаться в
grub
документации, чтобы определить, как правильно настроить таргетинг на диск и раздел.install-grub
может делать неверные предположения, которые не делают то, что вы хотите.Существуют такие инструменты, как, например,
mondo
позволяющие создать загрузочный компакт-диск восстановления с установленной на нем ОС.источник
Я думаю, что нет реальной возможности сделать надежное резервное копирование работающей системы на уровне устройства: ваша файловая система будет слишком повреждена, поскольку вы не сможете заморозить текущее состояние, а операция резервного копирования займет значительное количество времени.
Однако вы можете попробовать следующие варианты:
источник