فيما يتعلق بمشكلة امتلاء قرص Linux، فقد واجهتها من قبل عند استخدام لوحة WDCP لأنه تم تمكين سجل موقع الويب في خلفية اللوحة، ولكن لم يتم حذف السجل بانتظام على المدى الطويل، مساحة القرص كان مضيف VPS ممتلئًا بالسجلات. عندما تصل مساحة القرص إلى 100%، ستحدث بعض الأخطاء غير المبررة في موقع الويب، مثل عدم القدرة على تسجيل الدخول إلى الخلفية، وعدم القدرة على التعليق، وتكون الصفحة فارغة، وما إلى ذلك.

ومع ذلك، مؤخرًا عندما كنت أقوم بصيانة منصة مراقبة الشبكة ping.wzfou.com، وجدت أنه لا تزال هناك مساحة كبيرة على القرص، ولكن لا يزال يتم الإبلاغ عن خطأ عدم وجود مساحة على الجهاز في السجل. بعد التحقيق، تم اكتشاف أخيرًا أن الإدخالات الخاصة بقرص Linux قد تم استهلاكها، مما تسبب في عدم قدرة موقع الويب على الاستمرار في كتابة بيانات جديدة، وأخيرًا، لم يكن التدخين في الخلفية يعمل بشكل صحيح ولا يمكن عرض التقارير.

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

حل مشكلة امتلاء مساحة قرص نظام Linux - خطأ عدم وجود مساحة متبقية على الجهاز

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

  1. ثلاث أدوات أوامر Rsync وSCP وTar-Quick الحل لنقل موقع الويب عن بعد VPS ومزامنة البيانات
  2. ملخص أوامر مراقبة نظام Linux - وحدة المعالجة المركزية الرئيسية، والذاكرة، وإدخال القرص، وما إلى ذلك للعثور على اختناقات الأداء
  3. أمر Linux Crontab، بناء الجملة الأساسي للمهمة المجدولة والتشغيل التعليمي-VPS/أتمتة الخادم

ملاحظة: تم التحديث في 22 فبراير 2019، عندما تكون مساحة القرص على وشك النفاد، فقد حان الوقت للتفكير في توسيع القرص الثابت: طريقة توسيع القرص الثابت المضيف Linux VPS - تثبيت قسم القرص الثابت الجديد VPS و توسيع ديناميكيات القرص الصلب.

1. حل مشكلة إشغال مساحة القرص 100%

1.1  تحقق من مساحة القرص المتبقية الحالية

الأمر: df -h، استخدم هذا الأمر لمعرفة مقدار مساحة القرص المتبقية على مضيف VPS الحالي. إذا رأيت أن المساحة المشغولة تصل إلى أكثر من 90%، فأنت بحاجة إلى تنظيف المساحة.

2. حل مشكلة إشغال مساحة القرص بنسبة 100%

2.1  التحقق من حالة إشغال inode

عند تهيئة القرص الصلب، يقوم نظام التشغيل تلقائيًا بتقسيم القرص الصلب إلى منطقتين. إحداهما هي منطقة البيانات، التي تخزن بيانات الملف، والأخرى هي منطقة inode (جدول inode)، التي تخزن المعلومات الموجودة في inode. يبلغ حجم كل عقدة inode بشكل عام 128 بايت أو 256 بايت. العلاقة المقابلة بين inode وتخزين البيانات هي كما يلي:

استخدم الأمر df -ia للاستعلام عن إشغال inode الحالي:

2.2  اكتشف الدليل الذي يحتوي على إشغال كبير في inode

استخدم الأمر التالي لحساب inode الذي يشغله كل مجلد في الدليل الحالي:


#当前各大文件夹占用inode情况
for i in /var/*; do echo $i; find $i |wc -l; done
#排序
sudo find . -xdev -type f | cut -d "/" -f 2 | sort | uniq -c | sort -n

استخدم الأمر أعلاه عدة مرات لمعرفة الدليل المحدد الذي يشغل inode كبير، ثم احذف الملف أو المجلد باستخدام الطريقة المذكورة أعلاه.

3. ملخص

بشكل عام، لا يمكن استخدام inodes إلا إذا قام البرنامج بإنشاء عدد كبير من السجلات. على سبيل المثال، المشكلة التي واجهها wzfou.com هذه المرة هي وجود عدد كبير من الملفات في /var/spool/postfix/maildrop/. وذلك لأن postfix لا يمكن تشغيله بشكل طبيعي. بالطبع، إذا كان sendmail أو postfix يعمل بشكل طبيعي، فسوف يتراكم عدد كبير من رسائل البريد الإلكتروني في الدليل /var/mail.

إذا كنت لا تستخدم sendmail أو postfix، فمن المستحسن حذفهما أو إلغاء تثبيتهما مباشرةً:

apt-get remove sendmail*
yum remove sendmail
或者
yum remove postfix
sudo apt-get remove postfix
sudo apt-get remove --auto-remove postfix

يعتقد بعض الأصدقاء أنه يمكنهم استخدام البرامج النصية لمراقبة استخدام inode لمضيف VPS. في الواقع، يمكن لـ Zabbix الذي تم تقديمه سابقًا تحقيق مراقبة inode للخادم للتحكم في برامج الخادم وموارد الأجهزة.

اترك رد