يُعد فحص صحة السيرفر (Server Health Check) من أهم المهام التي يجب على كل مسؤول أنظمة أو مدير خوادم تنفيذها بشكل دوري، سواء كان يدير VPS أو Dedicated Server أو خادمًا سحابيًا يشغّل مواقع WordPress أو Laravel أو Node.js أو قواعد بيانات وخدمات الشركات.
الكثير من الأعطال لا تحدث بشكل مفاجئ، بل تسبقها مؤشرات واضحة مثل ارتفاع استهلاك الذاكرة، امتلاء مساحة القرص، توقف خدمة مهمة، أو زيادة الحمل على المعالج. تجاهل هذه المؤشرات قد يؤدي إلى توقف الموقع بالكامل، ظهور أخطاء مثل 500 Internal Server Error أو 502 Bad Gateway أو حتى فقدان البيانات.
في هذا الدليل ستتعرف على أهم أوامر Linux التي تمكنك من فحص حالة السيرفر خلال أقل من خمس دقائق، مع شرح معنى كل نتيجة وكيفية تفسيرها، لتتمكن من اكتشاف المشكلات قبل أن تؤثر على خدماتك.
محتويات المقال
- ← لماذا يعتبر Server Health Check مهمًا؟
- ← أول خطوة: التحقق من الخدمات الفاشلة
- ← فحص الخدمات المهمة
- ← معرفة المنافذ المفتوحة والخدمات العاملة
- ← مراقبة مساحة القرص
- ← فحص مساحة Inodes
- ← مراقبة استهلاك الذاكرة
- ← معرفة مدة تشغيل السيرفر والحمل
- ← معرفة أكثر العمليات استهلاكًا للموارد
- ← فحص استخدام المعالج
- ← فحص الشبكة
- ← مراجعة سجل النظام
- ← مراقبة استهلاك التخزين
- ← فحص حالة الشبكة
- ← التحقق من استخدام Swap
- ← قائمة الفحص اليومية للسيرفر
- ← أدوات احترافية لمراقبة السيرفر
- ← أفضل الممارسات للحفاظ على صحة السيرفر
- ← الأسئلة الشائعة
- ← الخلاصة
لماذا يعتبر Server Health Check مهمًا؟
يهدف فحص صحة السيرفر إلى التأكد من أن جميع مكونات النظام تعمل بصورة طبيعية، وأن الموارد المتاحة مثل المعالج والذاكرة والتخزين والشبكة والخدمات الأساسية تعمل بكفاءة.
يساعد الفحص الدوري على:
- اكتشاف الخدمات المتوقفة قبل أن يلاحظها العملاء.
- مراقبة استهلاك المعالج والذاكرة.
- التأكد من وجود مساحة تخزين كافية.
- اكتشاف المنافذ والخدمات المفتوحة.
- تقليل وقت التوقف (Downtime).
- تحسين استقرار وأداء السيرفر.
- تسهيل تشخيص الأعطال عند حدوثها.
إذا كنت تدير أكثر من خادم، فإن تنفيذ هذه الخطوات يوميًا يوفر عليك ساعات طويلة من استكشاف الأخطاء لاحقًا.
أول خطوة: التحقق من الخدمات الفاشلة
ابدأ دائمًا بهذا الأمر:
systemctl --failed
يعرض هذا الأمر جميع الخدمات التي فشلت في العمل.
إذا كانت النتيجة:
0 loaded units listed.
فهذا يعني أنه لا توجد أي خدمة متوقفة بسبب خطأ.
أما إذا ظهرت خدمات مثل:
php-fpm.service
mysql.service
docker.service
فهذا يعني أن إحدى الخدمات الأساسية توقفت ويجب مراجعة سبب التوقف.
يمكن بعدها فحص الخدمة بالتفصيل باستخدام:
systemctl status php-fpm
ستجد معلومات مهمة مثل:
- هل الخدمة تعمل؟
- متى توقفت؟
- آخر رسائل الخطأ.
- سبب الفشل.
فحص الخدمات المهمة
حتى لو لم تظهر خدمات فاشلة، من الأفضل التأكد من الخدمات الأساسية يدويًا.
على سبيل المثال:
systemctl status nginx
أو
systemctl status apache2
ثم
systemctl status mariadb
أو
systemctl status mysql
وأيضًا:
systemctl status php-fpm
إذا كانت الحالة:
active (running)
فهذا يعني أن الخدمة تعمل بصورة طبيعية.
معرفة المنافذ المفتوحة والخدمات العاملة
من أهم أوامر Linux:
وللمزيد من أوامر الإدارة، راجع: أوامر Linux 2026: الدليل الشامل لسطر الأوامر وإدارة السيرفرات.
ss -tlnp
يعرض هذا الأمر:
- جميع المنافذ المفتوحة.
- البرامج التي تستمع عليها.
- أرقام المنافذ.
- العمليات المرتبطة بها.
قد تظهر نتيجة مثل:
LISTEN 0 511 0.0.0.0:80
LISTEN 0 511 0.0.0.0:443
LISTEN 0 128 127.0.0.1:3306
LISTEN 0 128 127.0.0.1:6379
وهذا يعني:
- المنفذ 80 يعمل.
- المنفذ 443 يعمل.
- قاعدة بيانات MySQL تستمع محليًا.
- Redis يعمل.
إذا كان التطبيق يجب أن يعمل على المنفذ 3000 مثل Node.js ولم يظهر في القائمة، فغالبًا التطبيق متوقف.
مراقبة مساحة القرص
من أكثر الأسباب التي تؤدي إلى توقف المواقع امتلاء القرص.
استخدم:
df -h
ستظهر نتيجة مثل:
Filesystem Size Used Avail Use%
/dev/sda1 100G 42G 58G 42%
شرح الأعمدة:
- Size = الحجم الكلي.
- Used = المستخدم.
- Avail = المتبقي.
- Use% = نسبة الاستخدام.
إذا وصلت النسبة إلى أكثر من 90% فمن الأفضل تنظيف الملفات أو زيادة المساحة قبل أن تبدأ المشاكل بالظهور.
فحص مساحة Inodes
أحيانًا تكون مساحة القرص فارغة لكن لا يمكنك إنشاء ملفات جديدة.
السبب يكون انتهاء عدد الـ Inodes.
لذلك استخدم:
df -i
إذا كانت نسبة الاستخدام قريبة من 100% فيجب حذف الملفات الصغيرة غير الضرورية مثل ملفات Cache أو Logs القديمة.
مراقبة استهلاك الذاكرة
نفذ:
free -h
مثال:
Mem:
Total 8Gi
Used 3Gi
Free 2Gi
Buff/Cache 3Gi
شرح النتائج:
Total
إجمالي الذاكرة.
Used
الذاكرة المستخدمة فعليًا.
Free
الذاكرة الحرة.
Buff/Cache
ذاكرة يستخدمها Linux لتسريع الوصول للملفات، ويتم تحريرها تلقائيًا عند الحاجة.
وجود Cache مرتفع لا يعني أن السيرفر يعاني من مشكلة، بل هو سلوك طبيعي في Linux.
معرفة مدة تشغيل السيرفر والحمل
استخدم:
uptime
مثال:
up 35 days,
load average: 0.20, 0.45, 0.60
يشير Load Average إلى متوسط الحمل خلال:
- الدقيقة الأخيرة.
- آخر خمس دقائق.
- آخر خمس عشرة دقيقة.
إذا كان السيرفر يحتوي على:
4 أنوية CPU
فإن:
Load = 4
يعتبر طبيعيًا.
أما إذا أصبح:
Load = 15
فهناك ضغط مرتفع يحتاج إلى تحليل.
معرفة أكثر العمليات استهلاكًا للموارد
استخدم:
ويُعدّ الأمر top أساسيًا لمراقبة العمليات؛ للتفاصيل راجع صفحة دليل top الرسمية.
top
أو
htop
ستشاهد:
- استهلاك المعالج.
- استهلاك الذاكرة.
- العمليات النشطة.
- المستخدم الذي يشغل كل عملية.
إذا لاحظت أن عملية PHP أو Node.js أو MySQL تستهلك معظم الموارد، فقد تحتاج إلى تحسين التطبيق أو زيادة الموارد.
فحص استخدام المعالج
يمكن استخدام:
وللأسباب الخفية لارتفاع الموارد، راجع: لماذا يرتفع استهلاك CPU وRAM في موقعك بدون سبب؟ الأسباب الخفية والحلول في 2026.
mpstat
أو:
vmstat
لمراقبة استهلاك المعالج والعمليات المنتظرة.
إذا كان المعالج يعمل بنسبة 100% لفترات طويلة فقد تحتاج إلى:
- تحسين الكود.
- استخدام Cache.
- زيادة عدد الأنوية.
فحص الشبكة
لمعرفة الاتصالات الحالية:
ss -tun
ولمعرفة عدد الاتصالات القادمة:
ss -ant
إذا وجدت آلاف الاتصالات غير الطبيعية فقد يكون السيرفر يتعرض لهجوم أو أن أحد التطبيقات يعاني من مشكلة.
مراجعة سجل النظام
من أهم الأوامر:
journalctl -xe
يعرض آخر أخطاء النظام.
ولعرض سجل خدمة معينة:
journalctl -u nginx
أو
journalctl -u php-fpm
أو
journalctl -u docker
غالبًا ستجد هنا السبب الحقيقي لأي مشكلة.
مراقبة استهلاك التخزين
يمكن معرفة أكبر المجلدات باستخدام:
du -sh /*
أو:
du -sh /var/*
وهذا يساعد على اكتشاف المجلدات التي تستهلك معظم مساحة القرص.
فحص حالة الشبكة
للتحقق من الاتصال الخارجي:
ping 8.8.8.8
ثم:
ping google.com
إذا نجح الأول وفشل الثاني، فالمشكلة غالبًا في إعدادات DNS.
التحقق من استخدام Swap
استخدم:
swapon --show
إذا كان Swap مستخدمًا بكثرة باستمرار، فقد تكون الذاكرة غير كافية لتشغيل التطبيقات الحالية.
قائمة الفحص اليومية للسيرفر
يمكن تنفيذ هذه الأوامر يوميًا خلال أقل من خمس دقائق:
systemctl --failed
systemctl status nginx
systemctl status php-fpm
systemctl status mysql
ss -tlnp
df -h
df -i
free -h
uptime
top
journalctl -p err -n 20
إذا كانت جميع النتائج طبيعية، فغالبًا أن السيرفر يعمل بكفاءة.
أدوات احترافية لمراقبة السيرفر
رغم أن أوامر Linux كافية، إلا أن استخدام أدوات المراقبة يجعل اكتشاف الأعطال أسرع.
ولمراقبة التوقّف تلقائيًا، راجع: مراقبة وقت التشغيل (Uptime Monitoring): كيف تعرف أن موقعك متوقّف قبل عملائك؟ دليل شامل 2026.
من أشهر الأدوات:
- Uptime Kuma
- Netdata
- Grafana
- Prometheus
- Zabbix
- Nagios
توفر هذه الأدوات رسومات بيانية وتنبيهات فورية عند توقف الخدمات أو ارتفاع استهلاك الموارد.
أفضل الممارسات للحفاظ على صحة السيرفر
- راقب مساحة القرص بشكل دوري.
- حدّث النظام باستمرار.
- فعّل إعادة تشغيل الخدمات تلقائيًا باستخدام Systemd.
- راقب ملفات السجل واحذف القديمة عند الحاجة.
- استخدم نسخًا احتياطية منتظمة.
- لا تنتظر حتى يتوقف الموقع، بل راقب المؤشرات باستمرار.
- اختبر أداء السيرفر بعد كل تحديث أو تغيير في الإعدادات.
- استخدم أدوات مراقبة احترافية إذا كنت تدير أكثر من خادم.
الأسئلة الشائعة
كم مرة يجب إجراء Server Health Check؟
يفضل يوميًا في الخوادم الإنتاجية، وأسبوعيًا على الأقل في الخوادم منخفضة الاستخدام.
وتوفّر مرام هوست خوادم مُراقَبة على مدار الساعة مع تنبيهات استباقية، لتكمّل روتين Server Health Check وتحافظ على استقرار خدماتك.
هل يمكن الاعتماد على أوامر Linux فقط؟
نعم، فهي توفر معلومات دقيقة جدًا، لكن أدوات المراقبة تضيف تنبيهات ورسومًا بيانية تساعد في اكتشاف المشكلات بسرعة.
ما أهم أمر يجب تشغيله أولًا عند وجود مشكلة؟
ابدأ دائمًا بـ:
systemctl --failed
ثم راجع الخدمات الأساسية باستخدام:
systemctl status
وبعدها افحص الموارد باستخدام:
df -h
free -h
uptime
ss -tlnp
الخلاصة
يُعد Server Health Check أحد أهم الإجراءات الوقائية للحفاظ على استقرار الخوادم وتقليل الأعطال المفاجئة. فبدلًا من انتظار توقف الموقع أو ظهور رسائل الخطأ، يمكنك اكتشاف المشكلات مبكرًا من خلال مجموعة بسيطة من أوامر Linux التي تستغرق أقل من خمس دقائق.
باختصار، يمنحك Server Health Check الدوري رؤيةً مبكرة لأي عطل قبل أن يؤثر على خدماتك. اجعل Server Health Check عادةً يومية عبر الأوامر والأدوات، ومع استضافة مُراقَبة مثل المرام يبقى خادمك مستقرًا وآمنًا.
يساعد استخدام أوامر مثل systemctl –failed وss -tlnp وdf -h وfree -h وuptime على إعطاء صورة شاملة عن حالة الخدمات، واستهلاك الموارد، وحالة التخزين والشبكة، مما يسهّل اتخاذ الإجراءات المناسبة قبل أن تتحول المشكلات الصغيرة إلى أعطال تؤثر على المستخدمين.
إذا كنت تدير خادم VPS أو Dedicated Server أو بيئة استضافة لمواقع WordPress وLaravel وNode.js، فإن جعل Server Health Check جزءًا من روتينك اليومي سيزيد من استقرار الخادم، ويحسن الأداء، ويقلل وقت التوقف، ويمنحك قدرة أكبر على تشخيص الأعطال بسرعة وكفاءة.
هل تبحث عن استضافة موثوقة لموقعك؟
شركة مرام هوست تقدم أفضل حلول الاستضافة والسيرفرات بدعم فني عربي 24/7
اكتشف خدماتنا ←
