تعديلات مهمة على Proxmox VE 8 PCI/PCIE، والإصلاحات، والحلول البديلة

T Dylat Mhmt Ly Proxmox Ve 8 Pci Pcie Walaslahat Walhlwl Albdylt



في السنوات الأخيرة، تحسن دعم PCI/PCIE (أي مرور GPU) كثيرًا في الأجهزة الأحدث. لذلك، العادية دليل عبور Proxmox VE PCI/PCIE وGPU يجب أن تعمل في معظم الأجهزة الجديدة. ومع ذلك، قد تواجه العديد من المشكلات في المرور عبر وحدات معالجة الرسومات وأجهزة PCI/PCIE الأخرى على جهاز Proxmox VE الظاهري. هناك العديد من التعديلات/الإصلاحات/الحلول البديلة لبعض مشكلات عبور Proxmox VE GPU وPCI/PCIE الشائعة.

في هذه المقالة، سأناقش بعض مشكلات عبور Proxmox VE PCI/PCIE وعبور GPU الأكثر شيوعًا والخطوات التي يمكنك اتخاذها لحل هذه المشكلات.









جدول المحتويات

  1. ماذا تفعل إذا لم يكن IOMMU Interrupt Remapping مدعومًا؟
  2. ماذا أفعل إذا لم يكن جهاز GPU الخاص بي (أو جهاز PCI/PCIE) ضمن مجموعة IOMMU الخاصة به؟
  3. كيف أقوم بإدراج برامج تشغيل AMD GPU في القائمة السوداء على Proxmox VE؟
  4. كيف أقوم بإدراج برامج تشغيل NVIDIA GPU في القائمة السوداء على Proxmox VE؟
  5. كيف أقوم بإدراج برامج تشغيل Intel GPU في القائمة السوداء على Proxmox VE؟
  6. كيفية التحقق مما إذا كان GPU (أو جهاز PCI/PCIE) يستخدم برنامج تشغيل VFIO على Proxmox VE؟
  7. لقد قمت بإدراج برامج تشغيل AMU GPU في القائمة السوداء، ومع ذلك، لا تستخدم وحدة معالجة الرسومات برنامج تشغيل VFIO، فماذا تفعل؟
  8. لقد قمت بإدراج برامج تشغيل NVIDIA GPU في القائمة السوداء، ومع ذلك، لا تستخدم وحدة معالجة الرسومات برنامج تشغيل VFIO، فماذا تفعل؟
  9. لقد قمت بإدراج برامج تشغيل Intel GPU في القائمة السوداء، ومع ذلك، لا تستخدم وحدة معالجة الرسومات برنامج تشغيل VFIO، فماذا تفعل؟
  10. تستخدم وحدة معالجة رسومات واحدة برنامج تشغيل VFIO، ولكن عند تكوين وحدة معالجة رسومات ثانية، لم تعمل، لماذا؟
  11. لماذا تعطيل تحكيم VGA لوحدات معالجة الرسومات وكيفية القيام بذلك؟
  12. ماذا لو كانت وحدة معالجة الرسومات الخاصة بي لا تزال لا تستخدم برنامج تشغيل VFIO حتى بعد تكوين VFIO؟
  13. لم يُظهر عبور GPU أي أخطاء، لكنني أحصل على شاشة سوداء على الشاشة المتصلة بوحدة معالجة الرسومات التي تم تمريرها إلى Proxmox VE VM، لماذا؟
  14. ما هو خطأ إعادة ضبط بائع AMD وكيفية حله؟
  15. كيفية توفير vBIOS لوحدة معالجة الرسومات التي تم تمريرها على جهاز Proxmox VE الظاهري؟
  16. ماذا تفعل إذا تعطلت بعض التطبيقات في الجهاز الظاهري Proxmox VE Windows؟
  17. كيفية حل مشكلات كسر/تشقق صوت HDMI على أجهزة Proxmox VE Linux الافتراضية؟.
  18. كيفية تحديث Proxmox VE initramfs؟
  19. كيفية تحديث أداة تحميل التشغيل Proxmox VE GRUB؟
  20. خاتمة
  21. مراجع



ماذا تفعل إذا لم يكن IOMMU Interrupt Remapping مدعومًا؟

بالنسبة لعبور PCI/PCIE، تعد إعادة تعيين مقاطعة IOMMU أمرًا ضروريًا.





للتحقق مما إذا كان المعالج الخاص بك يدعم إعادة تعيين مقاطعة IOMMU، قم بتشغيل الأمر أدناه:

$ دمسج | grep -i إعادة رسم خريطة



إذا كان المعالج الخاص بك يدعم إعادة تعيين المقاطعة IOMMU، فسترى نوعًا من الإخراج يؤكد تمكين إعادة تعيين المقاطعة. وإلا فلن ترى أي مخرجات.

إذا لم يكن إعادة تعيين مقاطعة IOMMU مدعومًا على المعالج الخاص بك، فسيتعين عليك تكوين المقاطعات غير الآمنة على خادم Proxmox VE الخاص بك لتمرير أجهزة PCI/PCIE على أجهزة Proxmox VE الافتراضية.

لتكوين المقاطعات غير الآمنة على Proxmox VE، قم بإنشاء ملف جديد iommu_unsafe_interrupts.conf في ال /etc/modprobe.d الدليل وافتحه باستخدام محرر النصوص nano كما يلي:

$ nano /etc/modprobe.d/iommu_unsafe_interrupts.conf

أضف السطر التالي في iommu_unsafe_interrupts.conf ملف واضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف.

الخيارات vfio_iommu_type1allow_unsafe_interrupts=1

بمجرد الانتهاء من ذلك، يجب عليك قم بتحديث initramfs لخادم Proxmox VE الخاص بك .

ماذا أفعل إذا لم يكن GPU الخاص بي (أو جهاز PCI/PCIE) ضمن مجموعة IOMMU الخاصة به؟

إذا كان الخادم الخاص بك يحتوي على عدة فتحات PCI/PCIE، فيمكنك نقل وحدة معالجة الرسومات إلى فتحة PCI/PCIE مختلفة ومعرفة ما إذا كانت وحدة معالجة الرسومات موجودة في مجموعة IOMMU الخاصة بها.

إذا لم ينجح ذلك، فيمكنك محاولة تمكين تصحيح kernel لتجاوز ACS على Proxmox VE.

لمحاولة تمكين تصحيح ACS لتجاوز kernel على Proxmox VE، افتح ملف /etc/default/grub الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/default/grub

أضف خيار تمهيد kernel pcie_acs_override=downstream عند نهاية ال GRUB_CMDLINE_LINUX_DEFAULT .

بمجرد الانتهاء، اضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف والتأكد من ذلك قم بتحديث أداة تحميل التشغيل Proxmox VE GRUB لتصبح التغييرات نافذة المفعول.

يجب أن يكون لديك مجموعة IOMMU أفضل بمجرد تشغيل خادم Proxmox VE الخاص بك.

إذا كانت وحدة معالجة الرسومات الخاصة بك لا تزال لا تحتوي على مجموعة IOMMU خاصة بها، فيمكنك المضي قدمًا خطوة أخرى باستخدام pcie_acs_override=متعددة الوظائف بدلاً من. يجب أن يكون لديك مجموعة IOMMU أفضل.

لو pcie_acs_override=متعددة الوظائف يؤدي إلى تجميع IOMMU أفضل pcie_acs_override=downstream ، فلماذا الاستخدام pcie_acs_override=downstream على الاطلاق؟

حسنًا، الغرض من تجاوز PCIE ACS هو خداع النواة للاعتقاد بأن أجهزة PCIE معزولة عندما لا تكون في الواقع. لذا، فإن تجاوز PCIE ACS يأتي مع مشكلات تتعلق بالأمان والاستقرار. لهذا السبب يجب أن تحاول استخدام خيار تجاوز PCIE ACS الأقل عدوانية pcie_acs_override=downstream أولاً ومعرفة ما إذا تم حل مشكلتك. لو pcie_acs_override=downstream لا يعمل، عندها فقط يجب عليك استخدام الخيار الأكثر عدوانية pcie_acs_override=متعددة الوظائف .

كيف أقوم بإدراج برامج تشغيل AMD GPU في القائمة السوداء على Proxmox VE؟

إذا كنت تريد المرور عبر وحدة معالجة رسومات AMD على أجهزة Proxmox VE الافتراضية، فيجب عليك إدراج برامج تشغيل وحدة معالجة الرسومات AMD في القائمة السوداء والتأكد من أنها تستخدم برنامج تشغيل VFIO بدلاً من ذلك.

أولا، افتح /etc/modprobe.d/blacklist.conf الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/modprobe.d/blacklist.conf

لإدراج برامج تشغيل AMD GPU في القائمة السوداء، أضف الأسطر التالية إلى ملف /etc/modprobe.d/blacklist.conf ملف واضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف.

راديون القائمة السوداء

القائمة السوداء amdgpu

بمجرد الانتهاء من ذلك، يجب عليك قم بتحديث initramfs لخادم Proxmox VE الخاص بك لتصبح التغييرات نافذة المفعول.

كيف أقوم بإدراج برامج تشغيل NVIDIA GPU في القائمة السوداء على Proxmox VE؟

إذا كنت تريد المرور عبر NVIDIA GPU على الأجهزة الافتراضية Proxmox VE، فيجب عليك إدراج برامج تشغيل NVIDIA GPU في القائمة السوداء والتأكد من أنها تستخدم برنامج تشغيل VFIO بدلاً من ذلك.

أولا، افتح /etc/modprobe.d/blacklist.conf الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/modprobe.d/blacklist.conf

لإدراج برامج تشغيل NVIDIA GPU في القائمة السوداء، أضف الأسطر التالية إلى ملف /etc/modprobe.d/blacklist.conf ملف واضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف.

القائمة السوداء الجديدة

القائمة السوداء نفيديا

القائمة السوداء nvidiafb

القائمة السوداء nvidia_drm

بمجرد الانتهاء من ذلك، يجب عليك قم بتحديث initramfs لخادم Proxmox VE الخاص بك لتصبح التغييرات نافذة المفعول.

كيف أقوم بإدراج برامج تشغيل Intel GPU في القائمة السوداء على Proxmox VE؟

إذا كنت تريد المرور عبر Intel GPU على الأجهزة الافتراضية Proxmox VE، فيجب عليك إدراج برامج تشغيل Intel GPU في القائمة السوداء والتأكد من أنها تستخدم برنامج تشغيل VFIO بدلاً من ذلك.

أولا، افتح /etc/modprobe.d/blacklist.conf الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/modprobe.d/blacklist.conf

لإدراج برامج تشغيل Intel GPU في القائمة السوداء، أضف الأسطر التالية إلى ملف /etc/modprobe.d/blacklist.conf ملف واضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف.

القائمة السوداء snd_hda_intel

القائمة السوداء snd_hda_codec_hdmi

القائمة السوداء i915

بمجرد الانتهاء من ذلك، يجب عليك قم بتحديث initramfs لخادم Proxmox VE الخاص بك لتصبح التغييرات نافذة المفعول.

كيفية التحقق مما إذا كان GPU (أو جهاز PCI/PCIE) يستخدم برنامج تشغيل VFIO على Proxmox VE؟

للتحقق مما إذا كانت وحدة معالجة الرسومات لديك أو أجهزة PCI/PCIE المرغوبة تستخدم برنامج تشغيل VFIO، قم بتشغيل الأمر التالي:

$ lspci -v

إذا كان جهاز GPU أو PCI/PCIE الخاص بك يستخدم برنامج تشغيل VFIO، فيجب أن ترى السطر برنامج تشغيل النواة المستخدم: vfio-pci كما هو موضح في لقطة الشاشة أدناه.

لقد قمت بإدراج برامج تشغيل AMU GPU في القائمة السوداء، ومع ذلك، لا تستخدم وحدة معالجة الرسومات برنامج تشغيل VFIO، فماذا تفعل؟

في بعض الأحيان، لا تكون القائمة السوداء لبرامج تشغيل AMD GPU كافية، بل يتعين عليك أيضًا تكوين برامج تشغيل AMD GPU للتحميل بعد برنامج تشغيل VFIO.

للقيام بذلك، افتح /etc/modprobe.d/vfio.conf الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/modprobe.d/vfio.conf

لتكوين برامج تشغيل AMD GPU ليتم تحميلها بعد برنامج تشغيل VFIO، أضف الأسطر التالية إلى الملف /etc/modprobe.d/vfio.conf ملف واضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف.

softdep radeon قبل: vfio-pci

softdep amdgpu قبل: vfio-pci

بمجرد الانتهاء من ذلك، يجب عليك قم بتحديث initramfs لخادم Proxmox VE الخاص بك لتصبح التغييرات نافذة المفعول.

لقد قمت بإدراج برامج تشغيل NVIDIA GPU في القائمة السوداء، ومع ذلك، لا تستخدم وحدة معالجة الرسومات برنامج تشغيل VFIO، فماذا تفعل؟

في بعض الأحيان، لا يكفي إدراج برامج تشغيل NVIDIA GPU في القائمة السوداء، بل يتعين عليك أيضًا تكوين برامج تشغيل NVIDIA GPU للتحميل بعد برنامج تشغيل VFIO.

للقيام بذلك، افتح /etc/modprobe.d/vfio.conf الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/modprobe.d/vfio.conf

لتكوين برامج تشغيل NVIDIA GPU ليتم تحميلها بعد برنامج تشغيل VFIO، أضف الأسطر التالية إلى ملف /etc/modprobe.d/vfio.conf ملف واضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف.

softdep الجديد قبل: vfio-pci

softdep نفيديا ل: vfio-pci

softdep nvidiafb لـ: vfio-pci

softdep nvidia_drm قبل: vfio-pci

softdep drm pre: vfio-pci

بمجرد الانتهاء من ذلك، يجب عليك قم بتحديث initramfs لخادم Proxmox VE الخاص بك لتصبح التغييرات نافذة المفعول.

لقد قمت بإدراج برامج تشغيل Intel GPU في القائمة السوداء، ومع ذلك، لا تستخدم وحدة معالجة الرسومات برنامج تشغيل VFIO، فماذا تفعل؟

في بعض الأحيان، لا يكفي إدراج برامج تشغيل Intel GPU في القائمة السوداء، بل يتعين عليك أيضًا تكوين برامج تشغيل Intel GPU للتحميل بعد برنامج تشغيل VFIO.

للقيام بذلك، افتح /etc/modprobe.d/vfio.conf الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/modprobe.d/vfio.conf

لتكوين برامج تشغيل Intel GPU ليتم تحميلها بعد برنامج تشغيل VFIO، أضف الأسطر التالية إلى الملف /etc/modprobe.d/vfio.conf ملف واضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف.

softdep snd_hda_intel قبل: vfio-pci

softdep snd_hda_codec_hdmi قبل: vfio-pci

softdep i915 قبل: vfio-pci

بمجرد الانتهاء من ذلك، يجب عليك قم بتحديث initramfs لخادم Proxmox VE الخاص بك لتصبح التغييرات نافذة المفعول.

تستخدم وحدة معالجة رسومات واحدة برنامج تشغيل VFIO، ولكن عند تكوين وحدة معالجة رسومات ثانية، لم تعمل، لماذا؟

في ال /etc/modprobe.d/vfio.conf الملف، يجب عليك إضافة معرفات كافة أجهزة PCI/PCIE التي تريد استخدام برنامج تشغيل VFIO في سطر واحد. لن يعمل جهاز واحد لكل سطر.

على سبيل المثال، إذا كان لديك وحدتي معالجة رسومات تريد تكوينهما لاستخدام برنامج تشغيل VFIO، فيجب عليك إضافة معرفاتهما في سطر واحد في /etc/modprobe.d/vfio.conf الملف على النحو التالي:

خيارات معرفات vfio-pci=،،،

إذا كنت ترغب في إضافة GPU آخر إلى القائمة، فما عليك سوى إلحاقه في نهاية القائمة vfio-pci خط في /etc/modprobe.d/vfio.conf الملف على النحو التالي:

خيارات معرفات vfio-pci=،،،،،

لا تفعل هذا أبدا. على الرغم من أنها تبدو أكثر نظافة، إلا أنها لن تنجح. أتمنى أن نتمكن من تحديد معرفات PCI/PCIE بهذه الطريقة.

خيارات معرفات vfio-pci=،

خيارات معرفات vfio-pci=،

خيارات معرفات vfio-pci=،

لماذا تعطيل تحكيم VGA لوحدات معالجة الرسومات وكيفية القيام بذلك؟

إذا كنت تستخدم UEFI/OVMF BIOS على الجهاز الظاهري Proxmox VE حيث تريد المرور عبر وحدة معالجة الرسومات، فيمكنك تعطيل تحكيم VGA الذي سيؤدي إلى تقليل الرموز القديمة المطلوبة أثناء التمهيد.

لتعطيل تحكيم VGA لوحدات معالجة الرسومات، قم بإضافة Disable_vga=1 عند نهاية ال خيار vfio-pci في ال /etc/modprobe.d/vfio.conf الملف كما هو موضح أدناه:

خيارات معرفات vfio-pci=،،، Disable_vga=1

ماذا لو كانت وحدة معالجة الرسومات الخاصة بي لا تزال لا تستخدم برنامج تشغيل VFIO حتى بعد تكوين VFIO؟

حتى بعد القيام بكل شيء بشكل صحيح، إذا كانت وحدة معالجة الرسومات الخاصة بك لا تزال لا تستخدم برنامج تشغيل VFIO، فستحتاج إلى تجربة تشغيل Proxmox VE باستخدام خيارات kernel التي تعمل على تعطيل المخزن المؤقت لإطارات الفيديو.

في Proxmox VE 7.1 والإصدارات الأقدم، يتم تشغيل nofb nomodeset video=vesafb:off video=efifb:off video=simplefb:off تعمل خيارات kernel على تعطيل المخزن المؤقت لإطارات GPU لخادم Proxmox VE الخاص بك.

في Proxmox VE 7.2 والإصدارات الأحدث، يمكن لـ initcall_blacklist=sysfb_init يقوم خيار kernel بعمل أفضل في تعطيل المخزن المؤقت لإطارات GPU لخادم Proxmox VE الخاص بك.

افتح ملف تكوين أداة تحميل التشغيل GRUB /etc/default/grub الملف باستخدام محرر النصوص nano باستخدام الأمر التالي:

$ نانو /etc/default/grub

أضف خيار النواة initcall_blacklist=sysfb_init عند نهاية ال GRUB_CMDLINE_LINUX_DEFAULT .

بمجرد الانتهاء، اضغط <التحكم> + X تليها و و <أدخل> لحفظ الملف والتأكد من ذلك قم بتحديث أداة تحميل التشغيل Proxmox VE GRUB لتصبح التغييرات نافذة المفعول.

لم يُظهر عبور GPU أي أخطاء، لكنني أحصل على شاشة سوداء على الشاشة المتصلة بوحدة معالجة الرسومات التي تم تمريرها إلى Proxmox VE VM، لماذا؟

بمجرد تمرير وحدة معالجة الرسومات (GPU) إلى جهاز افتراضي Proxmox VE، تأكد من استخدام تقصير بطاقة الرسومات قبل بدء تشغيل الجهاز الظاهري. بهذه الطريقة، ستتمكن من الوصول إلى عرض الجهاز الظاهري من واجهة مستخدم إدارة الويب Proxmox VE، وتنزيل برنامج تشغيل GPU على الجهاز الظاهري، وتثبيته على الجهاز الظاهري.

بمجرد تثبيت برنامج تشغيل GPU على الجهاز الظاهري، سيتم عرض شاشة الجهاز الظاهري على الشاشة المتصلة بوحدة معالجة الرسومات التي قمت بتمريرها إلى الجهاز الظاهري أيضًا.

بمجرد تثبيت برنامج تشغيل GPU على الجهاز الظاهري وعرض شاشة الجهاز الظاهري على الشاشة المتصلة بوحدة معالجة الرسومات (التي تم تمريرها إلى الجهاز الظاهري)، قم بإيقاف تشغيل الجهاز الظاهري واضبط الإعداد عرض بطاقة الرسوميات من الجهاز الظاهري ل لا أحد .

بمجرد الانتهاء من الإعداد، في المرة التالية التي تقوم فيها بتشغيل الجهاز الظاهري، سيتم عرض شاشة الجهاز الظاهري على الشاشة المتصلة بوحدة معالجة الرسومات (التي تم تمريرها إلى الجهاز الظاهري) فقط، ولن يتم عرض أي شيء على ويب Proxmox VE واجهة المستخدم للإدارة. بهذه الطريقة، سيكون لديك نفس تجربة استخدام جهاز كمبيوتر حقيقي على الرغم من أنك تستخدم جهازًا افتراضيًا.

تذكر، لا تستخدم أبدا بطاقة رسومات العرض SPICE وVirtIO GPU وVirGL GPU على الجهاز الظاهري Proxmox VE الذي تقوم بتكوينه لعبور GPU لأنه يحتوي على فرصة كبيرة للفشل.

ما هو خطأ إعادة ضبط بائع AMD وكيفية حله؟

تحتوي وحدات معالجة الرسومات AMD على خطأ معروف يسمى 'خطأ إعادة تعيين البائع'. بمجرد تمرير وحدة معالجة الرسومات AMD إلى جهاز ظاهري Proxmox VE، وإيقاف تشغيل هذا الجهاز الظاهري، فلن تتمكن من استخدام وحدة معالجة الرسومات AMD في جهاز ظاهري Proxmox VE آخر. في بعض الأحيان، سيصبح خادم Proxmox VE الخاص بك غير مستجيب نتيجة لذلك. وهذا ما يسمى 'خطأ إعادة تعيين البائع' لوحدات معالجة الرسومات AMD.

سبب حدوث ذلك هو أن وحدات معالجة الرسومات AMD لا يمكنها إعادة ضبط نفسها بشكل صحيح بعد تمريرها إلى جهاز افتراضي. لإصلاح هذه المشكلة، سيتعين عليك إعادة ضبط وحدة معالجة الرسومات AMD بشكل صحيح. لمزيد من المعلومات حول تثبيت إعادة ضبط بائع AMD على Proxmox VE، اقرأ هذه المقالة و اقرأ هذا الموضوع في منتدى Proxmox VE . أيضًا، تحقق من صفحة GitHub لإعادة تعيين البائع .

كيفية توفير vBIOS لوحدة معالجة الرسومات التي تم تمريرها على جهاز Proxmox VE الظاهري؟

إذا قمت بتثبيت وحدة معالجة الرسومات على الفتحة الأولى باللوحة الأم، فقد لا تتمكن من المرور عبر وحدة معالجة الرسومات في جهاز Proxmox VE الظاهري افتراضيًا. تقوم بعض اللوحات الأم بظلال vBIOS الخاص بوحدة معالجة الرسومات المثبتة على الفتحة الأولى بشكل افتراضي وهذا هو السبب في عدم إمكانية تمرير وحدة معالجة الرسومات المثبتة على الفتحة الأولى لتلك اللوحات الأم إلى الأجهزة الافتراضية.

الحل لهذه المشكلة هو تثبيت وحدة معالجة الرسومات على الفتحة الثانية للوحة الأم، واستخراج vBIOS الخاص بوحدة معالجة الرسومات، وتثبيت وحدة معالجة الرسومات على الفتحة الأولى للوحة الأم، وتمرير وحدة معالجة الرسومات إلى جهاز افتراضي Proxmox VE جنبًا إلى جنب مع الملف المستخرج. vBIOS لوحدة معالجة الرسومات.

لمعرفة كيفية استخراج vBIOS من وحدة معالجة الرسومات الخاصة بك، اقرأ هذه المقالة .

بمجرد حصولك على vBIOS لوحدة معالجة الرسومات الخاصة بك، يجب عليك تخزين ملف vBIOS في ملف /سر/مشاركة/كفم/ دليل خادم Proxmox VE الخاص بك للوصول إليه.

بمجرد تخزين ملف vBIOS الخاص بوحدة معالجة الرسومات الخاصة بك في ملف /سر/مشاركة/كفم/ الدليل، فأنت بحاجة إلى تكوين جهازك الظاهري لاستخدامه. حاليًا، لا توجد طريقة لتحديد ملف vBIOS لأجهزة PCI/PCIE الخاصة بأجهزة Proxmox VE الافتراضية من واجهة مستخدم إدارة الويب Proxmox VE. لذلك، سيتعين عليك القيام بكل شيء بدءًا من سطر الأوامر/القذيفة Proxmox VE.

يمكنك العثور على ملفات تكوين الجهاز الظاهري Proxmox VE في ملف /etc/pve/qemu-server/ دليل خادم Proxmox VE الخاص بك. يحتوي كل جهاز ظاهري Proxmox VE على ملف تكوين واحد في هذا الدليل بالتنسيق .conf .

على سبيل المثال، لفتح ملف تكوين الجهاز الظاهري Proxmox VE (للتحرير) لمعرف الجهاز الظاهري 100، ستحتاج إلى تشغيل الأمر التالي:

$ nano /etc/pve/qemu-server/100.conf

في ملف تكوين الجهاز الظاهري، سوف تحتاج إلى إلحاق romfile= في ال hostpciX الخط المسؤول عن تمرير GPU على الجهاز الظاهري.

على سبيل المثال، إذا كان اسم ملف vBIOS لوحدة معالجة الرسومات الخاصة بي هو جيجابايت-نفيديا-1050ti.bin ، وقمت بتمرير وحدة معالجة الرسومات (GPU) في الفتحة الأولى (الفتحة 0) للجهاز الظاهري ( hostpci0 )، ثم في 100.conf الملف، يجب أن يكون السطر كما يلي:

hostpci0: ,x-vga=on,romfile=gigabyte-nvidia-1050ti.bin

بمجرد الانتهاء، احفظ ملف تكوين الجهاز الظاهري بالضغط <التحكم> + X تليها و و <أدخل> ، قم بتشغيل الجهاز الظاهري، وتحقق مما إذا كان عبور GPU يعمل.

ماذا تفعل إذا تعطلت بعض التطبيقات في الجهاز الظاهري Proxmox VE Windows؟

قد تؤدي بعض التطبيقات مثل GeForce Experience وPassmark وما إلى ذلك إلى تعطل أجهزة Proxmox VE Windows الافتراضية. قد تواجه أيضًا شاشة الموت الزرقاء المفاجئة (BSOD) على أجهزتك الافتراضية Proxmox VE Windows. سبب حدوث ذلك هو أن الجهاز الظاهري الذي يعمل بنظام Windows قد يحاول الوصول إلى السجلات الخاصة بالطراز (MSRs) غير المتوفرة فعليًا، واعتمادًا على كيفية تعامل أجهزتك مع طلبات MSRs، قد يتعطل نظامك.

الحل لهذه المشكلة هو تجاهل رسائل MSR على خادم Proxmox VE الخاص بك.

لتكوين MSRs على خادم Proxmox VE الخاص بك، افتح ملف /etc/modprobe.d/kvm.conf الملف باستخدام محرر النصوص nano كما يلي:

$ نانو /etc/modprobe.d/kvm.conf

لتجاهل MSRs على خادم Proxmox VE الخاص بك، أضف السطر التالي إلى ملف /etc/modprobe.d/kvm.conf ملف.

خيارات kvmigno_msrs=1

بمجرد تجاهل MSRs، قد ترى الكثير من رسائل التحذير MSR في سجل نظام dmesg الخاص بك. لتجنب ذلك، يمكنك تجاهل رسائل MSR بالإضافة إلى تعطيل تسجيل رسائل تحذير MSR عن طريق إضافة السطر التالي بدلاً من ذلك:

خيارات kvmignor_msrs=1 report_ignored_msrs=0

بمجرد الانتهاء، اضغط <التحكم> + X تليها و و <أدخل> لحفظ /etc/modprobe.d/kvm.conf ملف و قم بتحديث initramfs لخادم Proxmox VE الخاص بك لتصبح التغييرات نافذة المفعول.

كيفية حل مشكلات كسر/تشقق صوت HDMI على أجهزة Proxmox VE Linux الافتراضية؟

إذا قمت بتمرير وحدة معالجة الرسومات إلى جهاز ظاهري يعمل بنظام التشغيل Linux Proxmox VE وكنت تحصل على جودة صوت سيئة على الجهاز الظاهري، فستحتاج إلى تمكين MSI (مقاطعة إشارة الرسالة) لجهاز الصوت على الجهاز الظاهري Proxmox VE.

لتمكين MSI على الجهاز الظاهري Linux Proxmox VE، افتح ملف /etc/modprobe.d/snd-hda-intel.conf ملف باستخدام محرر النصوص nano على الجهاز الظاهري باستخدام الأمر التالي:

$ sudo nano /etc/modprobe.d/snd-had-intel.conf

أضف السطر التالي واحفظ الملف بالضغط على <التحكم> + X تليها و و <أدخل> .

خيارات snd-hda-intel Enable_msi=1

لكي تدخل التغييرات حيز التنفيذ، أعد تشغيل جهاز Linux الظاهري باستخدام الأمر التالي:

إعادة تشغيل $ سودو

بمجرد تشغيل الجهاز الظاهري، تحقق من تمكين MSI لجهاز الصوت باستخدام الأمر التالي:

$ سودو lspci -vv

إذا تم تمكين MSI لجهاز الصوت على الجهاز الظاهري، فمن المفترض أن ترى السطر المحدد في معلومات جهاز الصوت.

كيفية تحديث Proxmox VE initramfs؟

في كل مرة تقوم فيها بإجراء أي تغييرات على الملفات الموجودة في ملف /etc/modules-load.d/ و /الخ/modprobe.d/ الدلائل، يجب عليك تحديث initramfs الخاص بتثبيت Proxmox VE 8 باستخدام الأمر التالي:

$ التحديث-initramfs -u -k الكل

بمجرد تحديث Proxmox VE initramfs، أعد تشغيل خادم Proxmox VE الخاص بك حتى تدخل التغييرات حيز التنفيذ.

إعادة تشغيل $

كيفية تحديث أداة تحميل التشغيل Proxmox VE GRUB؟

في كل مرة تقوم فيها بتحديث ملف تكوين التمهيد Proxmox VE GRUB /etc/default/grub ، يجب عليك تحديث أداة تحميل التشغيل GRUB لتصبح التغييرات سارية المفعول.

لتحديث أداة تحميل التشغيل Proxmox VE GRUB بالتكوينات الجديدة، قم بتشغيل الأمر التالي:

$ التحديث-grub2

بمجرد تحديث أداة تحميل التشغيل GRUB بالتكوين الجديد، أعد تشغيل خادم Proxmox VE حتى تدخل التغييرات حيز التنفيذ.

إعادة تشغيل $

خاتمة

في هذه المقالة، ناقشنا بعض مشكلات عبور Proxmox VE PCI/PCIE وعبور GPU الأكثر شيوعًا والخطوات التي يمكنك اتخاذها لحل هذه المشكلات.

مراجع

  1. [برنامج تعليمي] - عبور PCI/GPU على Proxmox VE 8: التثبيت والتكوين | منتدى دعم Proxmox
  2. دليل المبتدئين النهائي لعبور Proxmox GPU
  3. قراءة وكتابة سجلات نموذجية محددة في Linux
  4. دليل تشغيل MSI HOWTO - وثائق Linux Kernel