Leaves: أداة تحليل مساحة التخزين على الخوادم والحاويات بطريقة مرئية (دليل تجربة عملي)
Show HN: Leaves – A text-UI disk usage treemap visualizer
خريطة الصفحة
اختر القسم الذي تحتاجه الآن
- ما هو Leaves؟
- من يحتاج Leaves؟ (ومن لا يحتاجه)
- المميزات الرئيسية
- المتطلبات الأساسية
- طريقة التركيب (خطوة بخطوة)
- طريقة التشغيل والاستخدام الأساسي
- أخطاء شائعة وحلولها
- استخدامات عملية (أمثلة)
- هل يستحق Leaves التجربة؟
- بدائل Leaves
- أسئلة شائعة (FAQ)
قبل أن تطبق
الفكرة التي تمنع التسرع
تعتقد أن تحليل مساحة التخزين في الخادم يقتصر على أوامر نصية مملة؟ Leaves تمنحك نظرة شاملة بلمحة بصرية واحدة.
أسئلة التشخيص السريع
قبل أن تطبق، اعرف أين تقف بالضبط
- هل تحتاج لتحليل مساحة التخزين على خادم لينكس بدون واجهة رسومية؟
- هل تجد أن ncdu لا يعطيك نظرة شاملة كافية؟
- هل تدير حاويات Docker وتريد تحليل مساحة التخزين داخلها؟
- هل تبحث عن أداة TUI حديثة وسريعة مبنية بلغة Rust؟
- هل لديك مجلدات تحتوي ملايين الملفات وتحتاج تحليل سريع؟
- هل تفضل عرض Treemap على القوائم الهرمية؟
- هل أنت مستعد لتثبيت Rust إذا لم يكن مثبتاً؟
نظام التشغيل: Input → Process → Output
لوحة قياس النجاح
لا تعتمد على الانطباع؛ اختر مؤشراً تراجعه
إذا كنت تدير خادم لينكس أو حاوية Docker، فأنت تعرف أن مساحة التخزين تنفد بسرعة. أدوات مثل du و ncdu تعطيك أرقاماً، لكنها لا تظهر لك الصورة الكبيرة. Leaves هي أداة TUI (واجهة مستخدم نصية) تعرض توزيع المساحة على شكل Treemap، مثل WinDirStat لكن في الطرفية. هذا الدليل يشرح لك كيفية تركيبها واستخدامها خطوة بخطوة.
ما هو Leaves؟
Leaves هي أداة مفتوحة المصدر مبنية بلغة Rust، تهدف إلى تحليل مساحة التخزين في الخوادم والحاويات. تعرض Treemap ثنائي الأبعاد يوضح توزيع الملفات والمجلدات بحسب حجمها. تم إنشاؤها بواسطة patonw وظهرت على Hacker News كبديل TUI لأدوات مثل WinDirStat و KDirStat.
من يحتاج Leaves؟ (ومن لا يحتاجه)
يحتاجه: مطورو الخوادم، مسؤولو النظام، مستخدمو Docker الذين يحتاجون لتحليل مساحة التخزين عن بعد بدون واجهة رسومية. لا يحتاجه: من يستخدم ncdu بشكل مريح ولا يريد تغيير سير العمل، أو من يحتاج تحليلاً آنياً للمساحة (Leaves يحتاج مسحاً أولياً).
المميزات الرئيسية
- عرض Treemap تفاعلي في الطرفية
- أداء عالي بفضل Rust ومعالجة متعددة الخيوط
- يدعم ملايين الملفات
- إمكانية التنقل بين المجلدات (drill down)
- خفيف الوزن ولا يحتاج واجهة رسومية
المتطلبات الأساسية
- نظام تشغيل: لينكس (تم اختباره على Ubuntu 20.04+)، وربما macOS
- Rust و Cargo (لتثبيت من المصدر) أو ثنائي جاهز
- طرفية تدعم Unicode (معظم المحاكيات الحديثة تدعمه)
طريقة التركيب (خطوة بخطوة)
ملاحظة: README الأصلي غير واضح تماماً، لذا الخطوات تقريبية بناءً على بنية المشروع. يفضل استخدام Cargo.
- تأكد من تثبيت Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - استنساخ المستودع:
git clone https://github.com/patonw/leaves.git - ادخل إلى المجلد:
cd leaves - بناء المشروع:
cargo build --release - الملف التنفيذي سيكون في
target/release/leaves. يمكنك نسخه إلى مسار في PATH:sudo cp target/release/leaves /usr/local/bin/
بديل: إذا وُجد ثنائي جاهز في صفحة الإصدارات (Releases)، يمكنك تنزيله مباشرة.
طريقة التشغيل والاستخدام الأساسي
شغل Leaves مع المسار الذي تريد تحليله: leaves -d /var/log. ستظهر شاشة Treemap. استخدم مفاتيح الأسهم للتنقل، Enter للدخول إلى مجلد، Backspace للرجوع. اضغط q للخروج.
أخطاء شائعة وحلولها
استخدامات عملية (أمثلة)
مثال 1: تحليل مجلد السجلات: leaves -d /var/log لتحديد أي ملف سجل يستهلك مساحة كبيرة.
مثال 2: داخل حاوية Docker: docker exec -it container_name leaves -d / (إذا كان Leaves مثبتاً في الحاوية).
مثال 3: مقارنة مع ncdu: جرب Leaves على مجلد ثم ncdu على نفس المجلد. ستلاحظ أن Leaves يعطيك نظرة شاملة أسرع.
هل يستحق Leaves التجربة؟
نعم، إذا كنت تبحث عن أداة TUI حديثة وسريعة لتحليل المساحة. لكنه لا يزال جديداً، لذا توقع بعض الأخطاء. جربه أولاً على خادم اختبار.
بدائل Leaves
أسئلة شائعة (FAQ)
هل Leaves يدعم أنظمة التشغيل الأخرى غير لينكس؟
لم يختبر على Windows، لكنه قد يعمل على macOS.
كيف يمكنني تثبيت Leaves إذا لم يكن لدي Rust؟
ابحث عن ثنائي جاهز في صفحة Releases على GitHub، أو استخدم Cargo بعد تثبيت Rust.
هل Leaves آمن للاستخدام على خوادم الإنتاج؟
نعم، لكن اختبره أولاً على خادم غير إنتاجي.
ما الفرق بين Leaves وncdu؟
Leaves يعرض Treemap (خريطة مساحية) بينما ncdu يعرض قائمة هرمية.
هل يمكن استخدام Leaves على نظام macOS؟
نظرياً نعم، لكن لم يختبر بشكل كافٍ.
كيف يمكنني تحديث Leaves إلى أحدث إصدار؟
اسحب آخر التغييرات من Git وأعد البناء: git pull && cargo build --release
هل Leaves يدعم عرض الملفات المخفية؟
نعم، يظهرها بشكل افتراضي.
ماذا أفعل إذا ظهر خطأ 'command not found' بعد التثبيت؟
تأكد من أن المسار الذي نسخت إليه الملف التنفيذي موجود في PATH.
Playbook التطبيق
خطوات عملية مرتبة من التشخيص إلى النتيجة
تثبيت Rust (إذا لم يكن مثبتاً)
لماذا؟ Leaves مبنية بلغة Rust وتحتاج إلى Cargo للبناء من المصدر.
كيف؟ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
الناتج: تثبيت Rust و Cargo بنجاح.
استنساخ مستودع Leaves
لماذا؟ للحصول على الكود المصدري للأداة.
كيف؟ git clone https://github.com/patonw/leaves.git
الناتج: مجلد leaves في الدليل الحالي.
بناء Leaves
لماذا؟ لإنشاء ملف تنفيذي قابل للتشغيل.
كيف؟ cd leaves && cargo build --release
الناتج: ملف تنفيذي في target/release/leaves.
تثبيت Leaves في PATH
لماذا؟ لتتمكن من تشغيل leaves من أي مكان.
كيف؟ sudo cp target/release/leaves /usr/local/bin/
الناتج: أمر leaves متاح عالمياً.
تشغيل Leaves على مجلد
لماذا؟ لتحليل مساحة التخزين وعرض Treemap.
كيف؟ leaves -d /var/log
الناتج: شاشة Treemap تفاعلية تعرض توزيع الملفات.
التنقل في Treemap
لماذا؟ لاستكشاف المجلدات الفرعية وتحديد الملفات الكبيرة.
كيف؟ استخدم مفاتيح الأسهم للتنقل، Enter للدخول، Backspace للرجوع، q للخروج.
الناتج: تحديد الملفات والمجلدات التي تستهلك مساحة كبيرة.
قوالب جاهزة للنسخ
حوّل القراءة إلى تنفيذ سريع
leaves -d /var/log
docker exec -it container_name leaves -d /
wget https://github.com/patonw/leaves/releases/latest/download/leaves-linux-amd64.tar.gz && tar -xzf leaves-linux-amd64.tar.gz && sudo mv leaves /usr/local/bin/
مصفوفة الأخطاء
اعرف أين يتعثر الناس وكيف تتجنب ذلك
شجرة القرار
ماذا تفعل حسب حالتك؟
إذا: إذا كنت تبحث عن أداة TUI حديثة وسريعة
إذن: استخدم Leaves.
إذا: إذا كنت تفضل القوائم الهرمية على الخرائط المساحية
إذن: استخدم ncdu.
إذا: إذا كنت تحتاج تحليلاً آنياً للمساحة
إذن: استخدم du أو ncdu لأن Leaves يحتاج مسحاً أولياً.
إذا: إذا كنت تعمل على خادم إنتاجي
إذن: اختبر Leaves أولاً على خادم اختبار.
خطة تطبيق 7 أيام
جدول صغير يمنع التسويف
- اليوم 1: تثبيت Rust و Leaves على خادم اختبار.
- اليوم 2: تشغيل leaves على /var/log وتحليل النتائج.
- اليوم 3: تجربة leaves داخل حاوية Docker.
- اليوم 4: مقارنة leaves مع ncdu على نفس المجلد.
- اليوم 5: اختبار leaves على مجلد يحتوي ملايين الملفات.
- اليوم 6: توثيق الإعدادات والأخطاء الشائعة.
- اليوم 7: مشاركة التجربة مع الفريق وجمع الملاحظات.
حقائق سريعة تحفظها
نقاط مختصرة ترجع لها لاحقاً
1. Leaves مبنية بلغة Rust وتستخدم معالجة متعددة الخيوط.
2. تعرض Treemap تفاعلي في الطرفية بدون واجهة رسومية.
3. تدعم ملايين الملفات بفضل الأداء العالي.
4. يمكن التنقل بين المجلدات (drill down) باستخدام لوحة المفاتيح.
5. تم إنشاؤها بواسطة patonw وظهرت على Hacker News.
6. تحتاج إلى طرفية تدعم Unicode لعرض صحيح.
7. يمكن تثبيتها عبر Cargo أو ثنائي جاهز من صفحة Releases.
8. لا تزال جديدة وقد تحتوي على أخطاء.
9. بدائلها: ncdu، gdu، du.
أسئلة شائعة
إجابات مباشرة على ما يبحث عنه الزائر
مصطلحات سريعة
تعريفات مختصرة تمنع الالتباس
واجهة مستخدم نصية تعمل داخل الطرفية.
خريطة مساحية تعرض توزيع المساحة باستخدام مستطيلات متداخلة.
مدير حزم لغة Rust يستخدم لبناء وإدارة المشاريع.
التنقل إلى مجلد فرعي لعرض محتوياته داخل Treemap.
أسئلة مرتبطة يبحث عنها الناس
استخدمها كمسارات متابعة داخل نفس الموضوع
لماذا هذا المرجع يتجاوز الموضوع نفسه؟
تحول القارئ: من مستخدم يعتمد على du/ncdu ويشعر بالحاجة إلى رؤية شاملة، إلى مستخدم قادر على تحليل مساحة التخزين بصرياً باستخدام Leaves واتخاذ قرارات أسرع
- إدارة الخوادم السحابية
- تحسين أداء الحاويات
- أدوات مفتوحة المصدر للمطورين
كيف تستخدم هذا المرجع لاحقاً؟
القيمة الحقيقية تظهر عند العودة والتطبيق
لا تتعامل معه كمقال يُقرأ مرة واحدة. استخدمه كلوحة تشغيل: ارجع للتشخيص عند ظهور المشكلة، وللقوالب عند التطبيق، ولمؤشرات القياس عند المراجعة.
Leaves أداة واعدة تسد فجوة في أدوات تحليل المساحة النصية. جربها على خادم اختبار، وقارنها مع ncdu. إذا أعجبتك، استخدمها بانتظام. تذكر أنها لا تزال جديدة، لذا ساهم في تحسينها عبر GitHub إذا وجدت أخطاء.
خطة تحديث هذا الدليل
حتى يبقى المرجع صالحاً مع الوقت
- تحقق من إصدارات Leaves الجديدة على GitHub كل شهر.
- تحديث خطوات التثبيت إذا تغيرت واجهة Cargo.
- إضافة أمثلة استخدام جديدة من المجتمع.
- مراجعة الأخطاء الشائعة بناءً على تقارير المستخدمين.

التعليقات (0)
لا توجد تعليقات بعد. كن أول من يبدأ النقاش 👇