Как установить qemu на mac os

Обновлено: 07.07.2024

Благодаря тяжелой работе сообщества QEMU/KVM в течении последних лет, стала реальностью возможность комфортного использования операционной системы Mac OS X на виртуальных машинах, работающих на KVM. В результате использование технологии GPU Passthrough(проброс графики в виртуальную машину) мы получили улучшенную производительность в работе пользовательского интерфейса.

В этой статье я покажу вам, как создать Hackintosh-KVM виртуальную машину использующую QEMU i440fx чипсет. Мы настроим эту виртуальную машину как систему «Hackintosh», без использования оригинального ключа OSK (SMC) Apple. Статья написана исключительно в ознакомительных целях, редакция не несет ответственности за то, как вы неправильно используете полученную информацию.

Основная причина, по которой данное руководство сосредоточено на чипсете i440fx, заключается в том, что на q35 чипсете все ещё есть некоторые проблемы с пробросом видеокарт 10 series Nvidia GPU, в то время как i440fx хорошо работает с ними, независимо от оборудования хост-системы. Если вы хотите найти руководства по использованию q35 чипсета, то мы добавим их после проведения тестирования связанного с пробросом видео, обновлением Mac OS X и стабильностью в целом. Мы призываем неравнодушных опытных пользователй присоединиться к нашему серверу Discord и помочь решить другие проблемы.

Синопсис

  • В этом руководстве предполагается, что в прошлом у вас уже была установлена виртуальная машина с пробросом GPU, и у вас есть опыт работы с QEMU и libvirt, в этом руководстве не будут указаны шаги по настройке QEMU / libvirt для проброса GPU, настройки сети, привязку ЦП и т. д. Если вам нужна помощь в настройке этих параметров, обратитесь к нашему англоязычному серверу Discord.
  • Это руководство было проверено только с процессорами Ryzen. При использовании процессоров Intel могут выявиться некоторые проблемы (хотя мы и не ожидаем каких-либо сложностей). Мы просим наших читателей помогать вносить свой вклад в работу с хостами Intel.
  • Автор также рекомендует, чтобы начальная настройка выполнялась с помощью сквозного проброса GPU(GPU pass-through) для упрощения установки, поскольку другие методы отображения могут не работать (QXL, vmwvga и т. д.).
  • В этом руководстве мы используем загрузчик Clover для тонкой настройки и не будем поддерживать Enoch или любой другой загрузчик.
  • Я рекомендую использовать OVMF файлы из репозитория Hackintosh-KVM. Так-же рекомендую использвать последнюю версию ядра Linux, libvirt, and QEMU. Работа с версиями более старыми, чем тестированные нами в момент написания статьи, не гарантирована.
  • Для более старых или патченных версий QEMU и других приложений рекомендую использоать руководство kholia на github.
  • Для достижения наилучшей производительности ввода-вывода мы рекомендуем использовать LVM или стандартный файл образа (.img). Использование, во время тестов, образа .qcow2 с эмулированным контроллером SATA QEMU, привело к крайне низкой производительности. Также можно использовать ZFS vdevs, хотя мы и не тестировали его для этого обзора, но считаем, что производительность ввода-вывода должна быть нормальной.
  • Автор также рекомендует включить ЦПУ в режим «performance» и/или использовать QEMU hook для достижения максимальной производительности виртуальной машины. Файл xml из репозитория Hackintosh-KVM содержит аргументы для PulseAudio и evdev pass-through.
  • С загрузчиком Clover мы будем использовать iMac18,3 SMBIOS, так как другие версии Macintosh включают прошивку Thunderbolt 3, которая после обновления повреждает nvram OVMF, тем самым делая виртуальную машину не загружаемой.

Конфигурация автора

  • AMD Ryzen 5 1600 CPU под управлением Gentoo. Видеокарта Nvidia GTX1070 FE GPU для проброса (pass-through). Так же данное руководство было тестировано на AMD Ryzen 7 2700X и EVGA GTX1050 Ti FTW.
  • Работоспособность тестировалась с QEMU 2.12 используя патченный OVMF созданный автором, который вы можете найти в Hackintosh-KVM репозитории, и с Linux kernel 4.17 (4.16 тоже проходил тестирование и тоже работает).

ВНИМАНИЕ: работоспособность возможна только с процессорами с SSE4.1 и при использовании macOS High Sierra/Mojave. Intel VT-x / AMD SVM так же обязательны.

Подготовка к установке

  • Скачайте macOS High Sierra installer из Apple App Store. Скачайте скрипт create_highsierra_iso.sh из Hackintosh-KVM репозитория для создания ISO образа.
  • Запустите скрипт create_iso_highsierra.sh на вашей действующей Macintosh машине. После отработки скрипта образ High Sierra ISO будет находиться на рабочем столе.
  • Если вы не хотите использовать скрипт Hackintosh-KVM для создания ISO образа, вы можете перейти по ссылке, где вы узнаете как конвертировать dmg в ISO.
  • Перенесите созданный ISO образ с рабочего стола на машину с установленным QEMU/KVM используя Samba/NFS или с помощью USB накопителя.

Подготовка Hackintosh-KVM

  • Для начала клонируйте репозиторий Hackintosh-KVM
  • Файлы содержащиеся в нём необходимы для создания виртуальной машины и будут необходимы во время установки загрузчика Clover в папку EFI вашего Хакинтоша.
  • Прежде чем приступить к следующему шагу выполните из папки с клоном репозитория от root следующую команду:
  • Далее для добавления GPU, дисков и других устройств воспользуйтесь Virtual Machine Manager. После чего, непосредственно в витуальной машине, откройте для редактирования xml файл и укажите мнстоположение ваших OVMF файлов, CPU pinning, и evdev pass-through. Это всё так же можно сделать используя команду virsh edit osx_i440fx. Если вы не собираетесь использовать PulseAudio или evdev pass-through, удалите соответствующие строки.
  • В xml прописан адаптер virtio-net на сетевом интерфейсе bridge, вы можете поменять это, в случае не соответствия вашей топологии сети.
  • Для включения pass-through нашего хоста CPU, мы будем подделывать идентификатор поставщика ЦП с помощью аргумента QEMU, показанного ниже. Обратите внимание, что это изменит сделанные ранее настройки в меню CPU в Virtual Machine Manager.

Гид по установке Hackintosh-KVM High Sierra используя QEMU

Установка

Пост установка

  • Во-первых, необходимо установить Clover на основной диск, где установлена система macOS High Sierra. Далее поместить файл i440fx-acpi-dsdt.aml из репозитория Hackintosh-KVM в папку EFI/CLOVER/ACPI/, и не забудьте необходжимые вам файлы kext в папку EFI/CLOVER/Kexts/Other.
  • Вам необходимо убедиться, что эти параметры включены в разделе «Kernel and Kext Patches» утилиты Clover Configurator

Так же вы можете удалить +hypervisor из аргументов QEMU и выставить настройки в секции CPU в Clover Configurator как можно ближе по параметрам вашей системы.

Гид по установке Hackintosh-KVM High Sierra используя QEMU

Статья является переводом с английского статьи Daniel Hanson: Hackintosh-KVM Guide: High Sierra+ Using QEMU’s i440fx Chipset

Если кому-то вдруг потребуется iso образ Mac OS X High Sierra или Mojave, пишите в комментариях, подготовлю и пришлю.

Проверяем, поддерживается ли компьютером виртуализация:

$ egrep --color -E "vmx|svm" /proc/cpuinfo

в вывде должно быть:

flags . vmx .

В BIOS подключаем виртуализацию:

Virtualization Technology Enabled

В ядре устанавливаем следующие опции:

Расширенная поддержка сети
Device Drivers --->
[*] Network device support --->
[*] Network core driver support
<*> Universal TUN/TAP device driver support
Needed for 802.1d Ethernet Bridging:
[*] Networking support --->
Networking options --->
<*> 802.1d Ethernet Bridging

Включение поддержки файловых возможностей Linux
Kernel hacking --->
Compile-time checks and compiler options --->
[*] Debug Filesystem

Включение поддержки ext4 kvm_stat
File systems --->
If you use the ext4 filesystem:
<*> The Extended 4 (ext4) filesystem
[*] Ext4 Security Labels

SPICE - поддержка включает более мощные QXL устройства отображения, повышает производительность, буфер обмена и возможность перетаскивания между хостом и гостем, автоматическое переключение разрешения и т.д.
Для его использования с QEMU добавляем USE - флаг spice:

Устанавливаем QEMU:

Если необходим графический интерфейс, дополнительно устанавливаем "Менеджер виртуальных машин" или app-emulation/aqemu.
При использовании virt-manager USE - флаг usbredir должен быть включен.

Для запуска, необходимо убедиться, что пользователь, находятся в группе libvirt:

Раскомментируем следующие строки из файла конфигурации libvirtd:

Перед запуском менеджера необходимо запустить libvirtd:

Для systemd:

Добавляем пользователя в группу KVM:

Проссматриваем QEMU опции.
Создаём директорию "QEMU".

Установка Windows на виртуальную машину QEMU

"Но вернёмся к MS-DOS. Сейчас это основная операционная система для персональных компьютеров, но постепенно она заменяется системой с графическим пользовательским интерфейсом. Заменой ей могла бы быть и Macintosh, и OS/2, и UNIX. Но получилось так, что лидером стала Windows. Однако в области высоких технологий перемены не редкость, и даже на ближайшее будущее нет никакой гарантии, что Windows сохранит лидерство."
Билл Гейтс

Прежде, чем принять решение об установке Windows, внимательно ознакомьтесь с:
"Microsoft Terms of Use".
Загружаем на основной компьютер Win10_XXXXX_XXXXX_x64.iso
Создаём виртуальный, жёсткий диск:

/QEMU $ qemu-img create -f qcow2 Windows10.img 50G

Устанавливаем "Windows" c загруженого iso образа на созданный виртуальный, жёсткий диск:

/QEMU $ /usr/bin/qemu-system-x86_64 -enable-kvm -m 2048 -smp 4,cores=2 -usb -device usb-kbd -device usb-tablet -hda ./Windows10.img -boot d -cdrom ./Win10_XXXXX_XXXXX_x64.iso -name "Windows10"

Чтобы запустить QEMU из скрипта с поддержкой SPICE, предварительно устанавливаем net-misc/spice-gtk или app-emulation/virt-viewer:

Создаём скрипт для запуска "Windows" с поддержкой SPICE:

Делаем его исполняемым:

/QEMU $ sudo chmod +x ./Запуск_Qemu.sh

Запускаем Windows:

Windows

Для повышения производительности, включения буфера обмена, возможности перетаскивания, автоматического переключения разрешения и т.д., устанавливаем на Windows spice-guest-tools.
Добавляем виртуальную память:
В проводнике правой кнопкой мыши щёлкаем "Этот компьютер".
Выбираем: "Свойства" > "Дополнительные параметры системы" > пункт "Быстродействие" > нажимаем "Параметры. " > "Дополнительно" > пункт "Виртуальная память" > нажимаем "Изменить. " > ставим галочку "Указать размер:" > устанавливаем "Исходный размер (МБ):" и "Максимальный размер (МБ):" > щёлкаем "Задать" и "OK"; "OK"; "OK"
Перезагружаемся.
Выход из полноэкранного режмиа осуществляется нажатием клавиш Shift_l + F12 или Shift_Ctrl + F12.
Выходим из спящего режима щелчком правой кнопкой мышки по экрану Qemu.

Установка Gentoo на виртуальную машину QEMU

"Я действительно не хочу уничтожать Microsoft - это будет побочный эффект"
Линус Торвальдс

Загружаем на основной компьютер установочный диск install-amd64-minimal-xxxx.iso.
Создаём виртуальный, жёсткий диск:

/QEMU $ qemu-img create -f qcow2 Gentoo.img 20G

Устанавливаем ./install-amd64-minimal-xxxx.iso на созданный, виртуальный жёсткий диск:

/QEMU $ /usr/bin/qemu-system-x86_64 -enable-kvm -m 2048 -smp 4,cores=2 -usb -device usb-kbd -device usb-tablet -hda ./Gentoo.img -boot d -cdrom ./install-amd64-minimal-xxxx.iso -name "Gentoo"

Для загрузки с CD-DVD диска, необходимо заменить iso образ на флаг "-cdrom /dev/cdrom"
Устанавливаем "Gentoo!".
Добавляем исходные коды ядра:

Processor type and features --->
[*] Linux guest support --->
[*] Enable Paravirtualization code
[*] KVM Guest support (including kvmclock)
Device Drivers --->
Virtio drivers --->
<*> PCI driver for virtio devices
[*] Block devices --->
<*> Virtio block driver
[*] Network device support --->
<*> Virtio network driver
SCSI device support --->
[*] SCSI low-level drivers --->
[*] virtio-scsi support

Для запуска Gentoo с жёсткого, виртуального диска создаём скрипт:

Делаем его исполняемым:

/QEMU $ sudo chmod +x ./Запуск_Qemu.sh

Запускаем Gentoo:

Установка macOS на виртуальную машину QEMU

"Когда вы приступаете к решению какой-то проблемы, сначала в голову лезут самые сложные решения, и большинство людей на этом останавливаются. Но если продолжить думать дальше, если вникнуть в проблему, если слой за слоем убрать шелуху, будто чистишь лук, то приходишь к наиболее элегантному и простому решению. У большинства людей просто не хватает на это сил или времени. Мы считаем наших клиентов умными людьми, им нужны вещи, продуманные до мелочей." Стив Джобс

OS X

"Вы не можете просто спросить клиентов о том что им нужно, ведь к тому моменту пока вы это сделаете - они будут хотеть что-то новое. "
Стив Джобс

OS X
OS X

"Пикассо говорил: 'Хорошие художники копируют, великие - воруют'. И мы никогда не стеснялись воровать великие идеи."
Стив Джобс

Прежде, чем принять решение об установке macOS, внимательно ознакомьтесь с:
"SOFTWARE LICENSE AGREEMENT FOR macOS High Sierra For use on Apple-branded Systems".
Загружаем установщик OS X в папку

/QEMU.
Система должна содержать следующие компоненты:
libffi
gettext
glib
pkg-config
autoconf
automake
pixman
Проверяем, если их нет, устанавливаем.
Загружаем enoch_rev2902_boot BIOS в папку

/QEMU.
Создаём виртуальный, жёсткий диск:

/QEMU $ qemu-img create -f qcow2 macOS.img 64G

Создаём раздел GPT на диске «macOS.img»:

Создаём скрипт для запуска macOS.sh:

Делаем его исполняемым:

/QEMU $ sudo chmod +x macOS.sh

Устанавливаем "macOS" c iso образа на созданный виртуальный, жёсткий диск:

enoch_rev2902_boot

нажимаем Enter.

enoch_rev2902_boot

Выбираем язык.
Перед установкой "macOS" заходим в терминал.

OS X

Форматируем образ диска «macOS.img», чтобы он соответствовал типу Apple.
Определяем наш виртуальный, жёсткий диск и разбиваем его, на разделы:

diskutil list
diskutil partitionDisk /dev/disk2 GPT HFS+J New 0b

MacOS

MacOS

Закрываем терминал и выбираем опцию «Установка macOS».


Следуем инструкциям.
Выбираем установочный диск, помеченный как «New».


После завершения установки может появиться черный экран с предупреждением: "ParseTagDate unimplemented".
Нажимаем F12, появится экран загрузки BIOS. Выбираем «Новый» диск «hd (1,2) () New», нажимаем Enter и завершаем установку macOS.
Cнова появится экран BIOS. На этот раз он будет содержать установщик, установленный образ диска macOS и диск восстановления.


Выбираем свой образ диска macOS «hd (1,2) (10.13) New», завершаем работу установщика.


Выключаем виртуальную машину.
Убираем ISO образ из стартового скрипта macOS.sh, закоментировав или удалив -device и -drive в последних двух строках:

/usr/bin/qemu-system-x86_64 -enable-kvm -boot c -m 4096 -machine pc-q35-2.11 -usb -device usb-kbd -device usb-tablet -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -kernel enoch_rev2902_boot -smbios type=2 -device ich9-intel-hda -device hda-duplex -device ide-drive,bus=ide.2,drive=MacHDD -drive format=qcow2,id=MacHDD,if=none,file=macOS.img -cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on -smp 4,cores=2 -netdev user,id=eno1 -device e1000-82545em,netdev=eno1,id=vnet0 -monitor stdio

Это удалит установщика macOS из загрузочного BIOS.
С каждым обновлением, машины Apple становятся все более заблокированными и недружелюбными к конечному пользователю. Вероятность установки OS X на другую машину становится всё меньше и меньше.
Рекомендуется: "Прежде чем устанавливать какое-либо обновление, создать резервную копию данных виртуальной машины".

Создание загружаемого установщика для macOS

В качестве загрузочного диска для установки операционной системы на компьютер Mac можно использовать внешний диск или дополнительный том.
Для загрузки установщика macOS High Sierra, набираем в браузере:

Загружаем установщик, щелчком по GET.


Когда установщик macOS загрузится, закрываем его, не продолжая установку.
Находим файл установщика с именем Install macOS High Sierra, в папке «Программы».
Перезагружаемся.
Открываем терминал.
Создаём чистый образ диска:

Монтируем созданный образ:

hdiutil attach /tmp/HighSierra.cdr.dmg -noverify -mountpoint /Volumes/HighSierra

Предполагается, что установщик все еще находится в папке «Программы», а вместо HighSierra можно использовать New - диск, флеш-накопитель USB или другой подключенный том.
Устанавливаем установщик на вновь смонтированный образ:

sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/HighSierra

Если на компьютере Mac используется ОС macOS Sierra или более ранней версии, добавляем аргумент --applicationpath /Applications/Install\ *.app
Копируем ядро:

cp -rp /System/Library/Kernels /Volumes/Install\ macOS\ High\ Sierra/System/Library/Kernels

hdiutil detach /Volumes/Install\ macOS\ High\ Sierra

Переносим образ на рабочий стол:

mv /tmp/HighSierra.cdr.dmg

Конвертируем формат .dmg в формат .iso:

hdiutil convert

/Desktop/HighSierra.dmg -format UDTO -o

Переименовываем файл, убрав .cdr с конца:

Установка Android на виртуальную машину QEMU

Проект с открытым исходным кодом, лицензированный под Apache Public License 2.0. Некоторые компоненты лицензируются в соответствии с GNU General Public License (GPL) 2.0 или более поздней.
Загружаем любой необходимый образ (stable) Android-x86.
Создаём виртуальный, жёсткий диск:

/QEMU $ qemu-img create -f qcow2 Android.img 8G

Устанавливаем "Android" c загруженого iso образа на созданный виртуальный, жёсткий диск:

/QEMU $ /usr/bin/qemu-system-x86_64 -enable-kvm -m 2048 -smp 4,cores=2 -usb -device usb-kbd -device usb-tablet -hda ./Android.img -boot d -cdrom ./android-x86_64-8.1-r1.iso -name "Android"



Не используем GPT.


Создаём новый раздел на диске.


Делаем его первичным.


Подтверждаем созданный раздел.


Делаем раздел загрузочным.


Записываем данные на раздел.


Подтверждаем запись данных на раздел напечатав yes.


Для окончания работы с диском, выбираем Quit и выходим из создания раздела.


Выбираем только что созданный раздел для установки Android.


Выбираем тип файловой системы Ext4.


Подтверждаем выбор файловой системы Ext4, стрелкой на клавиатуре переместившись в Yes.


Выбираем загрузчик Grub, стрелкой на клавиатуре переместившись в Yes.


Соглашаемся с созданием /system директории.


Перезагружаемся Reboot. Выключаем виртуальную машину.
Убираем ISO образ из стартового скрипта, это удалит установщика Android из загрузочного BIOS.
Запускаем Android:

/QEMU $ /usr/bin/qemu-system-x86_64 -enable-kvm -m 4096 -soundhw hda -smp 4,cores=2 -usb -device usb-kbd -device usb-tablet -boot d -hda ./Android.img -name "Android"

Выбираем язык и нажимаем "Начать".


Переходим к настройкам приложений Android.


Подобным образом Android можно установить на жёсткий диск или флешку.
Для этого загружаем iso образ на загрузочную флешку:

При разбивке диска выделяем раздел 8G под установку Android.
Устанавливаем с этой флешки.
Запускаем Installation - Install Android-x86 to harddisk, появится окошко Choose Partition с разделами диска и флешками.
В случае, если разделы диска или флешки не отобразились, выбираем Detect devices и нажимаем OK.
Выбираем раздел диска, или флешку, на которые хотим установить Android, жмём OK.
Далее, что доктор прописал.

Программа qemu-img

qemu-img - программа для манипулирования с образами дисков машин QEMU.
Поддерживает несколько подкоманд: create, commit, convert, info и т.д.
Возможные форматы:
VMware - vmdk, KVM, Xen - qcow2, Hyper-V - vpc, Hyper-V - vhdx, RAW - raw, VirtualBox - vdi и т.д.
Для конвертации используем опцию convert с ключами указания исходного и конечного формата. Ключи к convert:
-p - отображает процесс конвертации в процентах.
-f - указание исходного формата.
-O - указания формата на выходе.
-o - дополнительные опции.
-o subformat=dynamic - используется для конвертации в vhdx для Hyper-V, указывается для получения на выходе динамического диска.
К примеру конвертировать:

Здравствуйте хабровчане. Недавно понадобилось писать на Objective C под Mac OS X. Железо у меня не самое подходящее для всяких сборок, да и сидеть полностью в этой ОС религия не позволяет. Решил поставить Mac OS X в на виртуальную машину Qemu в Linux.

Вот список всего, что я использовал:

Переходим к настройке, в ядре необходимо добавить KVM. Качаем исходники, распаковываем, запускаем make menuconfig:
Processor type and features->Paravirtualized guest support
Отмечаем:
-KVM paravirtualized clock
-KVM Guest support
-Paravirtualization layer for spinlocks

Далее в корне настройки ядра появляется новая опция Virtualization
Переходим туда и отмечаем:
-Kernel-based Virtual Machine (KVM) support
-KVM for Intel processors support
-KVM trace support
-PCI driver for virtio devices
-Virtio balloon driver

Собираем, устанавливаем, и перезагружаемся с новым ядром.
Теперь устанавливаем Qemu с поддержкой KVM, и сам KVM
USE=«kvm» emerge qemu
emerge kvm

Теперь переходим к шаманствам с виртуальной машиной.
Создаем виртуальный жесткий диск:
qemu-img create -f raw macos.disk 30G

Если собираемся запускать Qemu не от рута, необходимо дать прав другим пользователям на чтение/запись на устройство /dev/kvm:
chmod 0666 /dev/kvm

Запускаем:
kvm -boot d -hda macos.disk -m 900 -net nic,model=rtl8139 -net tap -usb -no-reboot -no-shutdown -vga std -cpu core2duo -cdrom 10.5.7.iso
-hda путь к нашему виртуальному жесткому диску
-cdrom пусть к образу
-no-shutdown -no-reboot необходимы для того чтобы в случае ошибки окно эмулятора «замораживалось» и можно было прочитать ошибку
-net nic,model=rtl8139 эмулируем сетевую карту Realtek 8139
-net tap чтобы гостевая система видела по сети хостящую необходим TAP девайс

-m 900 количество памяти отдаваемое гостевой системе
-boot d грузимся с сидирома
-usb поддержка USB
-cpu core2duo эмуляция процессора Core2Duo

Грузим диск. Размечаем жесктий диск при помощи Disk Utility (выбираем из меню сверху).

Настройка драйверов.
Перед тем как нажать кнопку Install обратите вниманине на кнопку Customize

Вещи которые нам необходимо выбрать:
x86 ACPI
Disabler
OHR
Remove TyMCE
CardBus
USB
Intel SATA/IDE
Kernels
Apple PS/2

Попробуйте macOS, используя виртуальные машины QEMU/KVM в системе Ubuntu Linux.


Виртуальные машины очень важны на компьютерах и при разработке программного обеспечения. В первую очередь они позволяют тестировать и использовать различные операционные системы без необходимости в дополнительном оборудовании. Кроме того, можно быть уверенным, что если что-то пойдёт не так с виртуальной машиной, это не приведёт к поломке основной операционной системы на компьютере.

В данной статье рассказывается, как установить macOS в Ubuntu Linux с помощью виртуальной машины QEMU-KVM. Благодаря этому можно использовать собственное программное обеспечение macOS, которое иначе недоступно в Linux.

Что такое QEMU?

Основным преимуществом QEMU является простота настройки и управления. Кроме того, создание виртуальных машин из командной строки с QEMU как никогда просто. Доступен графический интерфейс QEMU/KVM. Предпочтительным менеджером графического интерфейса является virt-manager. Запуск виртуальных машин даёт и много других преимуществ.

После завершения тестирования виртуальной машины QEMU/KVM можно легко удалить файл виртуального диска, связанный с виртуальной машиной.

Установка QEMU/KVM

Можно установить QEMU/KVM из командной строки с помощью утилиты apt. apt также используется для удаления приложений в дистрибутивах Linux на основе Debian. Кроме того, следует установить вместе с пакетами QEMU утилиты Python.

Установите все необходимые зависимости, чтобы продолжить.

Скачивание macOS и средств установки

В этом руководстве используется проект foxlet с GitHub, чтобы упростить процесс установки macOS и управления виртуальной машиной с помощью QEMU/KVM.

В первую очередь необходимо будет загрузить базовый образ macOS и инструменты для установки из официального репозитория foxlets на GitHub.

Перейдите в папку /Downloads, чтобы сделать её текущим рабочим каталогом.

Затем загрузите проект с помощью утилиты wget:

Загруженные пакеты будут сохранены как master.zip в папке /Downloads. Воспользуйтесь утилитой командной строки unzip для извлечения содержимого пакета.

Инструмент распаковки сохранит извлечённую папку с командами как macOS-Simple-KVM-master.

Создание папки KVM для виртуальных машин

Чтобы управлять виртуальными машинами, можно создать папку с названием KVM, которая будет содержать виртуальную машину macOS. Можно использовать этот каталог для размещения других виртуальных машин в системе.

Создав папку, можно переместить распакованную папку с инструментами установки macOS и сценариями в папку KVM. Для простоты можно переименовать папку в macOS. Всё это делается при помощи команды:

Создание виртуального диска

Теперь создаётся виртуальный жёсткий диск внутри папки macOS:

Запустите следующий сценарий из папки macOS, в которой будет размещена виртуальная машина. Приведённая ниже команда автоматически загружает установочный образ macOS Catalina.

Когда базовый образ установлен, можно создать образ виртуального диска, куда будет устанавливаться macOS.

Используйте утилиту qemu-img для создания виртуального жёсткого диска, который будет использоваться для установки операционной системы.

Приведённая выше команда создаёт виртуальный диск с именем mac_os.qcow2 в формате qcow2 размером около 64 Гб. QEMU создаст образ большего размера по сравнению с указанным. На изображении показано создание диска размером около 68 Гб.


Настройка виртуальной машины

Добавьте следующие две строки в конец файла basic.sh и сохраните его.

Окончательное содержимое basic.sh должно выглядеть так:


Установка macOS на Ubuntu

Чтобы начать установку, нужно запустить файл сценария basic.sh, отредактированный выше.

После запуска этой команды отобразится начальный экран установки операционной системы macOS. Нажмите ввод для продолжения.

Примечание. В этот момент мышь может работать некорректно. Вместо неё можно использовать клавиши со стрелками для навигации.


Используйте клавиши клавиатуры Ctrl + Alt + G, чтобы выйти из управления мышью и клавиатурой из окна виртуальной машины.

Обязательно ознакомьтесь с условиями лицензии и продолжите установку, нажав кнопку «Согласен».


Необходимо отформатировать виртуальный диск с помощью Утилиты диска, прежде чем продолжить установку.


Выберите соответствующий размер диска на левой панели и нажмите кнопку «Стереть». Затем переименуйте диск в MainDisk в Утилите диска. Используйте формат файловой системы Apple (APFS) для форматирования диска и схему карты разделов GUID, как показано ниже.


Когда всё настроено, закройте окно Утилиты диска красной кнопкой в ​​верхнем левом углу. Затем система покажет следующий экран.

После правильного форматирования виртуального жёсткого диска можно приступать к установке macOS, выбрав опцию «Переустановить macOS».


Дальше нужно выбрать установочный диск, на котором будет находиться система MacOS.


На следующем экране достаточно нажать «Продолжить» для продолжения установки.


Установка займет некоторое время, которое примерно отображается на экране.


Во время установки не нужно ничего делать до тех пор, пока не появится экран с просьбой настроить операционную систему.

Настройка macOS

Теперь пришла пора настроить установленную операционную систему. Для начала необходимо выбрать страну или регион вашего проживания.


Затем происходит выбор параметров письменной и устной речи. Можно использовать кнопку «Изменить настройки», чтобы добавить поддержку дополнительного языка.


На следующем экране показано, как Apple обрабатывает данные и конфиденциальность пользователей. Нажмите «Продолжить».


В macOS есть возможность передавать данные с другого ПК или носителя, но в данном случае так делаться не будет.


Позже можно будет войти в систему со своим Apple ID.


На экране «Положения и условия» выберите «Согласен» для продолжения установки.


Дальше можно перейти к настройке учётной записи. Для продолжения нужно указать имя пользователя и надёжный пароль. Также можно задать подсказку, с помощью которой можно восстановить пароль, если вы его забудете.


На следующем экране с надписью «Быстрая настройка» нужно нажать «Продолжить».



Экранное время позволяет настроить, должна ли macOS записывать и давать сводку об использовании экрана. Выберите «Настроить позже» и нажмите «Продолжить».


При желании можно выбрать работу с Siri или отключить ассистент. Выберите «Продолжить».



Затем появляется рабочий стол macOS. Здесь уже можно начинать пользоваться системой, но время от времени могут появляться некоторые параметры конфигурации. Можно обновить систему прямо сейчас или позже.


Теперь macOS работает внутри виртуальной машины на Ubuntu Linux.

Запуск и остановка виртуальной машины

Можно включать или перезапускать систему macOS после завершения использования виртуальной машины. Для остановки виртуальной машины нажмите Ctrl + C в терминале, в котором запущен скрипт basic.sh.

Чтобы снова включить виртуальную машину, необходимо запустить сценарий basic.sh в папке macOS, в которой находится виртуальный жёсткий диск.

Будет показан следующий загрузочный экран. Нужно выбрать вариант с надписью «Загрузить macOS с основного диска».


Другие настройки QEMU/KVM

При желании можно дополнительно настроить параметры виртуальной машины, включая разрешение экрана. В данной статье мы рассматривали только установку. Откройте папку /docs внутри каталога macOS, который содержит виртуальный жёсткий диск, чтобы получить больше информации о настройке системы.

Виртуальная машина macOS будет автоматически использовать подключение к интернету, используемое операционной системой хоста, поэтому можно приступить к установке необходимых приложений. Так же можно установить macOS с помощью виртуальной машины в операционной системе Windows.

Читайте также: