OpenGL + 3D Rendering ทำงานได้ดีกับ iommu หากคุณรองรับ VT-D บนเมนบอร์ด + โปรเซสเซอร์ของคุณ
เพิ่ม intel_iommu=บน iommu=pt
ถึง /etc/default/grub/
อัปเดตด้วงและรีบูต (เอเอ็มดีคือ amd_iommu=เปิด
)
เช่น.:
$ grep CMDLINE_LINUX_DEFAULT /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt"
เพื่อความสมบูรณ์ควรกล่าวถึง /etc/default/grub/
จำเป็นต้องแก้ไขในฐานะรูท (ใช้ ซูโด
หรือ สุ
).
คำสั่งอัพเดตคือ:
ปรับปรุงด้วง
สำหรับ Debian/Ubuntu/อนุพันธ์ และ:
grub2-mkconfig -o /boot/grub/grub.cfg
สำหรับ distros อื่น ๆ ส่วนใหญ่ (ในบาง distros grub2-mkconfig
ชื่อคำสั่ง ด้วง mkconfig
).
- ควรสังเกตว่านี่เป็นโหมดพาสทรู (แชร์) ที่ "อ่อนแอ" ซึ่งไม่เข้าครอบงำอุปกรณ์ทั้งหมดการส่งผ่าน "จริง" จะลบอุปกรณ์ออกจากการควบคุมของโฮสต์อย่างสมบูรณ์ ที่ต้องใช้ก
vfio-pci=vendId:devId
ต้นขั้วทั้งในด้วงหรือ /etc/modprobe.d
(และสร้าง initramfs ใหม่) สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการส่งผ่าน นี่เป็นจุดเริ่มต้นที่ดี: https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF
- มีวิธีที่ซับซ้อนยิ่งขึ้นในการแบ่งปันกราฟิกของคุณ ผู้ให้บริการแต่ละรายมีเวอร์ชันของตัวเอง ตัวอย่างเช่น Intel-GVT-g สำหรับ Intel iGD: https://wiki.archlinux.org/title/Intel_GVT-g
นี่ของฉัน xml
สำหรับอุปกรณ์ที่เป็นปัญหา:
Display Spice - หมายเหตุ: ด้วย passthrough คุณไม่สามารถเปิดใช้งานเซิร์ฟเวอร์ระยะไกลได้:
<graphics type="spice">
<listen type="none"/>
<image compression="off"/>
<gl enable="yes"/>
</graphics>
Video Virtio (เปลี่ยนจาก QXL):
<video>
<model type="virtio" heads="1" primary="yes">
<acceleration accel3d="yes"/>
</model>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x0"/>
</video>
ไม่เกี่ยวข้อง ฉันใช้อุปกรณ์บล็อก zvol ในการกำหนดค่าตัวติดตั้ง ZFS ของ Ubuntu เป็นตัวเลือกที่มีในเวอร์ชันเดสก์ท็อปของ Ubuntu เท่านั้น:
zvols นั้นยอดเยี่ยมมากเพราะคุณสามารถสลับไปมาระหว่างการใช้งานได้ kvm-qemu
และ [systemd-คอนเทนเนอร์][5]
(เฉพาะลินุกซ์เท่านั้น) - รวมสแนปชอตและส่ง / รับ
แต่เนื่องจาก zvols เลียนแบบดิสก์ปกติ จึงแสดงให้เห็นว่าคุณสามารถใช้ดิสก์เฉพาะสำหรับ VM ของคุณได้หากคุณมีที่ว่างสำหรับติดตั้งเช่นกัน
เมื่อคุณสร้าง zvol ให้สร้างโครงสร้างพาร์ติชัน gpt โดยใช้ fdisk/sgdisk/{g}แยกส่วน
ฯลฯ เช่นเดียวกับที่คุณทำกับดิสก์อื่น ๆ เมื่อฉันสร้างพาร์ติชัน gpt ฉันใช้ Windows ISO เพื่อทำการแบ่งพาร์ติชันจริง
btrfs
มีบางอย่างที่คล้ายกันซึ่งควรได้รับการสนับสนุนที่ดีกว่า systemd-nspawn
แต่ฉันไม่แน่ใจว่าคุณสามารถใช้งานมันเหมือนอุปกรณ์บล็อกได้หรือไม่ คิวมู
.
เคล็ดลับสุดท้าย: ฉันต้องการคัดลอกไฟล์บางไฟล์จากโฮสต์ไปยัง VM คุณไม่สามารถเมานต์โฟลเดอร์จาก Linux --> Windows ได้ แต่ฉันสามารถเมานต์พาร์ติชัน (#3) Windows ที่สร้างบน zvol ในโฮสต์เป็นพาร์ติชัน NTFS ปกติได้
ดังนั้นในขณะที่ปิด VM ฉันติดตั้งพาร์ติชัน 3 บน /mt
คัดลอกโฟลเดอร์ที่ฉันต้องการ จำนวน / ลบ
พาร์ติชันและเริ่มการสำรองข้อมูล VM
บางครั้งมันก็ยุ่งยากเล็กน้อยที่จะคิดออกว่าจะทำอย่างไรในสถานการณ์นั้น ฉันเลยคิดว่าฉันจะยอมทำอย่างนั้น ผู้คนในคู่มือที่ฉันได้อ่านได้แนะนำให้ตั้งค่าการแชร์ Samba หากคุณต้องการบางสิ่งที่บ่อยกว่านี้ หรือฉันยังรีโมตไปยัง Windows VM โดยใช้ OpenSSH-Server และ PSRemoting อีกด้วย ดังนั้นจึงมีตัวเลือกมากมาย (Windows มี SSHFS ในตอนนี้ด้วย ถ้าคุณเช็คเอาท์ ชอคโกแลต).