• Как выполнить запуск MacOS в KVM FEDORA linux?

    smorman
    @smorman
    When In Rome do as The Romans do...
    Создаю ВМ так (или тоже самое, но через sudo):
    virt-install --virt-type=kvm --name ubuntu --ram=2048 --vcpus=2 --cpu host --hvm --disk path=/home/user/libvirt/images/ubuntu,size=30,format=raw --cdrom /home/user/Загрузки/mini.iso --osinfo detect=on,require=off --graphics spice --boot uefi --destroy-on-exit &

    Вместо user пишешь Имя пользователя в системе...

    В Arch Linux я стартую так через sudo:
    sudo virsh start os; sudo virt-viewer -w -d os &

    А в Ubuntu так:
    virsh start os; virt-viewer -c qemu:///system -w -d os &

    Вместо os имя твоей ВМ...
    Ответ написан
    Комментировать
  • Как выполнить запуск MacOS в KVM FEDORA linux?

    @SunTechnik
    Так там ругань на права доступа.
    Покажите какие права у файла, на который ругается. Дайте необходимые права...
    Ответ написан
    Комментировать
  • Как реализовать взаимодействие виртуальной ОС с переферией для прошивки?

    @rPman
    Проброс устройств в виртуальную машину бывает разный, в зависимости от вида подключения, самого устройства, действия могут отличаться от 'вставил и работает' (очень и очень редко) до 'работает только если звезда сойдутся и если запускать заранее подготовленный непростой набор команд перед вставкой устройства и после'.

    Причина - нет адекватной поддержки проброса устройств, чаще всего она ограничена либо работает только при опредленных условиях и по разному на разных устройствах (в смысле компьютер), зависит от производителя процессора intel/amd, возможностей материнки и кучи других мелких нюансов (например десктопные материнки чаще всего ограничивают функционал в биосе). С момента активного использованиея EFI биосов, это еще сильнее усложнилось.

    * Итак - проброс всего pci(-e) устройства вместе с контроллерами и соответственно устройствами, через него подключаемыми. Это самый удобный с точки зрения использования способ (потому как после запуска виртуальной машины контроллер уже доступен внутри и чаще всего без дополнительных движений видит устройство 'как родное'.

    В linux мне известно что это поддерживает только qemu/kvm и поддержка требует соответствующие аппаратные возможности (IOMMU/VT-d плюс в принципе аппаратная виртуализация), даже некоторые gpu могут быть так проброшены внутрь виртуалки, производители видеокарт об этом знают и старательно ставят палки в колеса, так как такой функционал они хотят чтобы пользователи использовали только с их 10х дороже серверными вариантами видеокарт). Требует хорошего прогружения в настройки linux, хотя бы чтобы исключить инициализацию устройство самим linux (некоторые устройства не любят включаться два раза подряд без железной перезагрузки).

    * Промежуточный вариант - проброс USB устройств. Это установка в гостевой операционной системе специального драйвера USB который по сети или каким-либо другим способом (например virtualbox usb при установке проприетарного guest additions) транслирует весь трафик, включая управляющий с хост машины для выбранного usb устройства или контроллера. Точно помню отдельные приложения для трансляции usb по сети между машинами даже без виртуализации, но лично сам не пользовался, гуглите решения обычно платные.

    * Проброс 'блочного устройства' (читай дисков или отдельных разделов, и даже файлов), в этом случае гостевая ос не имеет доступа к самому устройству, но только к данным на нем. Формально это просто подключение диска из файла (потому как даже в windows диск и раздел это буквально файл, который можно открыть fopen по специальному имени). Разные системы виртуализации дают разный интерфейс и удобство. qemu с тем же libvirt - удобнее чем к примеру virtualbox (там нужно в консоли специальную 'скрытую' команду использовать)

    p.s. Проброс видеоускорителя - есть еще протоколы spice но на сколько я знаю они не достаточно функциональны
    Ну и проброс всякой мелочовки типа клавиатура, мышь, планшет/сенсорный экран, мониторы. Это все виртуальные сущности, реальное железо тут не пробрасывается.

    p.p.s. драйвера windows для гостевых систем с каждым разом становятся все хуже и хуже, если я верно понял палки в колеса вставляет сама майкрософт, например windows 10 адекватно в virtualbox уже не работает gpu без глюков (я обхожу большинство проблем только с помощью rdp подключения)
    Ответ написан
    Комментировать
  • Как реализовать взаимодействие виртуальной ОС с переферией для прошивки?

    hint000
    @hint000
    у админа три руки
    Пробрасывать USB-устройство в виртуальную машину.
    Подключаете устройство к хосту, прописываете в настройках виртуальной машины, что такое-то устройство нужно отдать под управление виртуальной машины. Когда стартуете виртуалку, то устройство перестанет быть доступно на хосте и будет доступно только из виртуалки. "Горячее подключение" (т.е. без перезапуска виртуалки) скорее всего не будет работать, только "холодное".

    P.S. надеюсь, в качестве гипервизора вы используете Qemu-KVM, а не богомерзкий VB.

    P.P.S. мне-то на практике приходилось пробрасывать только аппаратный USB-ключ,
    а вот есть человек Денис _______________ - он собаку съел на пробросе в виртуалку даже видеокарты (и статья на Хабре есть https://habr.com/ru/articles/575654/ https://habr.com/ru/articles/448312/ ). Это к тому, что при необходимости можно не только USB-устройства пробросить, но и PCI-устройства.
    Ответ написан
    1 комментарий