Содержание статьи
Что такое UTM?
К виртуалкам вроде VirtualBox или VMware все уже давным‑давно привыкли: подобные инструменты существуют для большинства современных «настольных» операционок. В iOS до недавнего времени средств виртуализации не было и в помине (по крайней мере, широкая публика о них ничего не знала). И вот — свершилось: для мобильных устройств Apple наконец‑то появился полноценный инструмент виртуализации, поддерживающий к тому же большое число процессорных архитектур.
UTM может работать без джейлбрейка на iOS 11, 12 и 13, а также на устройствах с чипом А12 под управлением операционной системы версий 14.2 и 14.3. При этом придется использовать сертификат разработчика, поскольку UTM устанавливается не из официального магазина App Store, а из стороннего хранилища AltStore. Как известно, бесплатные сертификаты разработчиков для iOS должны переподписываться каждые семь дней, и AltStore автоматизирует этот процесс. Джейлбрейк необходим только для запуска приложения на iOS 14 старших версий, при этом сами создатели UTM рекомендуют использовать Jitterbug или AltJIT для установки приложения.
Виртуальная машина UTM поддерживает более 30 процессоров, включая х86_64, RISC-V и ARM64. В основе UTM лежит код QEMU. Поскольку в устройствах iOS отсутствует поддержка аппаратной виртуализации, вместо ускорителя KVM разработчики использовали TCG, который выполняет динамическую трансляцию кода и JIT-компиляцию. На практике это означает, что даже ARM-код для запуска в UTM должен предварительно компилироваться в JIT, а это заметно снижает производительность приложений. Кроме того, поскольку виртуализация GPU не поддерживается, отсутствуют DirectX и OpenGL, что ограничивает запуск большинства современных игр под Windows. Однако приложения и игры, не требующие поддержки графики, под этим эмулятором пойдут.
Установка
На устройство с джейлбрейком
Если на твоем iPhone или iPad имеется джейлбрейк, установка UTM не представляет ни малейших сложностей. Для начала необходимо скачать и поставить на устройство приложение AppSync Unified, которое можно получить из репозитория https://
. Для этого открой Cydia, нажми кнопку «Источники» в нижней части окна, затем надпись «Правка» в правом верхнем углу. Теперь надпись «Добавить» слева вверху — введи URL https://
в открывшемся окне и нажми «Добавить». После этого в списке источников перейди в только что подключенный репозиторий Karen’s Repo и установи из него приложение AppSync Unified.
Затем аналогичным образом подключи в Cydia репозиторий https://
и установи из него само приложение UTM.
Установка AppSync Unified и UTM |
На устройство без джейлбрейка
Установка UTM в iOS без джейлбрейка выглядит чуть сложнее, но только на первый взгляд. Потребуется установить на твоем айфоне AltStore. Делается это вкратце так: установи на компьютере последние версии iTunes и iCloud, затем скачай с сайта altstore.io программу AltServer — для ее использования необходима как минимум Windows 10.
Подключи iPhone к компьютеру, закрой iTunes, щелкни в системном трее на значке AltServer и выбери Install AltStore → Имя твоего устройства. AltStore попросит тебя ввести данные Aple ID — для этого лучше зарегистрировать новую учетку, причем в популярных инструкциях советуют указывать в качестве локации острова Херд и Макдональд, остров Норфолк или Южная Георгия и Южные Сандвичевы острова.
После этого на iPhone нужно открыть настройки, перейти в раздел «Основные → Профили и управление устройством → твой Apple ID → Доверять». Останется только запустить AltStore, открыть окно Settings, выбрать Sign in with Apple ID, после чего следует ввести адрес электронной почты, привязанный к созданному ранее Apple ID, и пароль.
Теперь в настройках AltStore нужно подключить репозиторий https://
и установить UTM оттуда. В качестве альтернативного варианта можно сначала скачать UTM в виде файла .
с GitHub на компьютер, а потом установить его на мобильное устройство с помощью AltStore, не забыв подписать его цифровой подписью.
Создание виртуальной машины
Если ты когда‑либо пользовался VirtualBox, создание новой виртуальной машины в UTM не вызовет у тебя никаких затруднений. После запуска приложения нажми на плюсик в правом верхнем углу экрана. В поле Name введи произвольное имя виртуальной машины, в списке Architecture выбери архитектуру процессора из предложенных вариантов. С полем System чуть сложнее: QEMU, лежащий в основе UTM, эмулирует не только процессор, но и целую аппаратную подсистему на его основе. Список поддерживаемых QEMU систем и отображается в этом меню. В большинстве случаев можно не менять предложенный по умолчанию вариант: он оптимален для выбранной архитектуры процессора.
Выбери объем памяти для виртуальной машины в меню Memory (он, естественно, не может превышать доступный объем оперативки на самом устройстве). Наконец, в списке Setup Drives/Images нужно настроить диск, с которого будет загружаться твоя виртуальная машина. UTM поддерживает формат QCOW2.
Меню Image Location — это не расположение файла образа диска, как можно было бы подумать, а способ монтирования образа. Для эмуляции компьютера рекомендуется выбрать стандартный вариант IDE, для устройств ARM доступен вариант virtio
. При желании ниже на этом же экране можно изменить предложенные по умолчанию настройки дисплея виртуалки и способы ввода — виртуальную клавиатуру и эмуляцию мыши.
Создание виртуальной машины в UTM |
Когда настройка будет завершена, миниатюра виртуальной машины появится на главном экране приложения. Чтобы запустить ее, достаточно тапнуть на этом эскизе. Если к виртуалке, например, подцеплен образ диска с установленной ОС, начнется ее загрузка.
Управление виртуальной машиной
В верхней части экрана работающей виртуальной машины имеется специальная панель, содержащая восемь кнопок. Первые три позволяют выключить, поставить на паузу или перезапустить виртуалку. Нажатие следующих по порядку кнопок разворачивает виртуальную машину на весь экран, открывает или, наоборот, прячет экранную клавиатуру, а также вызывает окно настроек портов и дисков виртуальной машины. Наконец, нажатием крайней правой кнопки можно убрать эту панель с экрана. Как видишь, ничего сложного — этого минимума инструментов вполне достаточно для того, чтобы управлять виртуалкой. Правда, на экране iPhone 7 кнопки выглядят мелковато, а вот на iPad, думаю, будут в самый раз.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»