كيفية استعادة أذونات Home Assistant بعد نقل دليل بياناته

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

استعِد أذونات Home Assistant المنقولة بالتحقق أولًا من عملية الربط ومعرّف UID/GID المستخدم وقت التشغيل، ثم أصلح الملكية أو الأذونات أو قوائم ACL أو تسميات الأمان فقط عندما تشير الأدلة إلى ذلك.

قد تحافظ عملية نقل البيانات على أسماء الملفات مع تغيير الهوية الرقمية، أو إسقاط الملفات المخفية، أو توريث قائمة ACL مقيّدة، أو ربط الدليل الخطأ داخل الحاوية. أوقف Home Assistant قبل إجراء أي تصحيح تكراري، واحتفظ بنسخة غير معدّلة من شجرة البيانات المنقولة، وقارن بين المسارين القديم والجديد. لا تبدأ أبدًا باستخدام chmod 777؛ فهذا يدمّر معلومات التشخيص ويمنح وصولًا غير ضروري.

أوقف عمليات الكتابة وحافظ على شجرة البيانات المنقولة

أوقف حاوية Home Assistant وأي عملية تكتب إلى دليل البيانات نفسه. سجّل تعريف الربط الحالي، والبيانات الوصفية للدليل، وهوية الحاوية، ثم أنشئ لقطة أو نسخة محمية قبل تغيير الملكية أو قوائم ACL. يجب أن يظل الإصلاح المادي أو إصلاح نظام الملفات قابلًا للعكس.

يصف حساب لترحيل البيانات استخراج بيانات النسخة الاحتياطية لـ Home Assistant إلى دليل إعدادات الحاوية، موضحًا أن شجرة الإعدادات المستعادة تصبح حالة الحاوية الدائمة ويجب التعامل معها كوحدة متماسكة واحدة.

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

تحقق أولًا من الربط واكتمال النسخ

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

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

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

طابق UID وGID الرقميين

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

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

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

-15% OFF

أصلح الأوضاع وقوائم ACL وسياق الأمان بدقة

قارن بتات التنفيذ في الأدلة، وبتات القراءة والكتابة في الملفات، وقوائم ACL الافتراضية، وأعلام الربط للقراءة فقط، وأي تسميات لـ SELinux أو AppArmor مع المصدر العامل أو خط الأساس للمنصة. صحّح أول طبقة غير متطابقة، ثم أعد اختبار مسبار معزول لإنشاء ملف وإعادة تسميته وحذفه باستخدام هوية وقت التشغيل.

لا تنسخ أوامر واسعة الصلاحيات من ردود المنتديات العامة من دون فهم هوية النشر. قد يؤدي الوصول التكراري الواسع إلى نجاح بدء التشغيل مع كشف الأسرار وترك الملفات الجديدة غير متسقة. استخدم أضيق أذونات للمالك والمجموعة تسمح بعمليات وقت التشغيل المطلوبة.

تعني PASS نجاح مسبار وقت التشغيل، وتوريث الملفات الجديدة للمالك والمجموعة والوضع وقائمة ACL والسياق المقصود. وإذا حدث FAIL بعد تصحيح أذونات Unix الصحيحة، فذلك يشير إلى ربط للقراءة فقط أو سياسة تحكم إلزامية في الوصول. أصلح تلك الطبقة بدلًا من توسيع الأوضاع التقليدية أكثر.

شغّل الخدمة مرة واحدة وتحقق من عبء العمل الأصلي

شغّل Home Assistant مرة واحدة وراقب أقدم أخطاء الأذونات أو المسارات ظهورًا. تحقق من تحميل الإعدادات، والسجلات المخفية، وعمليات كتابة Recorder، والتكاملات المخصصة، ومسارات النسخ الاحتياطية أو الوسائط التي تستخدمها الأسرة، ثم أجرِ إعادة تشغيل واحدة. لا تعدّل ملفات السجل أثناء تشغيل الخدمة لإسكات الأخطاء الثانوية.

يوضح سير عمل النسخ الاحتياطي في ZimaSpace متى يؤدي إيقاف عمليات الكتابة إلى تحسين الاتساق عند نسخ أنظمة الملفات الخام. استخدم حد إيقاف الخدمة عند تكرار النقل أو إصلاح الأذونات.

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

الدعم والنصائح

المزيد للقراءة

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.