понедельник, 14 декабря 2009 г.

Загрузка реального HDD с вЕндой в VirtualBox

Эту статейку публиковал недавно на welinux.ru

На днях заморочился во такой темой - как загрузить уже установленную винду на реальном жестком диске в виртуальную машину VirtualBox *buntu. Все из-за того, что мне надо каким-то образом на работе добратся до сетевого принтера, который доступен только в винде-чертежи печатать. Сами знаете, с чертежными программами в линухе бяда:( Пока, вот, еще не добрался:( Но подумалось, что загрузя реальную вянду в виртуалке, получится это сделать. Вот, что удалось нарыть по теме такой загрузки:

http://blarts.wordpress.com/2007/12/06/how-to-run-virtualbox-using-a-physical-partition-using-ubuntu-feisty-fawn/

http://forum.ubuntu.ru/index.php?topic=57330.0

http://forums.virtualbox.org/viewtopic.php?t=333&highlight=createrawvmdk

http://ubuntuforums.org/showthread.php?s=6b10aeaf299568ef547c876c19e41f8f&t=769883

Вероятно, все последущие действия не так сильно зависят от версии VirtualBox (все решения, которые удалось найти в инете по этой теме, проиходили еще с первыми версиями VirtualBox). В моем случае: основная ОС это XUbuntu 9.10, гостевая - ВЕНДА XР, VirtualBox 3.0 OSE из оффициального репозитория. Все приведенные ниже действия, я проводил на свой страх и риск. Если будете "химичить" по этой мануалке, за сохранность информации на подопотных носителях отвечаете сами)) Проблемы были, и о них я тоже упомяну ниже.
Вероятно, в мануал придется вносить поправки. Вот, что пока получается:

1)Добавляем группу vboxusers: в меню XFCE -> система -> пользователи и группы
2)Теперь в консоле (в моем случае, для пользователя neon): sudo usermod -G disk,vboxusers -a neon
3)Делаем логаут и снова входим. Ура, теперь не ненужно быть рутом для создания VDMK файлов (файл-ссылки на образ физического HDD, который будем впоследствиее скармливать в virtualbox)
4)Создание VDMK файла происходит командой в консоле:
Если венда стоит на физическом диске в разделе /dev/sda1 то -> значение partitions=1

VBoxManage internalcommands createrawvmdk -filename ~/.VirtualBox/WinHD.vmdk -rawdisk /dev/sda -partitions 1 -relative -register

Создастся VDMK и его можно попытатся загрузить в виртуальной машине, но, как пить дать, столкнемся с тем, что запуска не произойдет, из-за не правильно настроенного загрузчика (у меня ругался grub)

Можно использовать в качестве ВИРТУАЛЬНОГО ЗАГРУЗЧИКА mbr, его придется установить в основную систему заранее,в консоле:

sudo apt-get install mbr

Теперь можно созать виртуальный загрузчик:

install-mbr winxp.mbr --force

И, наконец - VDMK, как результат склеивания HDD с виртуальным звгрузчиком, будет получатся так:

VBoxManage internalcommands createrawvmdk -filename /home/neon/.VirtualBox/WindowsXP.vmdk -rawdisk /dev/sda -partitions 1 -mbr winxp.mbr -relative -register

5)В свойствах виртуальной машины, перед стартом, надо поставить галки в "включить ACPI", "включать IO APIC"

6)Винда загрузится, но полезет куча ошибок. Вероятно, это из-за того, что драйвера оборудования стоящие в вЯнде, расчитаны на реальное железо, а не на виртуальное. Поэтому, перед запуском вЫнды в виртуалке, необходимо ее подготовить-заранее создать дополнительный профиль оборудования-виртуального (новый), наряду с уже существующим физическим(реального железа, текущий профиль). Для этого: панель управления-> система-> вкладка оборудование -> профиль оборудования). После этого, нужный профиль можно будет выбрать при последующем старте винды. В последствии, в виртуальный профиле устанавливаются Virtual Box Guest Addition. Будьте осторожны!!! У меня полетели все ярлыке на рабочем столе!

Послесловие:
Вот как-то примерно так)) Если что, я тут не причем)
Пробовал таким образом загрузить линух, установленный на портативном жестком диске, загрузка добралась только до терминала:( В последствии, при попытке загрузится с этого портативного диска, были косяки в загрузчике и битый fstab. В итоге: мне так и не получилось добратся до злополучного принтера из-за проблем с драйверами, но это уже другая история)))

Комментариев нет:

Отправить комментарий