Home » Виртуализация » Proxmox » Установка macOS в Proxmox

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

Возникла у меня идея посмотреть на современную систему компании Apple для PC, не покупая само устройство, так как большой надобности в этом нет. Далее расскажу, как установить систему MacOS на виртуальную машину гипервизора KVM под управлением Proxmox. Пришлось немного поразбираться, так как актуального пошагового руководства не нашел.

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом "Administrator Linux. Professional" в OTUS. Курс не для новичков, для поступления нужно пройти . Цены 2020 года.

Зачем устанавливать macos на обычный компьютер?

В данном случае под обычным компьютером я имею ввиду то, что не относится к железу от Apple, на котором, и только на котором, должна работать MacOS. Как известно, существует проект Hackintosh, который позволяет установить macos не только на виртуальные машины, но и обычные ноутбуки и pc. Видел даже услугу под ключ, где вам на чистый ноут поставят hackintosh. Только нужно будет купить железо, которое гарантированно поддерживается.

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

macos on proxmox vm

Сразу скажу, что способов практического использования подобной системы не много, так как без графического ускорителя macos работает очень плохо. Вся анимация тормозит. Я не прорабатывал вопрос проброса видеокарты в виртуальную машину с macos. Мне он видится очень нетривиальным и без большой надобности разбираться с этим не захотелось. Но при этом нормально работает сеть, к системе можно подключаться по ssh, так что кому-то может и пригодится.

Я все операции проделывал на гипервизоре Proxmox 7.0, работающем на базе процессора Intel i5.

Подготовка установочного iso образа macos

Начнём с того, что подготовим 2 iso образа для установки macos:

  1. OpenCore.iso - качаем его из этого репозитория. Данный образ будет загрузочным. Он каким-то образом убеждает установщик самой системы, что работает на железе apple. Это его основная функция.
  2. Catalina-installer.iso - стандартный установщик macos. Его мы подготовим далее.

Для того, чтобы начать установку macos, нам нужно подготовить образ системы. Для этого копируем себе репозиторий - https://github.com/kholia/OSX-KVM.

# git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git

В корне проекта есть python скрипт fetch-macOS-v2.py. Запускаем его и выбираем установку Catalina.

# cd OSX-KVM
# ./fetch-macOS-v2.py

Загрузка BaseSystem.dmg

Скрипт скачает базовый образ BaseSystem.dmg. Нам нужно будет его сконвертировать в iso.

# qemu-img convert BaseSystem.dmg -O raw Catalina-installer.iso

Оба образа - OpenCore.iso и Catalina-installer.iso копируем в репозиторий образов proxmox.

Создание виртуальной машины для MacOS

Теперь идём в веб интерфейс proxmox и создаем виртуальную машину для MacOS. Я ей выделю 4 ядра и 8 гигабайт оперативной памяти. Количество ядер не должно быть 6. Я лично пробовал с 4 или 8 ядрами. Если сделать 6, ничего не получится. Динамическую память тоже обязательно выключаем.

Не буду расписывать все шаги, а просто покажу картинки настроек. Они будут предварительные. Затем завершим подготовку виртуальной машины в консоли. А пока создаём через веб интерфейс.

После создания открываем список оборудования VM и добавляем туда iso образ Catalina-installer.iso.

Подключение системного iso образа macos catalina

После создания, виртуальную машину не запускаем. Перемещаемся в консоль гипервизора и открываем конфиг виртуальной машины в директории /etc/pve/qemu-server. Имя конфиг виртуальной машины будет равен её номеру. В моем случае это 135.conf. Нам нужно привести конфиг к следующему виду. Я выделю то, что я добавил и изменил.

args: -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -cpu host,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc
balloon: 0
bios: ovmf
boot: order=ide2
cores: 4
cpu: Penryn
efidisk0: local-500G:135/vm-135-disk-0.qcow2,size=128K
ide0: local-500G:iso/Catalina-installer.iso,cache=unsafe,size=2096528K
ide2: local-500G:iso/OpenCore-v13.iso,cache=unsafe,size=150M
machine: q35
memory: 8196
name: macos-test
net0: vmxnet3=26:06:41:79:8E:7A,bridge=vmbr0
numa: 0
ostype: other
sata0: raid1:vm-135-disk-0,cache=unsafe,discard=on,size=128G,ssd=1
scsihw: virtio-scsi-pci
smbios1: uuid=ed285c88-e9b7-41e9-b8cc-c18467097fb1
sockets: 1
vga: vmware
vmgenid: 1d33ec8f-921c-41eb-9577-6b92088d2902

В веб интерфейсе настройки должны выглядеть примерно вот так:

Все настройки VM для macOS на Proxmox

Если у вас процессор не Intel, а AMD, параметры процессора следует использовать другие:

-cpu Penryn,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+fma4,+bmi1,+bmi2,+xsave,+xsaveopt,check

В консоли гипервизора делаем еще одну настройку, меняя параметры модуля ядра kvm.

echo "options kvm ignore_msrs=Y" >> /etc/modprobe.d/kvm.conf && update-initramfs -k all -u

Активируем эту настройку без перезагрузки:

modprobe kvm options ignore_msrs=Y

У нас всё готово к тому, чтобы начать установку MacOS на виртуальную машину Proxmox.

Установка MacOS на Proxmox

Запускаем виртуальную машину и переходим в консоль. Если всё сделали правильно на предыдущих шагах, должны увидеть следующую картинку.

Установка MacOS на Proxmox

Мышка в этом режиме не будет работать, так что стрелками на клавиатуре выбираем macOS Base System и жмём Enter.

Некоторое время будете видеть надкусанное яблоко с прогресс баром.

Установка macOS Base System

Если на предыдущих этапах всё сделали правильно, то должны увидеть утилиты macOS.

Disk Utility

Нам надо выбрать Disk Utility. Здесь уже должна работать мышка. Выберите свой основной диск и очистите его, нажав Erase.

Создание основного диска для системы

После того, как закончите очистку, закрывайте утилиту и переходите в главное меню. Здесь вам нужно будет выбрать Reinstall macOS.

Reinstall macOS

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

Выбор диска для установки системы

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

macOS catalina progress installation on proxmox

После завершения этого этапа VM автоматически перезагрузится и встретит вас подобным меню.

macOS Installer

Нужно клавиатурой выбрать macOS Installer и установка продолжится. Пройдёт еще 10-15 минут, после которых система автоматически перезагрузится ещё раз. Далее вас встретит очередной загрузчик, где нужно выбрать ваш основной диск, на который установлена система. В моем случае это Main.

Загрузка установленной системы

Дальше запускается стандартная преднастройка системы. Нужно будет выбрать страну, язык, логин, пароль и т.д. От использования учётной записи с Apple ID можно отказаться, так что никакие дополнительные учетные записи для работы macOS делать не нужно будет.

Система MacOS работает в виртуальной машине Proxmox

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

Видео установки macOS

Мне очень сильно помогло видео на youtube на данную тему. Оно позволило быстро въехать в тему, чтобы понять этапы, по которым надо пройти.

В видео не рассмотрен момент с получением osk key. Автор взял его со своего текущего mac. А что делать тем, у кого его нет? Я не сразу понял. В итоге нашёл информацию, что на последних версиях OpenCore ключ не имеет значения. Можно указать любой, что я и сделал. После этого всё получилось.

Заключение

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

Проблему с тормозами графики частично можно решить, если подключаться к системе через встроенный в macos Screen Sharing. Но это возможно только если у вас есть под рукой нормальный Mac. В этом случае можете использовать подобное подключение. Так же с помощью этого шаринга можно подключиться по VNC, но качество графики всё равно будет очень низкое, сопоставимое с консолью proxmox.

Онлайн курс по Linux

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом "Administrator Linux. Professional" в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Что даст вам этот курс:
  • Знание архитектуры Linux.
  • Освоение современных методов и инструментов анализа и обработки данных.
  • Умение подбирать конфигурацию под необходимые задачи, управлять процессами и обеспечивать безопасность системы.
  • Владение основными рабочими инструментами системного администратора.
  • Понимание особенностей развертывания, настройки и обслуживания сетей, построенных на базе Linux.
  • Способность быстро решать возникающие проблемы и обеспечивать стабильную и бесперебойную работу системы.
Проверьте себя на вступительном тесте и смотрите подробнее программу по . Цены 2020 года.

Помогла статья? Подписывайся на telegram канал автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Автор Zerox

Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

3 комментария

  1. Спасибо.
    По https://manjaro.site/?s=proxmox также есть касаемо установки.

  2. Заводы и фабрики остановлены , молодежи негде работать, поэтому многие ринулись изучать новую нишу - язык программирования для мобильной разработки Apple iPhone - Swift.
    Для изучения необходим хотя бы подержанный телефон iPhone (150$) и подержанный Макбук за 50 тыщ. Наверно, вместо макбука на первых порах можно установить виртуальный macos со средой разработки x-code...

Добавить комментарий

Ваш адрес email не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.