Чи може гіпервізор типу VirtualBox використовувати для запуску віртуалізованої ОС, яка також безпосередньо завантажується?


60

Це питання є досить теоретичним:

Припустимо, у мене є ПК з двома різними ОС на двох різних розділах: OS1 на sda1 і OS2 на sda2. Чи можна якось налаштувати таку програму, як VMWare або Virtualbox в OS1, яка отримує доступ до sda2, завантажує її та запускає OS2? З іншого боку, OS2 також має бути завантажуваним безпосередньо.

Я усвідомлюю, що емуляція OS2 буде набагато повільніше, і, ймовірно, ніхто не дійсно використовує цю установку, але я вважаю це дуже цікавим.


1
@MorrisIriga ви впевнені? Я пам’ятаю, що був інструмент віртуалізації, який міг монтувати фактичні жорсткі диски. Не впевнений, чи є його oracle virtualbox чи microsoft virtualpc.
LPChip

1
@LPChip Вибачте, я неправильно зрозумів питання. Так, ви можете встановити фізичний жорсткий диск за допомогою VirtualBox. Погляньте на це чи на це . Я не знаю про інше програмне забезпечення для віртуалізації.
MorrisIriga



4
VMWare Fusion може запустити розділ "Boot Camp" як віртуальна машина всередині хоста Mac OS X: kb.vmware.com/selfservice/microsites/…
Jacob Krall

Відповіді:


58

Це можливо , так, і це не обов'язково повинно бути повільніше, оскільки в наші дні це вже не емуляція , це віртуалізація - більшість процесорів підтримують апаратну віртуалізацію (VT-x і подібні), але навіть без них у VirtualBox багато трюки для забезпечення віртуалізованих програмних засобів віртуальних машин швидко працювати.

У будь-якому випадку це не буде повільніше, ніж завантажувати звичайний старий VM. Це може бути навіть швидше (через використання необробленого розділу замість фрагментованого образу диска).


Але я не зовсім впевнений, як це зробити у VirtualBox - я думаю, ви повинні створити спеціальний .vdi-файл, використовуючи, vboxmanageщо вказує на реальний розділ? Також я не маю уявлень про те, як змусити завантажувач працювати в такій ситуації.

Хоча я використовував для налагодження різних проблем завантаження в Linux, запускаючи копію поточної ОС, доступної лише для читання, всередині себе qemu-system-x86_64 -enable-kvm -hda /dev/sda -snapshot -monitor stdio.


6
Ви, чоловік, ви насправді запустили ОС, віртуалізовану всередині себе?
Возл

8
Звісно, ​​чому б ні? Це не дуже відрізняється від запуску звичайного VM. Єдина важлива частина - -snapshotце тимчасова копія / dev / sda (щоб обидві системи не перекривали дані один одного).
grawity

6
Ваша попередня заява про використання vboxmanage, щоб встановити VDI (а не VHD) як заповнювач для необробленого розділу, є правильним. Посібник VBOX пояснює це докладно. Мені подобається твій фокус на налагодження. Хоча про те, щоб зробити це так, але я вже думаю про деякі випадки використання ;-)
Тонні,

28

qemuдозволить використовувати блокові пристрої типу /dev/sda2тощо як віртуальні жорсткі диски. VMWare робить також. Не впевнений у Virtualbox.

Коли ви завантажуєтеся /dev/sda2в VM, це матиме подібний ефект, як якщо б ви вийняли жорсткий диск і завантажили його на іншому комп'ютері з різним обладнанням. Якщо ОС може впоратись із цією зміною, то вам слід буде добре працювати з ОС як у вітчизняному комп'ютері, так і в оригінальному режимі. Звичайно, Windows буде створювати проблеми, а Linux, швидше за все, переносить це.

Ви можете пом'якшити потенційні проблеми, зробивши віртуальне апаратне забезпечення максимально наближеним до фізичного обладнання у вашій системі, хоча, звичайно, вам доведеться вказати менше оперативної пам’яті. Особливе значення має вказівка ​​однотипного дискового контролера (IDE, SCSI тощо).


8
Мабуть, virtualbox може зробити це також, використовуючи команду "VBoxManage internecommands createrawvmdk" (дивись тут )
Michael B

19

Це цілком можливо, насправді я раніше це робив!

У мене був один розділ / диск (я забув, який) з Windows, з Linux, я думаю, це було за часів Windows XP (правда, це тривало деякий час). Це був хороший спосіб отримати доступ до обох наборів даних без використання навантаження на диску на різних дисках.

Єдине, що мені запам’яталося, було те, що мені потрібно було встановити два різних апаратних профілі в XP. Він справді заплутався, коли він завантажився в неправильні.

Я не впевнений, як реагували поточні процеси активації на перемикання обладнання. Це може спричинити деякі проблеми ... (але якщо ви коли-небудь завантажуєте Windows як фізичну машину і маєте Linux як VM / або фізичний, це вирішило б)

Як я пам'ятаю, я робив це з робочою станцією VMware. Це однозначно підтримує завантаження із сирого диска. Я впевнений, що це версія MS. Я не дуже впевнений у віртуальній машині Linux, але я був би дуже здивований, якщо ні.


О, апаратні профілі ... Я ніколи фактично не торкався цієї функції. Ліцензування, безумовно, зараз його зруйнує.
sinni800

@ sinni800 Це був мій єдиний раз, коли я їх використовував, згідно з цим вони все ще існують, але перейшли до комплекту драйверів як devconx64.exe
Michael B

Профілі обладнання були позбавлені системи Vista та пізніших windows
ZAB

8

Цікаво, що для тих, хто працює на VMware Fusion на Mac, з розділом завантажувального комп'ютера Windows, можна запустити віртуальну машину, яка запускає розділ bootcamp:

VMware Fusion дозволяє запустити вже встановлений розділ Boot Camp, не впливаючи на його здатність до завантаження. Це дає вам можливість отримати доступ до розділу Boot Camp як з Mac OS, використовуючи Fusion, так і перезавантажившись та запустивши Windows безпосередньо.

Однак зверніть увагу:

Можливо, вам буде запропоновано повторно активувати Windows, оскільки в операційній системі розпізнається інше обладнання.

Джерело: VMware - запуск вашого розділу Boot Camp у VMware Fusion


3
Вони рекомендують спочатку встановити їх інструменти, щоб процес активації бачив однакове «обладнання» в обох ситуаціях. Дотримуйтесь інструкцій, інакше ви переговорите з серверами активації Microsoft по телефону.
Thorbjørn Ravn Andersen

@ ThorbjørnRavnAndersen чудова порада - дякую
magma

7

Я це зробив . Це досить корисно, але є деякі обмеження, і його налаштування не є тривіальним.

  • Родна ОС або VM повинна бути толерантною щодо апаратного забезпечення, на якому вона працює. Більшість дистрибутивів Linux не хвилює і просто працює на тому, що ви завантажуєте їх, доки архітектура процесора відповідає. Це не так гладко з Windows. Ви також можете зіткнутися з проблемами активації / ліцензування.

  • У Windows не можна завантажувати ОС у віртуальній машині, поки її розділ встановлено на хості. Це не велика справа, оскільки в цьому випадку ви, мабуть, хотіли б завантажувати Linux всередині Windows, а Windows у extбудь-якому разі не підтримує файлові системи.

  • Налаштування завантажувачів складне. Вам потрібна окрема конфігурація завантаження для завантаження в VM та для власного завантаження. Я використовував Grub4DOS / NeoGrub як завантажувач 1-го ступеня під час завантаження вдома, тоді мені вдалося завантажувати завантажувач Windows або завантажуватися в Ubuntu. VM мав невеликий (декілька Мб) накопичувач, встановлений з більшим пріоритетом, ніж основний привід. Цей диск містив встановлений вручну GRUB2, який я використовував для завантаження Ubuntu всередині VM.

  • Незвичне налаштування завантажувача вимагає ретельного оновлення. Наприклад, оновлення GRUB під час запуску Linux на власній основі може розірвати ланцюг завантажувача. Оновлення всередині VM вимагає встановити його в завантажувальний розділ вручну.


0

Це можливо досить легко. Якщо ви використовуєте окремі жорсткі диски для кожної установки!

Подивіться тут, наприклад: http://www.serverwatch.com/server-tutorials/using-a-physical-hard-drive-with-a-virtualbox-vm.html - або шукайте веб-сайт VirtualBox (який знищено на даний момент) для цих ключових слів.

Я використовую його, щоб мати доступ до мого розділу Linux, коли я роблю деякі роботи з Windows, як-от Adobe або інші речі, які не запускаються без проблем під Wine або Virtualisation Windows в Linux.

Крім того, оскільки я часто отримую доступ до своєї башти віддалено - і весь мій жорсткий диск Linux зашифрований, тоді як мій жорсткий диск Windows не є, і на ньому є лише нечутливі дані. Отже, я запускаю Windows (запис Windows у GRUB попередньо вибраний), увійдіть у Teamviewer, запускайте Virtualbox, а потім мій жорсткий диск Linux.

У цьому напрямку - Windows -> Virtualbox -> інший HD з Linux -> це можливо досить просто, через те, що на ходу виявляється апаратне обладнання апаратного забезпечення, яке підтримує Linux, а саме Ubuntu.

В іншому напрямку ви закінчите безлад. Windows не любить колись змінювати апаратне забезпечення. Це може зіпсувати вашу систему, взагалі не запускатись, або навіть якщо це так, можливо, говорить про те, що ваша ліцензія вже не дійсна, тому що занадто багато апаратних змін відбувається занадто часто.

При цьому ви хочете зберегти Windows як попередньо вибраний завантажувальний запис у GRUB, але дійсно слідкуйте, щоб ви обрали правильний запис у GRUB, коли він працює у Virtualbox. Якщо у вас є проблеми з відставаннями віддалено, збільште час очікування завантаження в GRUB, щоб бути безпечним.

Сподіваюся, що вам допомогли :)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.