У меня был нетбук с HDD, разделенным на 3. На одном из разделов (скажем, /dev /sda2) у меня был установлен экземпляр Crunchbang Linux. Я скопировал его с помощью команды 'dd' (dd if = /dev /sda2 of = <...>) на внешний жесткий диск.

Теперь я изменил схему разделения на этом нетбуке, чтобы изображение больше не вписывалось в новые разделы меньшего размера, но я хотел посмотреть некоторые файлы конфигурации на моем старом экземпляре, поэтому я решил преобразовать необработанную резервную копию в vmware (. vmdk) файл и создать виртуальную машину и запустить экземпляр.

Но .. похоже, в то время у меня должен быть /boot на отдельном разделе (/dev /sda1), который я забыл сделать для резервного копирования :(. Теперь экземпляр VMware не загружается, поскольку не может найти операционную систему на виртуальном жестком диске.

Есть ли какое-нибудь лекарство? я могу создать небольшой виртуальный диск и установить grub2 и образы ядра в него внутри виртуальной машины и загрузиться оттуда? Как? любые идеи приветствуются!

2 ответа2

1

Создайте виртуальную машину Crashbang Linux, загрузите ее с виртуальной машины, а затем подключите либо VMDK, либо исходную резервную копию в качестве дополнительного тома. См. На странице 7 руководства пользователя VMWare, как смонтировать образ в качестве отдельного раздела, здесь.

0

Если все, что вам нужно, это просмотреть некоторые файлы, вы можете легко смонтировать файл .vmdk в вашем собственном Linux без использования виртуальной машины:

 losetup /dev/loop0 /path/to/your/file.vmdk
 losetup -o 32256 /dev/loop1 /dev/loop0
 mount /dev/loop1 /your/mount/point

Хитрость заключается в смещении, 32256 в этом случае. Это будет работать для первого раздела, но если вы не хотите монтировать первый раздел, после первой команды вам придется использовать fdisk на устройстве loop:

 fdisk -l /dev/loop0

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

Если вы также хотите загрузить его, я думаю, что все, что вам нужно сделать, это скопировать каталог /boot из любой другой работающей установки Crunchbang той же архитектуры в ваш старый образ, выполнить в нем chroot, обновить grub и начать работу. , Вы можете сделать это из экземпляра виртуальной машины Crunchbang, пока он не запущен: просто сохраните образ нового экземпляра в новый файл vmdk, смонтируйте его, как и другой, скопируйте / загрузите из нового образа в старый образ , chroot в старое изображение, обновите grub и т. д.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .