USB sürücüsünü doğrudan libvirt KVM sanal makinesine eşleme?


9

Varolan bir sürücüyü (USB sürücüsü) libvirt kullanarak KVM sanal makinesine eşleme hakkında bilgi arıyorum. Http://libvirt.org/formatstorage.html#StoragePoolTarget üzerinden devam ediyorum . Ancak mevcut bir cihazı VM'ye (veya hatta mümkünse) maruz bırakmak için hangi seçeneklerin gerekli olduğunu tam olarak anlamıyorum.

Okuduğum targetöğeden, öğe, pathdosya tabanlı bir görüntüyü depolamak için bir öğeyi makinedeki bir klasöre bekliyor . Can pathgibi bir cihaz böyle olacak /dev/sdc1? ile typearasında raw?

Yanıtlar:


9

'USB geçidi | Bu sayfanın Edubuntu wiki bölümünden Libvirt'i kullanma . Burada ve burada daha fazla bilgi .

Konuk çalışırken USB sürücüsünü çalışırken takıp çıkarmayı planlamıyorsanız, aşağıdaki gibi bir bölüm eklemeyi de deneyebilirsiniz

<disk type='block' device='disk'>
  <driver name='qemu' type='raw'/>
  <source dev='/dev/sdb'/>
  <target dev='sdb' bus='scsi'/>
</disk>

VM'nizin xml tanım dosyasına. Sadece takıldığında usb'nize atanmış olanla eşleştirmek için kaynak geliştiriciyi değiştirin. Ancak, diğer cihazlar eklenir veya çıkarılırsa usb'nin dev tahsisinin yeniden başlatılacağını garanti edemezsiniz, bu yüzden yaklaşımı tavsiye ederim. yukarıdaki ilk bağlantı yerine.

Bağlantının kaybolması durumunda, bağlı dokümanların ilgili USB geçidi bölümü:

Libvirt'i kullanma

önceden var olan bir VM'yi ateşledi

virsh start maverick2

takılı bir usb sürücü
kullanarak usb adresini kullanarak lsusb, bana verdi
{{ Bus 002 Device 006: ID 1058:1023 Western Digital Technologies, Inc. }}}

cihaz bilgisiyle bir xml dosyası tanımladı:

<hostdev mode='subsystem' type='usb'> <source> <vendor id='0x1058'/> <product id='0x1023'/> </source> </hostdev>
usb sürücüsünü vm'ye geçti

sudo virsh attach-device maverick2 /tmp/a.xml

Ancak bu, apparmor etkin durumdayken çalışmaz. Apparmor'u devre dışı bırakmalı veya

/dev/bus/usb/*/[0-9]* rw,

birine /etc/apparmor.d/libvirt-qemu(tüm konuklarına fiziksel ana cihazların tam erişim veren) veya

/etc/apparmor.d/libvirt/libvirt-<uuid>

Bu erişim sadece bir konuk verecek. (Bunu düzeltmek için jdstrand'a teşekkürler.)


1
Teşekkürler, bu sayfa çok yardımcı oldu. Çalıştırdım. Ancak bir satıcı ve ürün yerine, addressunsuru kullandım . Satıcı ve ürün kullanırken aynı olan 2 USB sürücüsünü monte edemedim. Sadece ilkinden geçecekti.
Andy Shinn
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.