مقدمة
عندما يتباطأ موقع إلكتروني أو يبدأ تطبيق ما بتجاوز مهلة الاستجابة، يكون السؤال الأول دائمًا هو نفسه: ماذا يفعل الخادم فعليًا في هذه اللحظة؟ في لينكس، لا تحتاج إلى منظومة مراقبة ثقيلة للإجابة عن هذا السؤال. فأداتان مدمجتان (أو على بُعد أمر واحد) — وهما top وhtop — إضافة إلى حفنة من أوامر المقاييس، تمنحك صورة واضحة وفورية لسلوك المعالج والذاكرة والقرص والشبكة.
يوضح لك هذا الدليل بالضبط كيفية قراءة تلك المقاييس على أوبونتو 22.04 أو 24.04 LTS، وهي نفس نسخ نظام التشغيل التي تحصل عليها على خادم VPS أو خادم سحابي من Skyline Cloud. وقد جرى التحقق من كل أمر أدناه على خادم أوبونتو فعلي.
المتطلبات المسبقة
- خادم لينكس يعمل بنظام أوبونتو 22.04/24.04 (أو توزيعة مشابهة).
- وصول SSH بمستخدم يستطيع تشغيل أوامر
sudo.
الخطوة 1 — اقرأ حالة النظام بلمحة سريعة باستخدام top
تأتي أداة top مع كل توزيعة لينكس، لذا ابدأ بها. شغّلها:
top
الجزء الأكثر فائدة هو رأس الشاشة:
top - 21:50:56 up 72 days, 20:54, 3 users, load average: 1.67, 1.18, 0.76
Tasks: 20 total, 1 running, 19 sleeping, 0 stopped, 0 zombie
%Cpu(s): 29.0 us, 6.5 sy, 0.0 ni, 62.9 id, 0.0 wa, 0.0 hi, 1.6 si, 0.0 st
MiB Mem : 7937.4 total, 402.8 free, 5393.0 used, 2141.6 buff/cache
MiB Swap: 969.0 total, 7.7 free, 961.3 used. 2107.8 avail Mem
ما الذي يخبرك به كل سطر:
- load average (متوسط الحِمل) — ثلاثة أرقام تمثل آخر دقيقة و5 دقائق و15 دقيقة. قارنها بعدد أنوية معالجك (شغّل
nproc). على خادم بأربع أنوية، يعني الحِمل4.0أنه مشغول بالكامل؛ والقيم المرتفعة المستمرة فوق عدد الأنوية تعني أن النظام محمّل بشكل زائد. - %Cpu(s) — توزيع وقت المعالج. الحقول الأهم:
us(عمليات المستخدم)، وsy(النظام/النواة)، وid(الخمول)، وwa(الانتظار على إدخال/إخراج القرص). ارتفاعwaيشير إلى قرص بطيء وليس معالجًا بطيئًا. أماst(الاستيلاء) إذا تجاوز 0 على خادم VPS فيعني أن "جارًا مزعجًا" يستهلك دورات معالجك. - Mem / Swap — الإجمالي والمتاح والمستخدم و
buff/cache. والرقم الذي يجب مراقبته هوavail Memوليسfree: إذ يستخدم لينكس عمدًا ذاكرة الوصول العشوائي الفائضة للتخزين المؤقت، لذا فإن انخفاض قيمة "free" أمر طبيعي وصحي.
مفاتيح مفيدة أثناء تشغيل top: اضغط M للترتيب حسب الذاكرة، وP للترتيب حسب المعالج، و1 لعرض كل نواة على حدة، وk لإنهاء عملية عبر رقم المعرّف PID، وq للخروج.
الخطوة 2 — ثبّت htop واستخدمه للحصول على عرض أكثر سهولة
htop هو عارض عمليات تفاعلي ملوّن، وأسهل بكثير في القراءة من top. ثبّته:
sudo apt update
sudo apt install -y htop
ثم شغّله:
htop
في الأعلى تحصل على أشرطة معالج لكل نواة، وشريط للذاكرة، وشريط للمبادلة (swap). تُرمِّز الألوان نوع الاستخدام — بالنسبة لأشرطة المعالج، الأزرق للعمليات منخفضة الأولوية، والأخضر لوقت المستخدم، والأحمر لوقت النواة/النظام. وأسفل ذلك توجد قائمة عمليات قابلة للتمرير.
المزايا الرئيسية مقارنة بـ top:
- التمرير بمفاتيح الأسهم؛ دون الحاجة إلى احتواء كل شيء في شاشة واحدة.
- اضغط
F6لتغيير عمود الترتيب، أوF4للتصفية حسب اسم العملية. - اضغط
F5لعرض شجري يُظهر علاقات العمليات الأصل/الفرع. - اضغط
F9لإرسال إشارة (إنهاء) للعملية المحددة — دون الحاجة إلى كتابة رقم PID.
للفحص المستمر لفترة أطول، يكون htop عادةً هو الأداة التي تُبقيها مفتوحة في نافذة SSH واحدة بينما تعيد إنتاج المشكلة.
الخطوة 3 — افحص الذاكرة والمبادلة بدقة باستخدام free
يعرض top الذاكرة بشكل حي؛ أما free فيمنحك لقطة نظيفة:
free -h
total used free shared buff/cache available
Mem: 7.8Gi 5.3Gi 417Mi 129Mi 2.1Gi 2.1Gi
Swap: 968Mi 961Mi 7.0Mi
اقرأ عمود available للحكم على ضغط الذاكرة الحقيقي — فهو يقدّر كمية ذاكرة الوصول العشوائي القابلة للاستعادة لبرامج جديدة دون اللجوء إلى المبادلة. فإذا كانت قيمة available قريبة من الصفر و كانت المبادلة مستخدمة بكثافة، فإن الخادم يعاني من نقص في الذاكرة، وعليك ترقية حجمها أو التحقق من وجود تسريب. أما الاستخدام الخفيف للمبادلة بمفرده فليس مدعاة للقلق.
الخطوة 4 — افهم الحِمل وطابور التشغيل باستخدام uptime وvmstat
لقراءة الحِمل من سطر واحد دون فتح top:
uptime
ولمعرفة ما الذي يدفع الحِمل عبر الزمن، يأخذ vmstat عينات من النظام على فترات (هنا، كل ثانية واحدة، 5 مرات):
vmstat 1 5
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 984328 412820 232880 1960148 0 1 389 74 0 1 11 2 86 0 1
العمودان في أقصى اليسار هما المفتاح: r هو عدد العمليات التي تنتظر المعالج، و**b** هو عدد العمليات المحجوبة بانتظار الإدخال/الإخراج. فإذا تجاوز r باستمرار عدد أنويتك، فأنت مقيّد بالمعالج؛ وارتفاع b المستمر يعني أن إدخال/إخراج القرص أو الشبكة هو عنق الزجاجة. ويُظهر العمودان si/so المبادلة الداخلة/الخارجة — وأي قيمة فوق 0 هنا تعني مبادلة نشطة تضرّ بالأداء.
الخطوة 5 — راقب إدخال/إخراج القرص باستخدام iostat
أداة iostat جزء من حزمة sysstat:
sudo apt install -y sysstat
iostat -xz 2 3
يقدّم هذا الأمر إحصاءات موسّعة لكل جهاز كل ثانيتين، ثلاث مرات. ركّز على:
%util— مدى انشغال الجهاز؛ القيم القريبة من 100% تعني أن القرص مشبَع.await— متوسط الوقت (بالميلي ثانية) لكل طلب إدخال/إخراج، شاملًا وقت الانتظار في الطابور. ارتفاعawaitيدل على قرص يكافح للمواكبة.r/sوw/s— عدد عمليات القراءة والكتابة في الثانية.
فإذا سبق ورأيت قيمة wa مرتفعة في top، فهذا هو المكان الذي تؤكد فيه أن القرص هو السبب.
الخطوة 6 — افحص اتصالات الشبكة باستخدام ss
ss هو البديل الحديث لـ netstat. للحصول على ملخص سريع للمنافذ (sockets):
ss -s
ولسرد منافذ TCP المستمعة والعملية وراء كل منها:
sudo ss -tlnp
إن الارتفاع المفاجئ في الاتصالات المُنشأة إلى منفذ واحد — بالتزامن مع ارتفاع المعالج في htop — كثيرًا ما يشير إلى موجة حركة مرور أو عميل مسيء.
مرجع سريع للمقاييس
| المقياس | الأمر | علامة صحية | علامة تحذير |
|---|---|---|---|
| متوسط الحِمل | uptime، top |
عند عدد الأنوية أو أقل | مستمر فوق عدد الأنوية |
| المعالج | top، htop |
id مرتفع، wa/st منخفض |
wa مرتفع (قرص) أو st (تنافس VPS) |
| الذاكرة | free -h |
available مريح |
available ~0 + مبادلة كثيفة |
| طابور التشغيل | vmstat 1 5 |
r وb منخفضان |
r مرتفع (معالج) أو b (إدخال/إخراج) |
| إدخال/إخراج القرص | iostat -xz 2 3 |
%util منخفض، await منخفض |
%util قرب 100%، await متصاعد |
| الشبكة | ss -s، ss -tlnp |
أعداد اتصالات مستقرة | ارتفاعات اتصال مفاجئة |
الخاتمة
باستخدام top وhtop وfree وvmstat وiostat وss، يمكنك تشخيص أي بلاغ تقريبًا من نوع "الخادم يبدو بطيئًا" دون تثبيت منصة مراقبة كاملة. ابدأ بـ htop للحصول على الصورة الحية، ثم أكّد حالة الذاكرة بـ free -h، وتعمّق في القرص باستخدام iostat عندما ترى ارتفاعًا في انتظار الإدخال/الإخراج.
تتألق هذه الأدوات على خادم مُجهَّز بشكل صحيح. فعلى خادم VPS أو خادم سحابي من Skyline Cloud، تحصل على نسخ أوبونتو 22.04/24.04 LTS، وإقامة للبيانات داخل المملكة بما يتوافق مع متطلبات نظام حماية البيانات الشخصية (PDPL) والهيئة الوطنية للأمن السيبراني (NCA) والهيئة السعودية للبيانات والذكاء الاصطناعي (SDAIA)، ودعم محلي ناطق بالعربية. استكشف باقة الاستضافة السحابية في السعودية الكاملة، وإذا كنت تشغّل البريد على البنية التحتية نفسها، فاطّلع على استضافة البريد الإلكتروني للأعمال.
هل أنت مستعد لتطبيق مهارات المراقبة هذه على بنية تحتية تبقى داخل المملكة؟ أنشئ حسابك في Skyline Cloud وشغّل خادمًا خلال دقائق.
Comments
0 total · 0 threads