Мне нужно создавать резервные копии системы Ubuntu таким образом, чтобы я мог легко восстановить данные и систему, поскольку она находится в состоянии готовности к работе. Итак, я решил пойти с dd
для создания целых изображений HHD.
Я создал образ следующим образом:
dd if=/dev/current_drive of=/dev/backup_drive/backup.img conv=sync status=progress
Изображение сделано без ошибок. После этого решил восстановить образ на новый тестовый диск:
dd if=/backup_drive/backup.img of=/dev/new_drive conv=sync status=progress
Все идет нормально. Восстановление образа прошло без ошибок. Но когда я попытался загрузиться с нового жесткого диска, на котором был восстановлен образ, я столкнулся с initramfs
ошибки:
Итак, после руководства fsck
ошибки были устранены, и я смог загрузиться с нового жесткого диска. Но я пару раз пробовал процедуру восстановления образа на диск, и каждый раз возникали проблемы с загрузкой. Мой оригинальный системный диск и новый абсолютно идентичны по
sudo fdisk -l
:
/dev/sda/
это новый жесткий диск.
/dev/sdb/
является исходным, из которого было создано изображение.
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xf11c2eb5
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 455024639 455022592 217G 83 Linux
/dev/sda2 455026686 488396799 33370114 15.9G 5 Extended
/dev/sda5 455026688 488396799 33370112 15.9G 82 Linux swap / Solaris
Disk /dev/sdb: 232.9 GiB, 250059350016 bytes, 488397168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xf11c2eb5
Device Boot Start End Sectors Size Id Type
/dev/sdb1 * 2048 455024639 455022592 217G 83 Linux
/dev/sdb2 455026686 488396799 33370114 15.9G 5 Extended
/dev/sdb5 455026688 488396799 33370112 15.9G 82 Linux swap / Solaris
Итак, есть идеи, что я делаю не так и почему у меня возникают ошибки загрузки после восстановления образа? Я не хочу, чтобы в реальной ситуации приходилось чинить возможный новый жесткий диск в случае выхода из строя исходного.
Кстати, исходный диск - SSD, а новый - HDD, если это имеет значение.
да dd
не может составить целостный образ живой системы. Байты, скопированные в начале вашего изображения, относятся к другому моменту времени, чем конечные байты. Другими словами, это не снимок. Поэтому fsck
жалуется.
Я вижу здесь тактику использования простейшего инструмента, и это хорошо, потому что вы можете лучше предсказать результат. Я предлагаю подготовить идентичные файловые системы и скопировать файл за файлом с помощью rsync -aHAXE --delete-during source destination
Это тоже не снимок, а хотя бы fsck
не буду жаловаться.
Для обеспечения возможности загрузки с помощью rsync вы grub-install
новый диск, требующий нового корневого расположения. Грубо говоря, он свяжет новый загрузочный сектор с содержимым нового /boot/