غالبًا ما تفقد حاوية LXC الوصول إلى الجهاز بعد إعادة تشغيل المضيف، لأن المضيف يعيد إنشاء الجهاز بمسار أو حالة أذونات أو توقيت بدء مختلف.
تعامل مع إعادة التشغيل باعتبارها حدثًا في دورة حياة أجهزة المضيف. تأكد من اكتشاف العتاد قبل بدء LXC، وقارن المعرّفات الثابتة بأسماء الأجهزة المتغيرة، وتحقق من أذونات udev الدائمة وقواعد وصول الحاوية، ثم أجرِ إعادة تشغيل باردة. إن إعادة تشغيل الحاوية التي تحل المشكلة مؤقتًا تُعد دليلًا على وجود مشكلة في التوقيت، وليست إصلاحًا دائمًا.
تأكد من أن المضيف يعيد إنشاء الجهاز بعد إعادة التشغيل
قبل بدء الحاوية، تحقق من أن المضيف يكتشف جهاز USB أو الجهاز التسلسلي أو وحدة معالجة الرسومات أو أي جهاز آخر، وسجّل معرّف البائع ومعرّف المنتج والرقم التسلسلي وأرقام major-minor والمسار الحالي.
توصي إرشادات تمرير الأجهزة في المختبرات المنزلية باستخدام تمرير USB ثابت بدلًا من افتراض أن اسم جهاز متغير سيشير دائمًا إلى العتاد نفسه بعد التعداد.
إذا لم يرَ المضيف الجهاز نفسه، فتوقف عند طبقة المضيف. يجب إصلاح مشكلات إعادة التوصيل أو البرامج الثابتة أو وحدة التحكم أو الطاقة أو اكتشاف النواة قبل أن ينجح أي إعداد لـ LXC.
استبدل أسماء الأجهزة المتغيرة بهوية ثابتة
قارن المسارات قبل إعادة التشغيل وبعدها. قد تتبدل أرقام ttyUSB في محولات USB التسلسلية، وقد يجري تعداد الأجهزة المتشابهة بترتيب مختلف بعد بدء تشغيل المضيف.
يوضح دليل تمرير USB إلى LXC سبب نجاح تمرير الجهاز إلى LXC فقط عندما يظل كائن المضيف الذي تشير إليه الحاوية محددًا للعتاد المقصود.
استخدم مسارًا ثابتًا من by-id أو رابطًا رمزيًا ينشئه udev عمدًا عندما تدعم فئة الجهاز ذلك. لا توسّع وصول الحاوية إلى جميع أجهزة USB لمجرد إخفاء تغير ترتيب التعداد.
اجعل أذونات الجهاز تستمر بعد إعادة إنشائه
تحقق من المالك والمجموعة والوضع وأذونات cgroup وتعيين الحاوية بعد إعادة التشغيل. لا يستمر استخدام chmod اليدوي على عقدة الجهاز، لأن udev قد يعيد إنشاء تلك العقدة.
يستخدم مثال لتمرير جهاز Z-Wave تعيينًا دائمًا للجهاز للحفاظ على إمكانية الوصول إلى الجهاز التسلسلي عبر تغييرات المضيف، بدلًا من الاعتماد على تعديل أذونات يُجرى مرة واحدة.
حدّد قاعدة الملكية أو المجموعة المطلوبة في إعداد إدارة الأجهزة الدائم على المضيف، وامنح الحاوية فئة الأجهزة التي تحتاج إليها فقط.
تحقق مما إذا كانت الحاوية تبدأ مبكرًا جدًا
أعد تشغيل المضيف وقارن الطوابع الزمنية لإنشاء الجهاز وبدء تشغيل LXC. قد تبدأ الحاوية بنجاح بينما لم يكتمل تعداد العتاد الذي تتوقعه بعد.
توضح إرشادات تعيين أجهزة USB في Proxmox أن تمرير USB يعتمد على إتاحة المضيف للجهاز أولًا؛ ويصبح هذا الترتيب بالغ الأهمية أثناء عمليات إقلاع الخوادم المنزلية غير المراقبة.
أضف تبعية محددة المدة أو فحصًا لجاهزية الجهاز بدلًا من استخدام مهلة نوم طويلة وعشوائية. ينبغي أن تفشل الحاوية بوضوح أو تنتظر لفترة قصيرة عند غياب الجهاز المطلوب.
أجرِ تحققًا كاملًا بعد إعادة التشغيل
بعد إصلاح الهوية أو الأذونات أو الترتيب، أعد تشغيل المضيف باردًا مرتين واختبر العملية الفعلية للتطبيق الذي يستخدم الجهاز، وليس مجرد التحقق من وجود عقدة داخل LXC.
يربط دليل إعداد الخادم المنزلي في Proxmox ذي الصلة من ZimaSpace الإصلاح بإعداد قابل لإعادة الإنتاج لخادم Proxmox المنزلي، بدلًا من حل بديل يعمل لجلسة واحدة فقط.
لا تُعد المشكلة محلولة إلا عندما يظهر الجهاز الفعلي نفسه مع أذونات الوصول المقصودة بعد عمليات إقلاع متكررة. إذا كانت الهوية ثابتة لكن الوصول لا يزال يفشل، فاحتفظ بسجلات الرفض من المضيف والحاوية للانتقال إلى الطبقة التالية.
الأسئلة الشائعة
لماذا تؤدي إعادة تشغيل الحاوية أحيانًا إلى استعادة الجهاز؟
قد يكون الجهاز قد ظهر بعد بدء تشغيل الحاوية. وعند إعادة تشغيلها لاحقًا، تعثر على عقدة جهاز المضيف التي اكتمل إنشاؤها، لكن ذلك يخفي اعتماد بدء التشغيل على الترتيب الزمني فحسب.
هل ينبغي أن أعيّن جهاز USB عبر /dev/ttyUSB0؟
فضّل استخدام هوية ثابتة عندما توفرها فئة الجهاز. فقد تتغير أسماء الأجهزة الرقمية أثناء تعداد العتاد بعد إعادة التشغيل.
هل يمكن أن تُعاد تهيئة الأذونات حتى عندما يظل مسار الجهاز نفسه؟
نعم. قد يعيد udev إنشاء العقدة بالمالك والمجموعة والوضع المحددة في إعداداته، لذلك قد تختفي تغييرات chmod اليدوية عند إعادة الاتصال أو إعادة التشغيل التالية.
الدعم والنصائح
المزيد للقراءة

هل يمكن لـ Plex مشاركة وحدة معالجة الرسومات (GPU) مع حاوية Docker أخرى؟
يمكن لـ Plex وحاوية أخرى غالبًا الوصول إلى وحدة معالجة الرسومات نفسها، لكن يجب اختبار دعم برنامج التشغيل، وتعيين الجهاز، وحِمل محرّك الفيديو، والذاكرة،...

كيفية معرفة ما إذا كان خطأ Plex ناتجًا عن العميل أم الخادم
أعِد إنتاج العنصر نفسه على عميل آخر، وقارن مسار الجلسة، ثم اجمع أدلة من الخادم فقط بعد أن يحدد النطاق موضع الفشل الفعلي.

كيفية إعداد ذاكرة التخزين المؤقت وموقع التخزين المؤقت لتحويل الترميز في Plex
احمِ حالة Plex الدائمة مع وضع الملفات المؤقتة للتحويل على مساحة تخزين محلية مناسبة، ثم تحقّق من التنظيف والمساحة الحرة وسلوك إعادة التشغيل.

