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

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

Благодаря тяжелой работе сообщества 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.

  • Не рекомендуем устанавливать многопоточность процессора в этом меню, из-за ошибки Clover, так Mac OS X QUEMU не может работать в многопоточном режиме. Гораздо лучше в тестах себя показала конфигурация состоящая из 2-8 ядер и 1 потока.
  • Создайте виртуальный HDD куда будете устанавливать macOS. Это можно сделать с помощью утилиты Storage которая находится в Edit >Connection Details >Storage >Add-Pool.
  • Создайте загрузочный диск Clover , для этого действия необходим пакет libguestfs .
  • Для начала вам нужно отредактировать $HOME/YourFolderHere/config.plist и установить желаемое разрешение экрана (по умолчанию OVMF — 1024 × 768). Обратите внимание, что неверно выставленные значения могут повредить ваш дисплей с высоким разрешением.
  • Затем вам нужно добавить необходимые kext на ваш новый загрузочный диск Clover. Необходимые файлы kexts также находятся в репозитории Hackintosh-KVM. Файлы kext в этом репозитории используются для датчиков GPU, проброса PulseAudio и сетевого устройства Virtio-Net. WhateverGreen.kext также необходим, если вы используете графический процессор AMD, однако он не был протестирован. Далее нам потребуется загрузка модуля ядра NBD:
  • Отключите и отмонтируйте clover.qcow2 образ:
  • Для облегчения вам задачи, вместо создания собственного загрузочного диска Clover вы можете использовать образ диска clover.qcow2 из репозитория Hackintosh-KVM, он содержит все необходимые файлы kext и предлагает разрешение экрана 1920 × 1080 пикселей. Кроме того, образ clover.qcow2 может быть полезен как резервный загрузчик EFI, если вы испортите загрузчик во время обновления Clover.
  • Прежде чем впервые запустить Clover на вашей новой виртуальной машине, следует убедиться, что разрешение OVMF установлено равным разрешению, установленному в вашем файле clover.qcow2. Значение по умолчанию OVMF равно 1024 × 768, а образ clover.qcow2, который вы будете использовать, установлен на 1920 × 1080, что неверно и в самом негативном развитии событий может привести к повреждению дисплея и возможным сбоям при загрузке. Разрешение можно установить через меню загрузки OVMF, которое вызывается нажатием ESC во время демонстрации логотипа OVMF, до появления экрана загрузки Clover.

Установка

  • После загрузки увидите меню выбора языка. Выберите нужный язык, затем выберите «Дисковая утилита» и сотрите целевой диск. Вы можете использовать HFS + или APFS, так как образ clover.qcow2, который мы используем, уже имеет драйвера EFI для любой файловой системы. Если вы выбираете APFS, убедитесь, что вы поместили файл apfs.efi в папку EFI при установке Clover на ваш загрузочный диск.
  • High Sierra’s ( Показать все устройства, затем выйдите из дисковой утилиты и запустите её вновь.
  • В некоторых редких случаях целевой диск может не отображаться в Disk Utility, для этого вам нужно будет использовать приложение Terminal в установщике и подготовить жесткий диск для установки вручную, используя приведенные ниже команды.
  • После выполнения команды закройте Terminal.
  • Далее продолжите установку в нормальном режиме.
  • По окончании установки виртуальная машина перезагрузится автоматически. Поздравляем вы стали обладателем Hackintosh-KVM виртуальной машины. Остался, последний шаг — выполнить некоторые шаги после установки и поместить загрузчик Clover на диск, на который вы только что установили macOS. Это нужно для того, чтобы вы могли добавить дополнительные файлы kext в будущем, для улучшения работы виртуальной машины.
Читайте также  Как поставить пароль для смс на айфон

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

  • Во-первых, необходимо установить 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 как можно ближе по параметрам вашей системы.

Для подключения PS/2 мыши и клавиатуры в Mac OS X QUEMU необходим VoodooPS2.kext , для проброса ICH6 или ICH9 PulseAudio звука нужен VoodooHDA.kext. Автор обнаружил, что с использованием эмулируемых USB-драйверов мыши и клавиатуры периодически возникает проблема с залипании при длительном нажатии. В вашей конфигурации это может и не повториться. Для эмуляции USB мыши и клавиатуры никаких дополнительных kext’ов не требуется.

Для монтирования других файловых систем (NTFS,EXT, и т.д.) пройдите по ссылке: https://github.com/macOSfuse/macOSfuse

Репозиторий с обновлениями kext’ов Hackintosh kexts

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

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

Источник

Русские Блоги

Запустите macOS на виртуальной машине KVM

Я объяснил какУстановите систему Windows в систему Ubuntu и KVMЯ сказал тогда, что надеюсь, что смогу виртуализировать и macOS, так что это будет идеально. Сегодняшняя статья призвана решить эту проблему.

Готов к работе

Перед тем, как начать, нужно проделать следующие приготовления:

  • Рабочий компьютер Mac
  • Хост Linux с установленным KVM
  • Скачан установочный пакет macOS
  • Сердце, которое не боится метаться

Первая ссылкаDhiru Kholia Чтобы сначала получить копию кода:

$ git clone [email protected]:kholia/OSX-KVM.git
Cloning into ‘OSX-KVM’…
remote: Counting objects: 28, done.
remote: Total 28 (delta 0), reused 0 (delta 0), pack-reused 28
Receiving objects: 100% (28/28), 2.62 MiB | 98.00 KiB/s, done.
Resolving deltas: 100% (1/1), done.

Конечно, если у вас нет Git, вы можетеЗагрузите ZIP-архив напрямую。

Создать образ ISO

Виртуальная машина не может распознать DMG-файл Apple, поэтому нам нужно создать ISO-образ, который можно запустить на виртуальной машине на основе установщика macOS, полученного из Mac App Store.

в случае macOS Sierra Если он был загружен, мы можем напрямую выполнить следующую команду для создания образа установочного компакт-диска.

$ sudo ./create_install_iso.sh

Запустите снимок экрана, как указано выше. После завершения программы появится файл с именем Install_macOS_Sierra_(OS_X_10.12.2).iso Файл образа CD-ROM.

Скопируйте этот файл на KVM-сервер, и этот шаг завершен.

rsync -avP Install_macOS_Sierra_(OS_X_10.12.2).iso server:/path/to/iso/

Запустите виртуальную машину

Это большая яма. Я застрял здесь на 2 дня после того, как бросил. Когда я запускаю ее разными способами в Интернете, отображается boot: После этого нет.

Сначала создаем необходимый образ диска sierra.qcow2 :

$ cd /path/to/kvm
$ qemu-img create -f qcow2 sierra.qcow2 64G
Formatting ‘sierra.qcow2’, fmt=qcow2 size=68719476736 encryption=off cluster_size=65536 lazy_refcounts=off refcount_bits=16
Читайте также  Как сменить регистрацию айфона

Обратитесь на склад boot.sh с boot-macOS.sh , Организованы следующие команды для первого запуска виртуальной машины:

kvm-spice -enable-kvm -m 4096 -cpu core2duo,kvm=off \
-machine pc-q35-2.4 \
-smp 4,cores=2 \
-usb -device usb-kbd -device usb-mouse \
-device isa-applesmc,osk=”ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc” \
-kernel ./enoch_rev2839_boot \
-smbios type=2 \
-device ide-drive,bus=ide.2,drive=MacHDD \
-drive \
-vnc 0.0.0.0:0 -k en-us \
-netdev tap,id=net0,ifname=tap0,script=no,downscript=no -device e1000-82545em,netdev=net0,id=net0,mac=52:54:00:c9:18:27 \
-device ide-drive,bus=ide.0,drive=MacDVD \
-drive >

Примечание: здесь я использовалOS X El Capitan Установочный образ, потому что он используется напрямуюmacOS Sierra Невозможно вызвать «Дисковую утилиту», даже если вы долго ждете в интерфейсе «Выбор языка», она не может нормально работать. Поэтому я, наконец, выбрал компромиссный метод, используя старую версию зеркала для загрузки, чтобы инициализировать жесткий диск, а затем использовать новую версию зеркала для установки системы.

OS X El Capitan Как сделать установочный диск иmacOS Sierra Аналогично, см.«Создать ISO-образ»раздел.

Инициализировать диск

После выполнения указанной выше команды командная строка всегда будет в состоянии ожидания.В настоящее время нам нужно использовать удаленный рабочий стол VNC для выполнения остальных операций.

Примечание. Клиент VNC и RealVNC Viewer, включенные в систему, не могут получить доступ к удаленным рабочим столам без защиты паролем. ТолькоTigerVNC Его можно посещать нормально, и здесь тратится много времени.

После обычного подключения вы можете увидеть приветственный интерфейс El Capitan:

Затем, как при обычной установке, откройте «Дисковую утилиту» и инициализируйте диск:

На этом работа по инициализации диска завершена.

Подготовить файлы запуска

Фактически, хотя это виртуализированная macOS, на самом деле она все еще запускает Hackintosh (черное яблоко). Следовательно, необходимая конфигурация файла запуска по-прежнему требуется.

К счастью, при создании образа компакт-диска некоторые необходимые файлы уже упакованы в образ компакт-диска ISO.

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

# cp -avP /Extra /Volumes/Macintosh/

Затем мы можем выключить виртуальную машину.

Установите macOS Sierra

После выключения виртуальной машины мы меняем команду для выполнения шагов запуска прямо сейчас:

kvm-spice -enable-kvm -m 4092 -cpu Penryn,kvm=off,vendor=GenuineIntel \
-machine pc-q35-2.4 \
-smp 4,cores=2 \
-usb -device usb-kbd -device usb-mouse \
-device isa-applesmc,osk=”ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc” \
-kernel ./enoch_rev2839_boot \
-smbios type=2 \
-vnc 0.0.0.0:0 -k en-us \
-device ide-drive,bus=ide.2,drive=MacHDD \
-drive \
-netdev tap,id=net0,ifname=tap0,script=no,downscript=no -device e1000-82545em,netdev=net0,id=net0,mac=52:54:00:c9:18:27 \
-device ide-drive,bus=ide.0,drive=MacDVD \
-drive >

На самом деле особой разницы от запуска виртуальной машины в первый раз нет, главное изменение состоит в том, что конфигурация ЦП и образ установки отличаются.

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

Настроить виртуальный хост с Virsh

Ссылка libvirt-macOS.xml Создается следующий файл конфигурации XML:

sierra
# echo 1 > /sys/module/kvm/parameters/ignore_msrs
4194304
4194304
2

hvm
/path/to/kvm/enoch_rev2839_boot

Penryn

/usr/bin/kvm-spice

Выше приведен файл конфигурации, например, сохраните его как sierra.xml А затем используйте virsh Зарегистрируйте новую виртуальную машину:

$ virsh define sierra.xml
Domain sierra defined from sierra.xml

$ virsh start sierra
Domain sierra started

$ virsh list
Id Name State
—————————————————-
1 sierra running

Затем используйте старый метод для сопоставления локального порта с VNC:

ssh -L 5911:127.0.0.1:5911 server

Эффект после перезапуска следующий:

Наконец, мы настраиваем виртуальную машину на автоматический запуск:

$ virsh autostart sierra
Domain sierra marked as autostarted

После настройки удаленного рабочего стола и удаленного входа в систему вам больше не нужно использовать VNC, отлично! сбейте!

Интеллектуальная рекомендация

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

утилита jsp

Инструмент получения параметров.

Закрытие

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

Автоматически выполнять команду при загрузке / завершении работы под Centos

Давайте взглянемchkconfigНесколько уровней запуска. Уровень 0 означает: выключение. Уровень 1 означает: однопользовательский режим. Уровень 2 означает: многопользовательский режим командной строки без.

Источник

Mac OS X Hints
Adblock
detector