Я уже создал изображение с dd
для диска записи изображение для окон 10, и я восстанавливаю его от режима восстановления Ubuntu
Когда я хочу восстановить окна, я стираю HDD и удаляю все разделы
wget -O- 'http://your_webhosting.com/Windows10template.img.gz' | gunzip | dd of=/dev/sda
Размер изображения составляет сжатых 5 ГБ (gz формат), несжатых 20 ГБ
У меня было три раздела
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 1026047 1024000 500M 7 HPFS/NTFS/exFAT
/dev/sda2 1026048 208089944 207063897 98.8G 7 HPFS/NTFS/exFAT
/dev/sda3 208089949 1953520064 1745430116 832.3G f W95 Ext'd (LBA)
/dev/sda5 208090012 1953520064 1745430053 832.3G 7 HPFS/NTFS/exFAT
Все, в чем я нуждался, должно было восстановить изображение, которое создало от диска записи до sda1 и sda2 только, и сохраните sda5 (мои собственные файлы)
Я удалил sda1 и sda2, и создал новый раздел sda1 100 ГБ и восстановил изображение с
wget -O- 'http://your_webhosting.com/Windows10template.img.gz' | gunzip | dd of=/dev/sda1
но ничто не изменилось. Мои разделы теперь похожи на это
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 195311615 195309568 93,1G 83 Linux
/dev/sda3 208089949 1953520064 1745430116 832,3G f W95 Ext'd (LBA)
/dev/sda5 208090012 1953520064 1745430053 832,3G 7 HPFS/NTFS/exFAT
Нормальный и метод работы стер HDD полностью. Мне нужен метод работы для восстановления его к одному разделу только или освобожденному пространству
/dev/sda1
Как сделать это с dd
?
ОБНОВЛЕНИЕ
$ fdisk -l Windows10template.img
Disk Windows10template.img: 20 GiB, 21474836480 bytes, 41943040 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: 0x266de740
Device Boot Start End Sectors Size Id Type
Windows10template.img1 * 2048 1026047 1024000 500M 7 HPFS/NTFS/exFAT
Windows10template.img2 1026048 41940991 40914944 19,5G 7 HPFS/NTFS/exFAT
Так как границы раздела на образе резервной копии диска выстраиваются в линию с подмножеством тех из текущей структуры диска, было бы относительно просто отключить соответствующую часть из gunzip
вывод и запись это к правильным частям /dev/sda
с dd
, но я не собираюсь писать ответ, который собирается помочь только Вам все же перезаписать чьи-либо еще данные. Даже для себя существует большой риск сделать неправильное вычисление смещения или ввести в неправильном числе к тому же результату.
Вместо этого было бы намного лучше распаковать изображение диска на достаточно большой носитель и воздействовать на это. Можно сделать это даже в режиме восстановления. Но было бы намного легче, если бы Вы сделали это с графическим интерфейсом пользователя (например, от живого DVD/USB) – даже если Вы заканчиваете тем, что делали большую часть из этого на терминале.
Я предполагаю, что существует по крайней мере 25 ГБ (достаточно для содержания сжатого и распакованного образа резервной копии) свободный в файловой системе на /dev/sda5
.
Смонтируйте файловую систему на /dev/sda5
.
На терминале, который работает с:
udisksctl mount --block-device /dev/sda5 --options rw
udisksctl
скажет Вам, где диск был смонтирован.
Кроме того, можно использовать файловый менеджер или Диски Gnome для монтирования файловой системы.
Я предположу, что точка монтирования расположена в /media/ubuntu/my-data
. Скорректируйте следующие команды согласно фактической точке монтирования.
Загрузите сжатое изображение диска веб-браузером или Вашим любимым клиентом HTTP на ранее смонтированную файловую систему, например:
wget -P /media/ubuntu/my-data 'http://your_webhosting.com/Windows10template.img.gz'
Распакуйте изображение и сохраните вывод в той же файловой системе. Можно использовать менеджера архива как Ролик Файла или инструмент командной строки, например:
gunzip /media/ubuntu/my-data/Windows10template.img.gz
Настройте циклическое устройство для распакованного изображения диска:
sudo losetup -f --show /media/ubuntu/my-data/Windows10template.img
losetup
покажет Вам путь к циклическому устройству. Я предположу, что это /dev/loop7
. Скорректируйте следующие команды согласно пути существующего устройства.
Скажите ядру обнаруживать таблицу разделов внутри на циклическом устройстве (поддержанный изображением диска):
sudo partprobe /dev/loop7
Ядро добавит дополнительные узлы блочного устройства для обнаруженных разделов, т.е. /dev/loop7p1
и /dev/loop7p2
.
Скопируйте ранее выставленные разделы индивидуально в целевое устройство. Можно использовать менеджера по разделу как Диски Gnome или GParted или dd
. Для последнего это сделает:
sudo dd if=/dev/loop7p1 of=/dev/sda1 bs=8M
sudo dd if=/dev/loop7p2 of=/dev/sda2 bs=8M
Перепроверка, которую Вы ввели в корректном пути целевого устройства и что /dev/sda
на самом деле, что Вы думаете, что это! Не полагайтесь на ядро для переприсвоения того же имени к блочному устройству через системные перезагрузки!
Можно проверить идентификационные данные /dev/sda
путем рассмотрения его расположения раздела (например, с fdisk /dev/sda
или Диски Gnome) или использование уникальные и (главным образом) стабильные идентификаторы устройств в /dev/disk/by-*
.
Проверьте это /dev/sda1
и /dev/sda2
содержите намеченные данные.
Вы сделаны. Перезагрузка в Windows или делает что.
Очистите оставшееся изображение диска каждый раз, когда и поскольку Вам нравится. Удалите циклическое устройство для него (если Вы не перезагружали тем временем), или это не будет на самом деле удалено, пока Вы не сделаете:
sudo losetup -d /dev/loop7
dd является очень мощным, но также и очень опасным инструментом. резервное копирование независимо от того, что является новым на целевом диске (например, в разделе/dev/sda5), прежде чем Вы начнете вмешиваться в dd.
я думаю, что наименее опасный метод был бы к
клон, 'все' с образа резервной копии на дополнительный диск
клонирует первый раздел от дополнительного диска до первого раздела целевого диска.
, Но Вы повредили верхнюю часть диска (первый mibibyte), таким образом, необходимо клонировать ту часть с образа резервной копии на целевой диск также. Можно использовать count=N
для копирования только N блоков, и размер блока по умолчанию составляет 512 байтов.
Другой быстрее, но более рискованный метод должен был бы клонировать первую часть резервного копирования от головного узла до конца первого раздела.