Используйте VirtualBox для загрузки физического диска / раздела [дубликат]

12

На этот вопрос уже есть ответ здесь:

У меня есть два раздела на моем жестком диске, один для Windows и один для Linux. Я хотел бы использовать VirtualBox в Linux для загрузки раздела Windows в качестве виртуальной машины. Как я могу достичь этого?

Джошуа
источник
7
Если вы планируете иногда загружать раздел физически, а иногда виртуально, имейте в виду, что это нелегко настроить. Windows не любит менять аппаратное обеспечение под ней.
Гарри Джонстон
Любой, кто приземлится здесь из выбранной вами поисковой системы, найдет отличный ответ здесь
Code Bling

Ответы:

6

На самом деле есть действительно простое решение для достижения этой цели. Следующий процесс создаст виртуальный диск ( .vmdk), который будет загружаться на указанный диск / раздел. По сути, вы «фальсифицируете» загрузку непосредственно на диск, поэтому созданный виртуальный диск не очень большой по размеру и не становится больше.

Однако недостатком следующего предложения будет то, что он загружается практически . Это означает, что вы можете запускать любые программы или файлы, которые находятся на нем, но однажды в виртуальной машине настройки / изменения программы не могут быть сделаны на физическом диске . Если вы хотите добавить программы, обновления и т. Д., Вам нужно будет нормально загрузиться на диск, внести нужные изменения, а затем загрузиться с VirtualBox. Я не знаю, если это нарушит условия сделки для вас, но вот товары.

Часть этого примера предназначена для того, чтобы сделать это в Windows, потому что я не знаю структуру каталогов Linux и переменные пути наизусть, но команда VirtualBox будет одинаковой, независимо от хост-ОС. Тот же процесс просто дополняет команды ОС соответственно

1: WindowsKey+ R> Тип diskmgmt.msc Запишите номер диска, который вы пытаетесь виртуализировать. Альтернатива Linux для выяснить это будет работать под управлением одной из следующих утилит> fdisk, lsblk,gparted

2. Откройте Терминал CommandPrompt с привилегиями Admin / Sudo> тип cd %programfiles%\oracle\virtualbox. Я не знаю, какой путь к каталогу по умолчанию для VirtualBox находится в дистрибутивах Linux, но я просто нахожу его и cdк нему.

3: Запустите следующую команду VirtualBox: VBoxManage internalcommands createrawvmdk -filename "%USERPROFILE%"\.VirtualBox\CUSTOMNAMEOFVHD.vmdk -rawdisk \\.\PhysicalDrive#

Замените «CUSTOMNAMEOFVHD» на то, что вы хотите. Вы также можете изменить весь путь этого файла на что-то другое. Это просто говорит, VBoxManageкуда положить созданный.vhd

~ Измените последний символ #на номер диска, записанный в шаге 1.

Учебное пособие по Windows: http://www.pendrivelinux.com/category/virtual-machine/

Пример для Ubuntu: https://askubuntu.com/questions/168156/how-to-use-a-real-partition-with-windows-7-installed-in-a-virtualbox-vm

BiTinerary
источник
3
Полезно отметить, что для использования этого нового .vhd«VirtualBox Manager» должен быть запущен с правами администратора, поскольку для этого требуется доступ к необработанным устройствам.
Джонатан Комар
Это \\.\PhysicalDrive#самая важная часть. Вы НЕ МОЖЕТЕ поместить файл образа диска здесь, это должен быть блочный (под linux) «физический» диск под windows.
masterxilo
Тем не менее, в Linux легко монтировать любой файл как виртуальное блочное устройство (с помощью losttup), а я не знаю простого способа под Windows.
masterxilo
5

Из главы 10. Расширенные темы руководства VirtualBox :

Чтобы создать специальный образ для поддержки необработанных разделов (который будет содержать небольшой объем данных, как уже упоминалось), на хосте Linux используйте команду

VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sda -partitions 1,5

В этом примере будет создан образ /path/to/file.vmdk (который, опять же, должен быть абсолютным), а разделы 1 и 5 из / dev / sda будут доступны для гостя.

Например, если ваш жесткий диск /dev/sda/и раздел Windows /dev/sda2, используемая вами команда может выглядеть так:

VBoxManage internalcommands createrawvmdk -filename ~/windows.vmdk -rawdisk /dev/sda -partitions 2

Это создаст файл windows.vmdkв вашей домашней папке, который вы затем смонтируете на виртуальной машине.

nc4pk
источник
Это может сработать, если вы сначала установите virtualbox.org/attachment/wiki/Migrate_Windows/MergeIDE.zip . Классная идея наверняка.
MattPark
2

Я люблю виртуалбокс

но обычно вы не можете просто виртуализировать физический компьютер с Windows в виртуальный, просто читая жесткий диск из Virtualbox. (опыт и источник ) Решение Tapped-out кажется более простым, но я не думаю, что вы успешно загрузитесь. Вы можете попробовать это сначала. Надеемся, что ваша установка Windows не будет повреждена, когда она попытается загрузить все новые драйверы и т. Д., Но она, вероятно, сразу же будет просто BSOD.

Если решение отработанного не работает, попробуйте это.

Используйте автономный конвертер vmware : убедитесь, что у вас также установлен vmware player (бесплатный).

Автономный VMware позволит вам преобразовать виртуальную машину, работающую физическую машину или резервную копию образа acronis в виртуальную машину. Он также будет что-то делать со всеми драйверами, чтобы ваша машина работала виртуально.

  1. если вы попробовали решение, в котором находились пользователи, укажите vmware-converter на тот виртуальный ящик vm, который вы там создали. vmware-converter прочитает его, преобразует в виртуальную машину, исправит драйверы и установит его в vmware player. Оттуда вы можете конвертировать его в формат virtualbox, если хотите, или просто использовать плеер.

  2. Если вы не пробовали его решение, или если варианту 1 не понравилось чтение rawdisk и произошел сбой, у Virtualbox есть действительно хорошая статья о преобразовании реальной установки Windows в virtualbox с использованием Linux.

В принципе,

  • Сначала установите MergeIDE на машине с Windows
  • cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi NUMBEROFBYTES
  • добавить диск в virtualbox и создать новый виртуальный компьютер
MattPark
источник