بِسْمِ اللَّهِ الرَّحْمَنِ الرَّحِيمِ 

الْحَمْدُ لِلَّهِ رَبِّ الْعَالَمِينَ، وَصَلَّى اللَّهُ وَسَلَّمَ وَبَارَكَ عَلَى عَبْدِهِ وَرَسُولِهِ نَبِيِّنَا مُحَمَّدٍ وَعَلَى آلِهِ وَصَحْبِهِ أَجْمَعِينَ
 السَّلَامُ عَلَيْكُمْ وَرَحْمَةُ اللَّهِ وَبَرَكَاتُهُ

 تحليل واستخدام مساحة القرص في لينكس 

 كيف تجد أكبر الملفات والمجلدات


 

تعد إدارة مساحة القرص من المهام الأساسية التي يواجهها مستخدمو نظام لينكس، سواء كانوا مبتدئين أو محترفين. مع مرور الوقت، تمتلئ الأقراص بالملفات المؤقتة، والسجلات، والبيانات المخزنة، مما قد يؤدي إلى بطء النظام أو توقف بعض الخدمات عن العمل. في هذا المقال الشامل، سنستعرض بالتفصيل كيفية العثور على أكثر الملفات والمجلدات استهلاكًا للمساحة، باستخدام أدوات نصية قوية وتفاعلية.
لماذا تحتاج لمراقبة مساحة القرص؟
قبل الغوص في التفاصيل التقنية، من المهم فهم الأسباب التي تدفعنا لمراقبة مساحة القرص بانتظام:
الحفاظ على أداء النظام: عندما تقترب مساحة القرص من الامتلاء، يتباطأ النظام بشكل ملحوظ
تجنب توقف الخدمات: العديد من التطبيقات والخدمات تتوقف عن العمل عند امتلاء القرص
تنظيم الملفات: يساعدك تحليل المساحة على فهم كيفية توزيع بياناتك وحذف غير الضروري منها
التخطيط للتوسع: يمكنك تقدير متى ستحتاج إلى قرص إضافي أو ترقية
أدوات سطر الأوامر الأساسية
1. الأمر df (Disk Free)
قبل البدء في البحث عن الملفات الكبيرة، من المفيد معرفة المساحة المتوفرة على الأقراص المختلفة:

bash
df -h
هذا الأمر يعرض لك جميع الأقراص المتصلة مع معلومات عن المساحة المستخدمة والمتوفرة بصيغة سهلة القراءة (جيجابايت، ميجابايت).
2. الأمر du (Disk Usage)
هذا هو الأمر الرئيسي الذي سنعتمد عليه في تحليل استخدام المساحة. دعنا نستعرض استخداماته المختلفة:
الاستخدامات الأساسية للأمر du:
bash
# عرض حجم المجلد الحالي
du -sh .
# عرض حجم مجلد محدد
du -sh /home/user/Documents
# عرض أحجام المجلدات الفرعية في المجلد الحالي
du -h --max-depth=1
# عرض أحجام جميع المجلدات الفرعية بترتيب تصاعدي
du -h --max-depth=1 | sort -h
أمثلة عملية متقدمة:
لعرض أكبر 10 مجلدات في النظام:
bash
sudo du -h --max-depth=1 / 2>/dev/null | sort -hr | head -10
لتحليل مجلد معين بعمق أكبر:

bash
du -h --max-depth=3 /var 2>/dev/null | sort -hr | head -20
3. دمج find مع du للبحث عن الملفات الكبيرة
الأمر find يتيح لك البحث عن الملفات بناءً على معايير محددة، وبدمجه مع du تحصل على نتائج دقيقة:

bash
# البحث عن ملفات أكبر من 100 ميجابايت
sudo find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null
# البحث عن أكبر 20 ملف في النظام
sudo find / -type f -exec du -h {} + 2>/dev/null | sort -rh | head -20
# البحث عن ملفات معينة (مثل ملفات السجل) أكبر من 500 ميجابايت
sudo find /var/log -type f -size +500M -exec ls -lh {} \;
الأدوات التفاعلية المتقدمة
1. ncdu (NCurses Disk Usage)
هذه الأداة تعتبر من أفضل الأدوات التفاعلية لتحليل مساحة القرص. توفر واجهة نصية ملونة وسهلة الاستخدام.
التثبيت:
على توزيعات دبيان/أوبونتو:

bash
sudo apt update && sudo apt install ncdu
على توزيعات ريدهات/فيدورا:
bash
sudo yum install ncdu
# أو
sudo dnf install ncdu
على أرتكس/مانجارو:
bash
sudo pacman -S ncdu
الاستخدام:
bash
# تحليل المجلد الحالي
ncdu
# تحليل النظام بالكامل
sudo ncdu /
# تحليل مجلد محدد
ncdu /home/user/Downloads
اختصارات مهمة في ncdu:
الأسهم أو j/k: التنقل بين العناصر
Enter: الدخول إلى مجلد
← أو ←: العودة للمجلد السابق

d: حذف الملف/المجلد المحدد (مع تأكيد)
n: ترتيب حسب الاسم
s: ترتيب حسب الحجم
g: عرض النسبة المئوية
q: خروج

2. أداة baobab (Disk Usage Analyzer)
إذا كنت تستخدم واجهة رسومية (GUI)، فإن baobab هو الخيار الأمثل:

bash
# التثبيت على أوبونتو
sudo apt install baobab

# التشغيل
baobab
يقدم baobab واجهة رسومية بديهية تعرض استخدام القرص بشكل دائري أو شجري.
المناطق الحرجة التي تستحق المراقبة الدورية
هناك مجلدات معينة في نظام لينكس تميل لتراكم الملفات الكبيرة:
1. مجلد السجلات (/var/log)
bash
# تحليل مجلد السجلات
sudo du -h --max-depth=1 /var/log | sort -hr
2. مجلد الحزم المؤقتة (/var/cache/apt/archives)
في توزيعات دبيان، يخزن هذا المجلد حزم APT المحملة:

bash
# تنظيف حزم APT غير الضرورية
sudo apt clean

# أو حذف الحزم القديمة فقط
sudo apt autoclean
3. المجلد الرئيسي للمستخدم (/home)
bash
# تحليل مجلد المستخدم
du -h --max-depth=1 /home/username | sort -hr
4. مجلدات التطبيقات والحاويات
إذا كنت تستخدم Docker، راقب هذا المجلد:
bash
# تنظيف حاويات Docker غير المستخدمة
docker system prune -a
# تحليل حجم Docker
du -sh /var/lib/docker
استراتيجيات متقدمة للتحليل والتنظيف
1. إنشاء سكريبت للتحليل الدوري
يمكنك إنشاء سكريبت بسيط لتحليل المساحة بشكل دوري:

bash
#!/bin/bash
# script: disk_analyzer.sh
echo "=== تحليل القرص في $(date) ===" >> disk_report.txt
echo "أكبر 10 مجلدات:" >> disk_report.txt
sudo du -h --max-depth=1 / 2>/dev/null | sort -hr | head -10 >> disk_report.txt
echo "" >> disk_report.txt
echo "أكبر 10 ملفات:" >> disk_report.txt
sudo find / -type f -exec du -h {} + 2>/dev/null | sort -rh | head -10 >> disk_report.txt
echo "==========================" >> disk_report.txt
2. البحث عن الملفات المكررة
استخدم أداة fdupes للعثور على الملفات المكررة:
bash
# تثبيت fdupes
sudo apt install fdupes
# البحث عن ملفات مكررة في مجلد معين
fdupes -r /home/user
# البحث والحذف التفاعلي
fdupes -rd /home/user
3. مراقبة التغييرات في استخدام المساحة
bash
# تسجيل استخدام المساحة يوميًا
df -h >> disk_usage_history.txt
# مقارنة التغييرات بعد فترة
# يمكنك استخدام diff لمقارنة ملفين
نصائح عملية للحفاظ على مساحة القرص
جدولة التنظيف الدوري: استخدم cron لتنظيف الملفات المؤقتة تلقائيًا
ضغط السجلات القديمة: قم بضغط أو تدوير سجلات النظام
مراقبة التنبيهات: استخدم أدوات مثل duply لإشعارك عند اقتراب امتلاء القرص
الاحتفاظ بنسخ احتياطية: تأكد من عدم تراكم النسخ الاحتياطية القديمة
تنظيم الملفات الكبيرة: انقل الملفات الكبيرة غير المستخدمة إلى وسائط تخزين خارجية
مثال عملي شامل
لنفترض أنك تلاحظ بطء في النظام، إليك خطوات عملية لتشخيص المشكلة:
الخطوة 1: التحقق من المساحة المتوفرة
bash
df -h
النتيجة تظهر أن القرص الرئيسي ممتلئ بنسبة 95%.

الخطوة 2: تحديد أكبر المجلدات
bash
sudo du -h --max-depth=1 / 2>/dev/null | sort -hr | head -10
تظهر النتائج أن /var و /home هما الأكبر حجمًا.
الخطوة 3: التعمق في التحليل
bash
# تحليل مجلد /var
sudo du -h --max-depth=2 /var 2>/dev/null | sort -hr | head -15
# تحليل مجلد /home
du -h --max-depth=2 /home/username 2>/dev/null | sort -hr | head -15
الخطوة 4: استخدام ncdu للتصفح التفاعلي
bash
sudo ncdu /var
الخطوة 5: اتخاذ الإجراءات المناسبة
بناءً على النتائج، يمكنك:
تنظيف سجلات النظام القديمة
نقل الملفات الكبيرة إلى قرص آخر
حذف الملفات المؤقتة
إلغاء تثبيت التطبيقات غير المستخدمة
إدارة مساحة القرص في لينكس ليست مهمة صعبة عندما تمتلك الأدوات المناسبة والمعرفة الكافية. من خلال الجمع بين الأوامر النصية القوية مثل du و find، والأدوات التفاعلية مثل ncdu، يمكنك بسهولة تحديد مصادر استهلاك المساحة والتعامل معها بكفاءة.
تذكر دائمًا أن الوقاية خير من العلاج؛ فمراقبة المساحة بشكل دوري وتنظيف الملفات غير الضرورية بانتظام يوفر عليك الكثير من الوقت والجهد على المدى الطويل. ابدأ اليوم بتطبيق ما تعلمته في هذا المقال، وستلاحظ الفرق في أداء نظامك ونظافته.
هل لديك استفسارات حول أدوات معينة أو مواقف محددة تواجهها؟

 شاركنا تجربتك في التعليقات!

0 تعليقات