Подключение iPhone к виртуальной машине libvirt под управлением OSX

Я создал виртуальную машину OSX Mojave и пытаюсь передать ей iPhone, чтобы использовать XCode. Я тестировал передачу клавиатуры гостю, и это нормально работает. Однако iPhone этого не делает.

Когда я использую virt-manager для добавления хост-устройства USB, iPhone издает звук, чтобы указать, что он подключен, однако он не выглядит подключенным к гостю.

Я заметил некоторые вещи, которые могут помочь в решении этой проблемы:

Если я добавляю хост-устройство USB, а затем очень быстро переключаюсь на виртуальную машину и запускаю system_profiler SPUSBDataType, iPhone отображается как подключенный. Однако это длится всего несколько секунд. Запуск system_profiler SPUSBDataType через несколько секунд показывает, что iPhone больше не подключен.

Я тестировал передачу iPhone гостевой системе Linux. Когда он передается гостю Linux, кажется, что он остается подключенным.

Люди сообщают об успешной передаче iPhone на виртуальную машину VMWare путем добавления usb.quirks.device0 = "0x05ac:0x12a8 skip-reset, skip-refresh, skip-setconfig" в свой файл VMWare VMX. Я упоминаю об этом, поскольку считаю, что репликация этих настроек в libvirt каким-то образом может решить проблему.

Когда я добавляю хост-устройство USB, я получаю это в dmesg на хосте:

[178165.281031] audit: type=2501 audit(1540468134.413:1654): pid=604 uid=0 auid=4294967295 ses=4294967295 msg='virt=kvm resrc=cgroup reason=allow vm = "macos-high-sierra" uuid=2aca0dd6-cec9-4717-9ab2-0b7b13d111c3 cgroup = "/sys/fs/cgroup/devices/machine.slice/machine-qemu\x2d34\x2dmacos\x2dhigh\x2dsierra.scope/" class=path path = "/dev/bus/usb/003/050" rdev=BD:131 acl=rw exe = "/usr/bin/libvirtd" hostname=? addr=? terminal=? res=success'
[178165.284135] audit: type=2501 audit(1540468134.417:1655): pid=604 uid=0 auid=4294967295 ses=4294967295 msg='virt=kvm resrc=dev reason=attach vm = "macos-high-sierra" uuid=2aca0dd6-cec9-4717-9ab2-0b7b13d111c3 bus=usb device = "003.050" exe = "/usr/bin/libvirtd" hostname=? addr=? terminal=? res=success'
[178165.562355] usb 3-11: reset high-speed USB device number 50 using xhci_hcd
[178165.702290] usb 3-11: device firmware changed
[178165.702489] usb 3-11: USB disconnect, device number 50
[178165.825523] usb 3-11: new high-speed USB device number 51 using xhci_hcd
[178165.966944] usb 3-11: New USB device found, idVendor=05ac, idProduct=12a8, bcdDevice= 6.01
[178165.966946] usb 3-11: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[178165.966948] usb 3-11: Product: iPhone
[178165.966949] usb 3-11: Manufacturer: Apple Inc.
[178165.966950] usb 3-11: SerialNumber: 71e8245949fde7db02fa88199e22c939196f3ec1

Похоже, что iPhone повторно подключается (может быть, он меняет режим подключения?), И libvirt не передает его обратно гостю?

Я назначил за это вознаграждение, потому что не нашел решения для подключения iPhone, проходящего через USB, с QEMU под управлением OSX. Для VMWare решение - здесь, как вы сказали.

SnakeDrak 09.04.2019 10:55
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
5
1
1 654
0

Другие вопросы по теме