لينكس / دليل حلول تحريري
تمييز امتلاء التخزين من نفاد العقد
شخّص فشل الكتابة لنفاد المساحة بتحديد نظام الملفات ونوع التخصيص والحصص والمستهلكين المخفيين.
قاعدة معرفة للقراءة فقط · بلا تعليقات عامة
تعرّف على الأعراض
تعجز مهمة تقارير افتراضية عن إنشاء الخرج وتبلغ No space left on device. قد تظهر جيجابايتات حرة بمكان آخر أو يختلف df وdu. وقد يفشل ملف صغير لنفاد العقد لا ضخامة البيانات.
افهم الأسباب المحتملة
- قد يقع المسار على تركيب مختلف. تشمل الاحتمالات نفاد الكتل أو العقد أو حصة المستخدم أو المشروع أو حجز التخصيص أو ملفات محذوفة مفتوحة تحتفظ بالكتل. تؤثر اللقطات والملفات المتناثرة والضغط والمحاسبة الخاصة. يضيق الخطأ الفحص ولا يحدد ملفاً آمناً للحذف.
1. تحديد الوجهة المتأثرة
سجل التطبيق والحساب والوقت والمسار. افحص أقرب أب موجود إن لم يُنشأ الملف. اربطه بتركيب قبل النسب. قد يكون الجذر حراً وتمتلئ /var أو المنزل أو tmpfs أو طبقة حاوية. افحص من سياق تركيب العمل عند العزل.
findmnt --target /tmp
df -h /tmp
df -i /tmp
استبدل /tmp بوجهة مختبر مصرح فقط. الأوامر للقراءة ولا تخصص مساحة أو تحاكي النفاد على المضيف.
2. تصنيف المورد النافد
عند نفاد الكتل افحص مستهلكي البايتات، وعند نفاد العقد مع بقاء بايتات افحص تجمعات الملفات الصغيرة. تخصص أنظمة بعض البيانات ديناميكياً أو تعرض العقد بشكل مختلف، فراجع دليلها. افحص الحصص بأدوات القراءة المدعومة؛ فقد تبلغ حصة مستخدم مع بقاء مساحة عامة. لا تغير الحجز أو الحصص لمحو العرض فقط.
3. مطابقة التخصيص والملفات المرئية
يساعد عرض du -x محدود في تحديد الاستخدام داخل نظام واحد، لكن نقص الصلاحية يجعل المجموع ناقصاً. تفسر الملفات المحذوفة المفتوحة ارتفاع df عن du. حدد التطبيق بفحص معتمد ثم رتب الإغلاق أو التدوير أو الإعادة الموثقة عبر المسؤول المصرح. لا تقتل عشوائياً أو تمح سجلات نشطة. راجع اللقطات والبيانات المخفية بالتركيب وفق النظام.
du -x -h --max-depth=1 ./synthetic-output
يفترض مثال GNU du مجلداً مصطنعاً صغيراً مهيأ. يلخص مستوى واحداً ويتجنب عبور الأنظمة ولا يحذف شيئاً.
4. إصلاح الاحتفاظ والسلوك المنتج
حدد المخرجات المصطنعة القابلة للاستغناء واحفظ الأدلة واستخدم الاحتفاظ أو الأرشفة الموثقة في المختبر. ركز عند نفاد العقد على العدد ونمط الإنشاء لا الحجم وحده. حرر مرجع الملف المحذوف عبر دورة التطبيق المدعومة. أبق مساحة للاسترداد. عالج سبب التراكم كتدوير فاشل أو محاولات منفلتة أو مؤقتات غير محدودة.
تحقق من نجاح الإصلاح
كرر df للبايتات والعقد على التركيب نفسه وافحص الحصة. نفذ خرجاً مصطنعاً محدوداً بالهوية الأصلية وافحص المحتوى والحالة واستقرار الاستخدام خلال دورة أخرى. لا تثبت مساحة محررة في نظام آخر الاسترداد.
امنع تكرار المشكلة
- راقب اتجاه البايتات والعقد وحد الاحتفاظ بالمؤقتات والسجلات ونبّه قبل فقد الاحتياطي. أدرج الحصص وتخزين الحاويات. اختبر الاستعادة قبل حذف المهم ووثق التطبيق المسؤول عن التنظيف بدلاً من حذف مرتجل.