LINUX.ORG.RU

Восстановление образа Linux на один диск, где уже установлена другая ОС (Windows)

 , ,


0

0

Всем привет, может поможет кто разобраться. Ситуация следующая, я установил Astra Linux 1.8 настроил ее и снял образ через clonezilla/rescuezilla. Задача у меня такая, мне нужно восстановить этот образ на диск с уже установленной системой (Windows) т.е. есть у меня диск, допустим на 512 гб, где установлена Windows в режиме UEFI(GPT). Я хотел отщипнуть от него немного места, допустим 75 гб и вот на них восстановить мой созданный образ. Попробовав в первый раз, я понял, что clonezilla/rescuezilla не дают мне выбрать конкретно эту не размеченную область. Насколько я понял, rescuezilla не может восстанавливать именно на раздел на диске, а может только на весь диск (так как работает с дисками только на низком уровне), а clonezilla это может делать. Немного почитав я понял, что разметка целевого диска должна быть ровно такой же, как в снятом мной образе (количество разделов и т.д.). Я подготовил такую же разметку и попробовав во второй раз, получил ровно такой же результат, clonezilla все равно не давала мне выбрать целевые разделы. Я стал копать дальше и в итоге выяснил, что clonezilla очень чувствительна именно к размеру всего диска, т.е. если я снимал образ с системы, где было три раздела и объем всего диска, допустим 60гб, то если пытаюсь восстановить на диск объемом 1тб, даже если подготовлю те же разделы, ту же разметку, что и в образе, то через clonezilla восстановить у меня все равно не получится.

И вот сейчас я немного в тупике и не совсем понимаю куда дальше копать. Сейчас почитал, что можно через утилиту dd как бы забэкапить необходимые разделы, подготовить разметку и их туда разархивировать и потом просто загрузчик grub донастроить и все, и вроде бы даже есть утилиты, которые делают все это. Может подскажет кто, как вообще правильно все это делается? Может уже кто так восстанавливал и чтобы все это еще и с Windows работало.

Спасибо всем, кто подскажет)

Не нужны клонзиллы никакие. Нужны tar, chroot и немного понимания того, как это работает, а также того, что собой представляет целевая машина. В данном случае речь идëт о машине с типом разметки GPT и UEFI вместо BIOS, да еще и с оффтопиком, в котором наверняка включен Secure Boot. Даже если ты сможешь развернуть архив файловой системы на новый раздел, внести необходимые правки в конфигурационные файлы и корректно установить загрузчик, то ты просто не сможешь загрузить свежеустановленную систему, не выключив Secure Boot.

yars068 ★★★★★
()

чтобы все это еще и с Windows работало

Винда не любит соседей, тебе сорее всего и так её чинить потом придется после манипуляций с разделами.

Так что это отличный повод переустановить винду.

ya-betmen ★★★★★
()

Давай немного разберёмся с терминологией. В Линуксе (и клонзилле, которая есть линукс) есть диски и разделы (партиции). В винде это называется физический и логический диски соответственно.

Клонзиллой можно снять копию как диска, так и разделов. Последнее удобнее именно по причине более гибкой работы.

  1. Ты склонировал диск или разделы? Если первое, то вариант один: купить второй диск и поставить его рядом с виндой.
  2. Если второе, то насколько я помню, главное, чтобы целевой размер раздела был больше, чем исходый. Клонзилла его уменьшит, но это не проблема, т.к. расширить раздел - не проблема.

Ты меня сильно удивил тем, что нельзя раздел накатить. КМК можно всё-таки.

bbc69
()
Ответ на: комментарий от ya-betmen

Винда не любит соседей

Если UEFI, то вообще без проблем. В свое время соседствовала у меня с линуксом и бсд одновременно, устанавливалась сама винда и первую и в последнюю очередь, никакие загрузчики не удаляла и соседние ос не портила.

anonymous
()

что можно через утилиту dd как бы забэкапить необходимые разделы…

*зиллы так и делают, только в них добавлены удобства. Но если даже с таким сервисом ты не справился, с dd тебе вообще нечего делать.

как вообще правильно все это делается?

Всё можно сделать банальным копированием, без всяких супер-мега-зилл.

andytux ★★★★★
()
Последнее исправление: andytux (всего исправлений: 1)
Ответ на: комментарий от bbc69

Привет, я делал и первым способом и вторым. Возможно со вторым надо еще раз попробовать ибо как ты говоришь, что размеры разделов должны быть просто больше чем исходные и клонзилла их сожмет. Хм…, сегодня попробую еще раз с клонзиллой. Если что я снимал образы с системы вот с такой разметкой:

  1. EXT4 + LVM и отдельным /home: ├─sda1 1M part ├─sda2 1G ext2 part /boot └─sda3 59G LVM2_member part ├─astra74024-lv_swap 5,1G swap lvm [SWAP] ├─astra74024-lv_home 12,9G ext4 lvm /home └─astra74024-lv_root 18G ext4 lvm /

2.Вторая просто с EXT4: sda1 - biosboot - 1024кб без метки sda2 - ext4 - 54,87гб метка(system) - точка монтирования (/) sda3 - swap - 5,13гб - метка (swap) Но тут я ошибся и у меня в Legacy была система, так что sda1 не обращай внимания, там через UEFI по другому раздел этот будет (sda1)

Riddick
() автор топика
Ответ на: комментарий от Riddick

Возможно со вторым надо еще раз попробовать ибо как ты говоришь, что размеры разделов должны быть просто больше чем исходные и клонзилла их сожмет.

Забудьте про слово - сожмет, это будет вас путать. Сlonezila может развернуть либо в такой же раздел, либо в больший с увеличением фс до максимума для этой партиции.

anonymous
()
Ответ на: комментарий от Riddick
  1. Существуют ``` для нормального форматирования.

Попробую распарсить.

Вот исходная машина:

 ├─sda1 1M part
 ├─sda2 1G ext2 part /boot 
 └─sda3 59G LVM2_member part 
   ├─astra74024-lv_swap 5,1G swap lvm [SWAP] 
   ├─astra74024-lv_home 12,9G ext4 lvm /home 
   └─astra74024-lv_root 18G ext4 lvm /

Вот целевая:

sda1 - biosboot - 1024кб без метки 
sda2 - ext4 - 54,87гб метка(system) - точка монтирования (/) 
sda3 - swap - 5,13гб - метка (swap)
  1. Так у тебя ничего не получится. Ты хочешь поместить диск на раздел. Или ты хочешь разместить содержимое раздела на раздел. Клонзила работает с сущностями одного уровня.

В некотором идеальном варианте тебе надо повторить структуру исходной машины: отельный раздел под boot и отдельный - под lvm. Но с учётом того, что исходная система занимает 60 ГБ, а на целевой 54 выделено - не сработает.

  1. С LVM не работал и как оно себя поведёт на новом диске, не скажу. Тем более, что где lvm, там и шифрование где-то рядом.

  2. Как верно заметили выше, для переезда тебе не нужна клонзилла. Когда я переезжал, то установил систему, в ней нужные программы и копировал домашнюю папку с сохранением пользователя.

sudo tar -czf /mnt/external/home-backup.tar.gz \
  --exclude='<чего-нибудь>' \
  ~

В моём случае это довольно долго было, но у меня и домашняя папка забита. При желании можно и из-под корня это всё скопировать, но как будто бессмысленно.

ИМХО, самый простой путь: установить систему, накатить нужные программы, а затем - личные данные.

bbc69
()
Ответ на: комментарий от bbc69

В моём случае это довольно долго было…

Хотя gz по современным меркам простой-быстрый, но он задействует только одно ядро. Squash задействует все ядра, поэтому быстрее кратно количеству ядер. И в дальнейшем применении, много удобней tar.gz.

andytux ★★★★★
()
Ответ на: комментарий от bbc69

Немного не так, там, где ты написал про исходную машину, это я делал бэкап с LVM. Где целевая, это не целевая машина, а я переустанавливал для теста систему и выбирал разметку уже без LVM, просто EXT4 и снял образ уже с нее. Ну короче, у меня два образа, один с разметкой с LVM, другой просто EXT4.

Ну у меня и так, и так пока не получилось)

Riddick
() автор топика
Ответ на: комментарий от Riddick

LVM - тут тебя ждёт жёсткоизвращённый секс.

Потренируйся сначала на паре самых банальных разделов с MBR.

И ещё раз. С LVM особенно - просто копирование.

Касаемо разметки. Более дурацкую сложно представить. 50гб - нечего вообще там делить, тем более, смешные хоме. Впрочем, 20гб под систему сеогдня не менее смешно.

andytux ★★★★★
()
Последнее исправление: andytux (всего исправлений: 1)
Ответ на: комментарий от andytux

Мне ж не каждый день этим заниматься. Я уже переехал, спасибо за переживание. Буду иметь в виду, если понадобится, но скорее всего забуду и буду идти проторенной дорогой.

bbc69
()
Последнее исправление: bbc69 (всего исправлений: 1)
Ответ на: комментарий от andytux

Касаемо разметки. Более дурацкую сложно представить. 50гб - нечего вообще там делить, тем более, смешные хоме.

Не, ну если ему чисто потыкаться, то сойдёт. У меня большую часть работа занимает.

bbc69
()
Ответ на: комментарий от andytux

LVM - тут тебя ждёт жёсткоизвращённый секс.

Зачем человека пугать?

Он просто скопирует sda3 59G LVM2_member part как партицию и все,ну и перед этим boot раздел.

По идее можно было еще линуксовый efi раздел прилепить тогда прям из UEFI можно было выбирать чего грузить.

anonymous
()
Ответ на: комментарий от anonymous

Действительно, вот Буратино, вот Мальвина. И… поскользнулся на чернильнице.

andytux ★★★★★
()
Ответ на: комментарий от Riddick

твоя ошибка в том, что ты неправильно ставишь задачу.

если тебе обязательно надо перенести Астру - то это один вид работ. для этого у неё в дистре есть режим загрузки «восстановление».

ну или можно в режиме live-cd. этого достаточно для решения задачи. но быстрее и проще это решить через спец. дистры типа Rescue CD и т.п. там вообще после загрузки ВСЕ нужные инструменты есть, включая монтирование по сети.

и если я правильно понимаю задачу, то сделал бы так:

  1. поставил нужный дистр на донора
  2. сохранил бы образ с помощью dd или dump
  3. на венде её встроенными средствами уменьшил бы основной раздел, освободив место сколько нужно
  4. на свободное место с помощью live-cd или rescue cd залил бы образ, для dd достаточно просто лить, можно прям с донора по сети online
  5. reboot; далее разобрался бы с загрузчиком (полчаса помешваить и сепции добавлять по вкусу). хороший совет про грузиться прямо из UEFI тут уже дали.
mumpster ★★★★★
()
Ответ на: комментарий от bbc69

https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/diskpart

The diskpart command interpreter helps you manage your computer’s drives (disks, partitions, volumes, or virtual hard disks).

select Shifts the focus to a disk, partition, volume, or virtual hard disk (VHD).
select disk
select partition
select vdisk
select volume

nuff said!

mumpster ★★★★★
()

ниже ответил

типовой сценарий таков если нужно максимально корректно и полно и есть куда слить локально (usb, 2 диск и т.п.)

после установки грузишься в single level (systemctl isolate rescue) или даже init=/bin/bash, с астрой тут могут быть нюансы с паролем

если init=/bin/bash, то mount -o remount,ro / в single level современного линукса это так прост не выйдет

[готовишь место на другом носителе, parted/fdisk/mke2fs добавить по вкусу]mount /2nd-disk /mnt

потом делаешь dd if=/dev/где у тя там корневой раздел status=progress bs=4k of=/mnt/image-file-name . если есть другие, простые разделы, не /var, а типа /data и т.п., там можно без изысков cp -ax в любое другое время сделать невозбранно

umount /mnt, всё, у тя образ корня готов! нечем не хуже disk2vhd ))))

если можно с недочётами и можно по сети на 2ую машину

то освобождаешь там в венде место на диске, грузишься с linux live/rescue-cd

в доноре разрешаешь доступ по ssh

свободное место размечаешь под нужные разделы, монтируешь их и шлёшь туда прямо по сети свой образ, примерно так:

ssh user@донор «sudo dd if=/dev/где у тя там корневой раздел»| dd of=целевой раздел такого же размера status=progress

mumpster ★★★★★
()

У вас специфическая задача, не знаю кто под неё тулзы будет писать, тестировать. Вы вобще пытаетесь два раздела (boot+lvm или root+swap) в один запихать. Такое всегда делалось ручками с правкой конфигурации, так как uuid у ФС другой получается, swap в файл и т.д.

Так вам проще всего каждый нужный раздел скопировать в отдельный раздел на этом 512 Гб диске. Вроде бы, из образа clonezilla можно вытаскивать отдельные разделы: https://unix.stackexchange.com/questions/169385/can-i-restore-a-single-partit... . Или разворачивайте на отдельный диск и с него с помощью dd.

В любом случае, главная ваша битва будет с загрузчиком, так как его нужно будет руками установить. Возможно, на автомате подоходящий конфиг сгенерится, а может придётся скопировать старый и поправить. И при этом остаётся проблема с обновленим загрузчика (если обновления ещё актуальны). Система считает, что установлен grub mbr и его будет пытаться обновлять...

mky ★★★★★
()

Ситуация следующая, я установил Astra Linux 1.8

Идите в техподдержку астры, там такие вещи должны решать, вы за неё платили.

Если надумаете двигать не астру, описание примерно такой вещи можно найти в хэндбуке gentoo где-то в самом механизме стейджей, особенно stage4.

anonymous
()
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария