การทำแผนที่ไดรฟ์ USB โดยตรงกับเครื่องเสมือนจริงของ libvirt KVM?


9

ฉันกำลังค้นหาข้อมูลเกี่ยวกับการแมปไดรฟ์ที่มีอยู่ (ไดรฟ์ USB) กับเครื่องเสมือน KVM โดยใช้ libvirt ฉันไปที่http://libvirt.org/formatstorage.html#StoragePoolTargetแล้ว แต่ฉันไม่เข้าใจว่าต้องใช้ตัวเลือกใดเพื่อเปิดเผยอุปกรณ์ที่มีอยู่กับ VM (หรือถ้าเป็นไปได้)

จากสิ่งที่ฉันกำลังอ่านtargetองค์ประกอบคาดว่าpathองค์ประกอบไปยังโฟลเดอร์บนเครื่องเพื่อจัดเก็บภาพตามไฟล์ สามารถpathเป็นอุปกรณ์เช่น/dev/sdc1? ด้วยtypeของraw?

คำตอบ:


9

ลองดู 'USB สวิง | ใช้ส่วน Libvirt 'ของหน้านี้จาก Edubuntu wiki ข้อมูลเพิ่มเติมที่นี่และที่นี่

หากคุณไม่ได้วางแผนที่จะเสียบปลั๊ก / ถอดไดรฟ์ usb ในขณะที่แขกกำลังใช้งานอยู่คุณสามารถลองเพิ่มหัวข้อเช่น

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

ไปยังไฟล์นิยาม XML ของ VM ของคุณ เพียงแค่เปลี่ยนแหล่งที่มา dev เพื่อให้ตรงกับสิ่งที่ได้รับมอบหมายให้กับ usb ของคุณเมื่อเสียบเข้ากับอย่างไรก็ตามคุณไม่สามารถรับประกันได้ว่าการมอบหมาย dev ของ usb จะยังคงอยู่ในการรีบูตถ้าอุปกรณ์อื่น ๆ ถูกเพิ่มหรือลบออก ลิงก์แรกด้านบนแทน

ในกรณีที่การเชื่อมโยงหายไปนี่คือส่วน passthrough USB ที่เกี่ยวข้องของเอกสารที่เชื่อมโยง:

ใช้ Libvirt

ยิงขึ้น vm ที่มีอยู่ก่อน

virsh start maverick2

เสียบไดรฟ์ usb
พบที่อยู่ usb ที่ใช้lsusbซึ่งทำให้ฉัน
{{ Bus 002 Device 006: ID 1058:1023 Western Digital Technologies, Inc. }}}

กำหนดไฟล์ xml ด้วยข้อมูลอุปกรณ์:

<hostdev mode='subsystem' type='usb'> <source> <vendor id='0x1058'/> <product id='0x1023'/> </source> </hostdev>
ผ่านไดรฟ์ usb ไปที่ vm

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

อย่างไรก็ตามสิ่งนี้ไม่ทำงานเมื่อเปิดใช้งาน apparmor คุณต้องปิดการใช้งานเครื่องมือหรือเพิ่ม

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

เพื่อ/etc/apparmor.d/libvirt-qemu(ซึ่งให้แขกทุกคนสามารถเข้าถึงอุปกรณ์โฮสต์ทางกายภาพ) หรือ

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

ซึ่งจะให้แขกที่เข้าใช้งานเพียงคนเดียวเท่านั้น (ขอบคุณ jdstrand สำหรับความช่วยเหลือในการทำให้ตรง)


1
ขอบคุณหน้านั้นมีประโยชน์มาก ฉันทำให้มันทำงานได้ แต่แทนที่จะเป็นผู้ขายและผลิตภัณฑ์ฉันใช้addressองค์ประกอบ เมื่อใช้ผู้จำหน่ายและผลิตภัณฑ์ฉันไม่สามารถเชื่อมต่อไดรฟ์ USB 2 ตัวที่เหมือนกันได้ มันจะผ่านคนแรกเท่านั้น
Andy Shinn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.