Як я можу встановити 64-бітну віртуальну машину Linux на 32-бітний Linux?


11

У мене є комп'ютер (Intel Core i5) із встановленим 32-бітним Linux (ubuntu 11.04), і я хотів би встановити на ньому 64-бітну віртуальну машину Linux, щоб я міг перевірити на ній 64-бітні програми командного рядка.

Відповіді:


6

І VMware, і VirtualBox можуть запускати 64-бітну віртуальну машину в 32-розрядної хост-системі, якщо у вас 64-бітний процесор. Для VirtualBox ваш процесор повинен мати апаратну підтримку віртуалізації (або AMD-V, або VT-x , показану як svmі vmxв flags:рядку /proc/cpuinfoпід Linux); Більшість процесорів x86-64, за винятком більш ранніх, і, я думаю, я думаю, що всі основні моделі i5 мають цю підтримку.

Якщо цього не зробити, ви можете використовувати технологію віртуальної машини, яка імітує процесор x86-64 в програмному забезпеченні, наприклад, Qemu. Але це не гарна ідея, якщо вона вам не потрібна: вона повільна, голодна по пам’яті і незручна.

Моя рекомендація - просто отримати 64-бітний хост або хоча б 64-бітове ядро. Ви можете запускати 32-розрядні програми на ядрі x86-64 (він же amd64), насправді ви можете запустити цілком 32-бітну користувальницьку Linux на ядро ​​amd64 Linux.

Ubuntu не забезпечує 64-бітове ядро ​​в своєму дистрибутиві i386 (це робить Debian). Ви можете захопити ядро ​​з дистрибутиву amd64, і програми повинні просто працювати, але під natty пакет не легко встановити .

Таким чином, найпростішим маршрутом до запуску 64-розрядних додатків буде паралельна установка amd64 Ubuntu. Встановіть його на окремий розділ, зберігаючи вашу існуючу 32-бітну установку. У 64-бітній системі змонтуйте існуючі розділи, а потім встановіть 32-бітну schroot (див. Це керівництво) ) для запуску 32-бітних програм.


Я вибрав vmware, інстанціюючи зображення 64-бітового 11.04-сервера ubuntu, і він працює.
719016

5

Джилз вказує, що я помилився, коли VirtualBox і VMware підтримують 64-бітних гостей на 32-бітних хостах. VirtualBox доступний у сховищах Ubuntu в virtualbox-oseпакеті.

Документація VirtualBox надає такі поради щодо роботи 64-бітних операційних систем:

VirtualBox підтримує 64-розрядні гостьові операційні системи, навіть у 32-бітних операційних системах, за умови виконання наступних умов:

  1. Вам потрібен 64-розрядний процесор із підтримкою апаратної віртуалізації (див. Розділ «Віртуальне обладнання та віртуалізація програмного забезпечення»). [Ваш процесор відповідає цій вимозі.]

  2. Ви повинні увімкнути апаратну віртуалізацію для конкретного VM, для якого потрібно 64-розрядна підтримка; віртуалізація програмного забезпечення не підтримується для 64-бітних VM.

  3. Якщо ви хочете використовувати 64-бітну гостьову підтримку в 32-бітній операційній системі хоста, ви також повинні вибрати 64-бітну операційну систему для конкретного VM. Оскільки підтримка 64 біт на 32-бітових хостах потребує додаткових витрат, VirtualBox надає цю підтримку лише за явним запитом.

На 64-бітних хостах (які зазвичай постачаються з підтримкою апаратної віртуалізації) 64-розрядні гостьові операційні системи завжди підтримуються незалежно від налаштувань, тому ви можете просто встановити 64-бітну операційну систему в гості.

Увага

На будь-якому хості слід увімкнути APIC вводу / виводу для віртуальних машин, які ви маєте намір використовувати в 64-бітному режимі. Особливо це стосується 64-бітових віртуальних машин Windows. Дивіться розділ, який називається "Вкладка" Додатково ". Крім того, для 64-бітних гостей Windows слід переконатися, що VM використовує мережевий пристрій Intel, оскільки немає 64-розрядної підтримки драйверів для картки AMD PCNet; дивіться розділ «Віртуальне мережеве обладнання». Якщо ви користуєтеся майстром "Create VM" графічного інтерфейсу користувача VirtualBox (див. Розділ під назвою "Створення першої віртуальної машини"), VirtualBox автоматично використовуватиме правильні налаштування для кожного вибраного 64-бітного типу операційної системи.

Якщо вам потрібно використовувати віртуалізацію програмного забезпечення, ви можете встановити qemuпакет із сховищ Ubuntu. Існує кілька пакетів GUI для управління ним (я вважаю за краще aqemu), але ви також можете використовувати його з командного рядка.

Крім того, рекомендуємо замість цього запустити 64-бітну версію Linux. Ubuntu x86_64 підтримує запущені 32-бітні бінарні файли без будь-якої віртуалізації.


Дякую. спробував aqemu, але отримав помилку: unix.stackexchange.com/questions/15789/…
719016

Ви можете запустити 64-розрядний гість на 32-бітному хості в VMware або VirtualBox, якщо ваше обладнання підтримує його.
Жил "ТАК - перестань бути злим"

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