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

سجّل الجهاز قبل الحزمة

ابدأ بحقائق يمكنك اقتباسها. يمنحك «About This Mac» الطراز والشريحة؛ و sw_vers يمنحك إصدار macOS والبناء بدقة؛ و uname -m يمنحك البنية التي تعمل تحتها الصدفة. ضع الطراز والشريحة والإصدار والبناء في أربعة أسطر منفصلة بدلًا من جملة واحدة. سنة الطراز المتذكَّرة من فاتورة ليست دليلًا، والتركيبة الغريبة، مثل هيكل قديم يعمل بإصدار جديد بشكل مريب، تستحق الحل قبل تثبيت أي شيء. أرقام البناء أهم من أسماء التسويق، لأن الحد الأدنى لدى المورّد يسمّي بناءً في الغالب.

ثم قارن الحد الأدنى المعلن من المورّد بذلك السجل. إذا كان الإصدار أحدث مما تدعمه الحزمة، فالجواب ليس تثبيتها رغم ذلك.

افحص المساعد، لا النافذة فقط

الجزء الذي ينشئ النفق يعمل عادةً كمساعد ذي امتيازات أو كـ امتداد نظام، وله حدّه الأدنى الخاص للتوافق. قد يبدأ التطبيق ومع ذلك يفشل في تثبيت مساعده، وهذا ينتج نافذة تبدو سليمة ونفقًا لا يظهر أبدًا. يسرد systemextensionsctl list الامتدادات التي يعرفها النظام، وهنا يصبح المكوّن غير المعتمد أو القديم مرئيًا. اقرأه بعد أول تشغيل فاشل، لا بعد مكالمة دعم.

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

طابِق البروتوكول والملف في الطرفين

عنوان خادم مألوف لا يجعل بروتوكولًا قديمًا صالحًا لعميل جديد. دعم البروتوكول مُصدَّر على الطرفين: فقد تخلّى نظام التشغيل عن بعض الأساليب منذ سنوات، وقد لا تزال البوابة تقدّمها لمعدات قديمة. اطلب من المشغّل ملفًا شخصيًا وطريقة مصادقة مُصانة بدلًا من اختيار ما استخدمه جهاز أقدم.

الملف الشخصي جزء من الحزمة. الاتصال المعاد بناؤه من لقطة شاشة لإعدادات شخص آخر هو تهيئة لا يدعمها أحد.

تعامل مع استبدال الامتداد عبر المورّد

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

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

سجّل التركيبة التي نجحت

أنهِ بسطر واحد يمكنك تسليمه للشخص التالي: الطراز والشريحة الفعليان، وإصدار macOS والبناء، وإصدار حزمة العميل الكامل، والملف الشخصي المعتمد، ومالك بيانات الاعتماد. خمس حقائق، بلا صفات. أي أقل من ذلك ويصبح التثبيت التالي تحقيقًا.

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

مقالات ذات صلة