الرئيسية
» كيف
»
عندما يصبح نظام ملفات Btrfs الخاص بنظام SLES للقراءة فقط: قم بالتشخيص قبل إعادة التثبيت
عندما يصبح نظام ملفات Btrfs الخاص بنظام SLES للقراءة فقط: قم بالتشخيص قبل إعادة التثبيت
إذا أبلغ نظام ملفات Btrfs في SUSE Linux Enterprise عن "نظام ملفات للقراءة فقط"، فتحقق أولاً مما إذا كان قد تم تركيبه للقراءة فقط عمدًا أم تم تحويله إلى وضع القراءة فقط بعد حدوث خطأ. تحقق من خيارات التركيب والمساحة الحرة وسجل النواة قبل محاولة إعادة التركيب. استخدم Snapper للتراجع عن النظام لإنشاء لقطة نظام قابلة للتشغيل وموثقة؛ إذا سجل Btrfs أخطاء في الإدخال/الإخراج أو البيانات الوصفية، فاحمِ البيانات وشخص مسار التخزين قبل الكتابة إلى نظام الملفات مرة أخرى.
يتحقق المثال من خيارات التثبيت ويحدد جهاز Btrfs الذي يدعم /data.
1. التمييز بين عملية التثبيت للقراءة فقط المتعمدة وخطأ نظام الملفات
استبدل /dataبنقطة التحميل المتأثرة، أو /بـ root.
findmnt -T /data -o SOURCE,FSTYPE,OPTIONS
sudo btrfs filesystem show /data
في الأمر الأول، ابحث عن roالخيار rw` - ro.../etc/fstabmount -o remount,rw
إذا تم تركيب نظام الملفات للقراءة فقط عن قصد، وكان جهازه سليماً، ولم يكن سجل النواة يحتوي على أخطاء Btrfs أو أخطاء إدخال/إخراج، فيمكن إعادة تركيب عملية تحميل البيانات العادية للقراءة والكتابة:
sudo mount -o remount,rw /data
findmnt -T /data -o TARGET,OPTIONS
لا تستخدم هذا الأمر كأمر استعادة لنسخة احتياطية للقراءة فقط بعد الإقلاع أو لنظام ملفات للقراءة فقط تم فرضه بسبب خطأ. إعادة التحميل الناجحة تؤكد إمكانية الكتابة، وليس سلامة نظام الملفات.
2. تحقق مما إذا كان ضغط الفضاء هو المشكلة الحقيقية
قارن المساحة الحرة في نظام الملفات مع تفاصيل تخصيص Btrfs؛ القيم النموذجية توضيحية.
قد ينفد نظام ملفات Btrfs من المساحة المتاحة حتى عندما تبدو نظرة عامة على القرص غير متوقعة، وذلك لأن تخصيص البيانات والبيانات الوصفية يُتتبع بشكل منفصل. تحقق من كل من المساحة الحرة العادية واستخدام Btrfs.
df -hT /data
sudo btrfs filesystem usage -T /data
إذا أبلغ النظام عن No space left on deviceأعطال في الجهاز أو أخطاء هيكلية ولم يُظهر سجل النواة هذه الأعطال، فافحص استخدام Snapper قبل إزالة أي شيء:
sudo snapper list
احذف فقط اللقطات التي تسمح لك سياسة الاحتفاظ بفقدانها، وذلك باستخدام sudo snapper delete SNAPSHOT_IDكل مُعرّف مُحدد. احتفظ بنسخة احتياطية سليمة من اللقطة السابقة للتحديث إذا كنت بحاجة إلى خيار للتراجع؛ فحذف اللقطات يُعيد المساحة ولكنه يُزيل نقاط الاستعادة. قد لا تُعيد عملية التنظيف المساحة فورًا، ولن تُصلح اللقطات أخطاء الإدخال/الإخراج. لا تُشغّل عملية موازنة لإجبار نظام الملفات للقراءة فقط على أن يكون قابلاً للكتابة؛ فهي تنقل البيانات ومُخصصة لمشكلة تخصيص مُشخصة على نظام ملفات سليم وقابل للكتابة.
3. اقرأ سجل النواة قبل اختيار الإصلاح
يمكن لرسائل النواة التمييز بين ضغط المساحة وأخطاء القراءة أو التحقق من المجموع أو أخطاء الجهاز؛ الأسطر المعروضة هي أمثلة.
ابحث عن أول خطأ في نظام الملفات Btrfs أو جهاز الكتلة أو وحدة التحكم أو النقل، وليس فقط الرسالة الأخيرة التي تفيد بأن نظام الملفات أصبح للقراءة فقط:
تشير الرسائل المتعلقة بفشل عمليات القراءة، أو عدم تطابق المجموع الاختباري، أو الأجهزة المفقودة، أو أخطاء الإدخال/الإخراج إلى مسار مختلف عن roخيار التثبيت البسيط. تحقق من القرص المُبلغ عنه، ووحدة التحكم، وRAID/HBA، وSAN، أو طبقة القرص الظاهري، ومعلومات حالة المورّد. أصلح أولاً أي خلل في الأجهزة أو الاتصال. إذا كانت البيانات مهمة، قلل عمليات الكتابة، وقم بترتيب نسخة احتياطية أو صورة على مستوى الكتل مع مسؤول النظام قبل محاولة إصلاح نظام الملفات.
4. اختر عملية التعافي الأقل خطورة والتي تتوافق مع الأدلة
ما وجدته
الإجراء التالي
مقايضة
roتم تكوينها أو تم ضبط نقطة التحميل للقراءة فقط عن قصد؛ لا توجد أخطاء ذات صلة في النواة
قم بتصحيح تكوين التثبيت إذا كان غير مقصود، أو أعد تثبيت وحدة تخزين فرعية قابلة للكتابة بشكل طبيعي بعد التأكد من أن الجهاز سليم.
سريع، لكن إعادة التحميل لا يمكنها مسح حالة القراءة فقط المفروضة بسبب خطأ أو جعل لقطة القراءة فقط قابلة للكتابة.
تعمل لقطة الجذر القابلة للتشغيل، وقد حدثت المشكلة بعد تغيير في النظام.
قم بتشغيل الجهاز واختبر اللقطة، ثم قم بتشغيله sudo snapper rollbackوإعادة تشغيله إلى الإدخال الافتراضي.
يُعيد هذا الإجراء المجلد الفرعي الرئيسي إلى حالة اللقطة. لا يتم استعادة البيانات الموجودة في المجلدات الفرعية المستبعدة أو المنفصلة. يدعم نظام SLES 15 SP7 هذه العملية فقط مع تخطيط المجلد الفرعي الرئيسي الافتراضي ونظام ملفات رئيسي أحادي الجهاز.
يحتوي سجل النواة على أخطاء إدخال/إخراج التخزين أو أخطاء هيكلية في نظام ملفات Btrfs
قم بتثبيت التخزين والحفاظ على البيانات؛ استخدم بيئة إنقاذ وقم بالتصعيد من أجل استعادة خاصة بنظام الملفات.
أبطأ، لكنه يتجنب إخفاء مشكلة في الأجهزة لم يتم حلها من خلال إعادة تحميل قابلة للكتابة.
يتم الإبلاغ فقط عن نفاد المساحة؛ ولا توجد أخطاء في التخزين.
راجع الاحتفاظ ببيانات Snapper واللقطات أو البيانات المسموح بها، ثم أعد التحقق من استخدام Btrfs.
يُحرر هذا النظام مساحة تخزين على حساب نقاط استعادة أو ملفات محددة.
اختر لقطة من قبل حدوث العطل، وتحقق من عملية التمهيد التجريبي للقراءة فقط، ثم قم بتنفيذ عملية التراجع Snapper إذا كان ذلك يحل المشكلة.
في نظام SLES، تستخدم اللقطات القابلة للتشغيل إعدادات Snapper الجذرية الافتراضية. يجب أن يكون نظام الملفات الجذرية Btrfs على أحد الأجهزة، ويجب أن يدعمه مُحمِّل الإقلاع، ويتم التراجع إلى وحدة التخزين الفرعية الجذرية فقط. تحقق من أي خيار قبل الحفظ؛ إذا كان غير مناسب، فأعد تشغيل النظام إلى النظام الحالي أو بيئة الإنقاذ. راجع إجراء التراجع إلى Snapper في SLES 15 SP7 .
متى تكون عمليات الفحص غير المتصلة بالإنترنت أو التنظيف مناسبة
إذا لم يتم تحميل نظام الملفات أو أشارت رسائل النواة إلى وجود تلف هيكلي، فقم بتشغيل نظام الإنقاذ SLES أو بيئة استرداد مناسبة أخرى، وحدد الجهاز الصحيح، وتأكد من فصله قبل تشغيل الفحص الافتراضي للقراءة فقط:
sudo btrfs check /dev/DEVICE
استخدم وحدة تخزين Btrfs الفعلية، وليس عنصرًا نائبًا لنقطة التحميل. قد يستغرق الفحص وقتًا وذاكرة، ويُبلغ عن نتائج هيكلية، ولكنه لا يضمن الإصلاح. لا تُضفه --repairكخطوة روتينية تالية. تُحذر وثائق Btrfs من أن الإصلاح قد يُفاقم المشكلة، ويجب استخدامه فقط تحت إشراف خبير بعد قبول مخاطر البيانات. استشر دعم SUSE أو متخصصًا في Btrfs عندما يُبلغ الفحص عن أخطاء أو عندما يُعاني الجهاز من أعطال في الإدخال/الإخراج.
بعد استقرار وحدة التخزين وتركيب نظام الملفات للقراءة والكتابة، sudo btrfs scrub start -B /dataيمكن التحقق من المجموع الاختباري. لا يُعدّ برنامج Scrub أداة فحص هيكلية، فهو يُصلح التلف فقط من خلال نسخة احتياطية سليمة؛ أما في حالة وجود نسخة واحدة، فيكتشف الأخطاء ولكنه لا يستطيع استعادة البيانات المفقودة. راجع وثائق Btrfs scrub . كما يمكنك الاطلاع على دليل أنظمة ملفات SLES 15 SP7 من SUSE ، ومقال استعادة Btrfs من SUSE ، ودليل فحص Btrfs .
تحقق من النتيجة
بعد اختيار عملية الاستعادة، تأكد من أن وحدة التثبيت تحتوي على الخيارات المطلوبة ويمكنها إجراء عملية كتابة آمنة:
لاستعادة نسخة احتياطية من النظام الأساسي، أعد تشغيل الجهاز أولاً وتأكد من بدء تشغيل النظام الافتراضي بشكل طبيعي. ثم راجع سجل النواة الجديد بحثًا عن أخطاء متكررة في نظام ملفات Btrfs أو الجهاز. لا يُعدّ وجود علامة قراءة/كتابة دليلاً قاطعًا على سلامة النظام؛ فإذا تكررت الأخطاء، أوقف عمليات الكتابة وعد إلى تشخيص وحدة التخزين.