Как я загружаюсь от liveusb, использующего qemu-kvm?

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

27
03.05.2012, 02:15
5 ответов

qemu-kvm -hdb <device>, где <device> карта с интерфейсом USB (например. /dev/sdb), должен сделать это (протестированный с Ubuntu 12.04 на карте с интерфейсом USB, и это работает).

Вы должны будете записать разрешение в устройство (т.е. быть root или измените его полномочия).

23
27.01.2020, 19:39
  • 1
    Хороший ответ. BTW при необходимости в легком интерфейсе для управления VMs, дают virt-менеджеру попытку. –  wazoox 03.05.2012, 00:19
  • 2
    Так же, как подсказка: Я попробовал VirtualBox вместо kvm для тестирования моей живой палки usb, и это НАМНОГО быстрее. Необходимо использовать эту команду в качестве корня для создания vmdk файла, который будет использоваться в VirtualBox: VBoxManage internalcommands createrawvmdk -filename .VirtualBox/HardDisks/usbdisk.vmdk -rawdisk /dev/sdb –  Marc MAURICE 17.03.2013, 10:37
  • 3
    Просто маленькое примечание к сам здесь - использует диск/узел устройства в -hdb (например. /dev/sdb); НЕ раздел (как в /dev/sdb4) –  sdaau 28.05.2013, 17:10

Я не знаю, почему точно, но ответ Renan не вполне работал на меня. KVM заявила мне, она не могла найти загрузочный диск (несмотря на раздел usb отмеченным как таковой).

Однако я нашел другое решение. Получите USB-устройство VendorID:ProductID с lsusb. Пример:

$ lsusb
...
Bus 002 Device 007: ID 0781:5406 SanDisk Corp. Cruzer Micro U3

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

sudo  kvm -m 512 -smp 1 -drive file=/path/to/hardisk/file.img -usb \ 
-usbdevice host:0781:5406 -boot menu=on

Потребуйте у F12 меню, выберите USB-устройство, это работает. Существует, вероятно, способ управлять начальной загрузкой usb, не будучи должен назвать меню начальной загрузки, но я не нашел никого в человеке kvm.

8
27.01.2020, 19:39

Если Вы хотите использовать изображение liveusb вместо физической карты с интерфейсом USB, можно сделать это с

$ kvm -usbdevice disk:/path/to/liveusb.img -boot menu=on ...

Без "-загружают menu=on", kvm будет всегда предпочитать жесткий диск, который Вы устанавливаете с "-диск" или "-HD [a|b|c|d]".

1
27.01.2020, 19:39

QEMU-KVM исчез. Используйте намек в Начать QEMU, придавая ему путь к корню Linux . Это означает

qemu-system-x86_64 -usb -usbdevice disk:/dev/sdb

, где / dev / sdb - это ваше необработанное устройство (не раздел) USB-накопителя, которую вы хотите загрузить.

(однако, по состоянию на 12/2014, это было для меня Flaky. Загрузка Ubuntu-Gnome 14.10 результатов в конце концов в панике ядра на палочке, подтвержденную для загрузки, просто отлично в металле.)

/ IAW

26
27.01.2020, 19:39

Я сделал это, сначала создав гостя, используя, например. диспетчер virt -, затем отредактируйте файл конфигурации virsh для загрузки с USB:

  1. Изменить файл конфигурации для виртуальной машины:

    # virsh edit TAILS
    
  2. Удалить элемент <boot>из элемента <os>. (Остальную часть элемента <os>оставьте нетронутой. )Здесь нельзя использовать <boot>, так как порядок загрузки будет указан на шаге 4.

  3. Получите идентификатор поставщика и продукта для USB-устройства, содержащего работающую систему:

    # lsusb -v | grep -E '\<(Bus|iProduct|bDeviceClass|bDeviceProtocol)' 2>/dev/null
    

    Это выдает результат, подобный:

Bus 002 Device 007: ID 090c:1000 Silicon Motion, Inc. - Taiwan (formerly Feiya Technology Corp.) Flash Drive
  bDeviceClass            0 
  bDeviceProtocol         0 
  iProduct                2 

Идентификатор поставщика — это первые четыре шестнадцатеричных цифры после «ID» в первой строке, в данном примере 090c. Идентификатор продукта — это последние четыре шестнадцатеричных цифры после двоеточия, здесь 1000.

  1. В редакторе virsh добавьте элемент <hostdev>для вашего USB-устройства внутри элемента <devices>(, который уже должен существовать ). Подробные инструкции/примеры для этого элемента находятся по адресу https://libvirt.org/formatdomain.html#elementsHostDev. lsusbдает значения в шестнадцатеричном формате, поэтому используйте префикс 0x, если вы не хотите по какой-либо причине преобразовать значения.
<devices>
  <hostdev mode='subsystem' type='usb'>
    <source startupPolicy='mandatory'>
      <vendor id='0x090c'/>
      <product id='0x1000'/>
    </source>
    <boot order='1'/>
  </hostdev>
</devices>
  1. Сохраните и выйдите из редактора virsh, а затем загрузите виртуальную машину обычным способом. (Я использую virt -менеджер, но команда загрузки строки -использует тот же файл конфигурации.)
2
09.03.2020, 20:44

Теги

Похожие вопросы