شروحات الكمبيوتر والإنترنت والموبايل

أوبونتو يغلق عملياتي و يسجلني خارج النظام

عندما يواجه مستخدمو أوبونتو مشاكل تتعلق بإغلاق الجلسات بشكل غير متوقع، قد يكون ذلك نتيجة للاستخدام المفرط للذاكرة أو موارد النظام. في هذا المقال، سنستعرض مشكلة متكررة تتعلق بخدمة swap في أوبونتو وكيف يمكن لمثل هذه المشكلات أن تؤدي إلى إنهاء الجلسات بشكل غير متوقع، وكيف يمكن التغلب على هذه العقبات.

ما هو الـ Swap وأهميته في نظام أوبونتو؟

swap هو جزء من القرص الصلب الذي يُستخدم كامتداد للذاكرة العشوائية (RAM) عندما تكون الموارد المتاحة لنظام التشغيل محدودة. في نظام أوبونتو، إذا كان استخدام الذاكرة مرتفعًا، يبدأ النظام باستخدام swap لتجنب نفاد الذاكرة. ومع ذلك، قد يؤدي الاستخدام المفرط للـ swap إلى ارتباك في النظام وبالتالي تسجيل الخروج المفاجئ للجلسات.

تحليل المشكلة: لماذا يقوم أوبونتو بإنهاء الجلسات؟

تناول المستخدم تجربة مع نظام أوبونتو 24.04.1 LTS حيث كانت العمليات التي تُستخدم كمية كبيرة من الذاكرة المخصصة للـ swap، مؤكداً على أنه على الرغم من أن النظام كان يعمل بشكل جيد في البداية، إلا أن المشاكل بدأت تظهر مع زيادة استخدام الـ swap إلى 300 جيجابايت. وهذه الزيادة كانت تؤدي إلى نفاد الذاكرة، مما ينتهي به الأمر إلى قيام ما يُعرف بقاتل الذاكرة (OOM Killer) بإنهاء بعض العمليات، مما يؤدي إلى تسجيل خروج المستخدم تلقائياً.

الأخطاء المدونة في السجل توضح جليًا أن النظام كان يعاني من نفاد الذاكرة، حيث تم إنهاء العمليات مثل "python" بسبب استخدام الذاكرة المفرط. يُظهر هذا أن أي عملية تستهلك قدرًا كبيرًا من الذاكرة قد تتعرض لخطر القتل من قِبل النظام كتدبير وقائي.

طرق معالجة المشكلة وإيقاف إنهاء الجلسات

هناك عدة خطوات يمكن اتباعها للحد من هذه الظاهرة، ومنها ما يلي:

  1. زيادة حجم الـ Swap: إذا كان لديك القدرة على ذلك، يمكنك زيادة حجم مساحة الـ swap على النظام، مما قد يساعد في تقليل الضغط على الذاكرة ويعطي النظام الوقت للتعامل مع العمليات بشكل أفضل.

  2. تعديل إعدادات الذاكرة: من الممكن تعديل إعدادات الـ Kernel لتقليل احتمالية نفاد الذاكرة. يُمكن تنفيذ الأوامر التالية لتغيير سلوك النظام:

    sudo sysctl -w vm.overcommit_memory=2
    sudo sysctl -w vm.overcommit_ratio=100
  3. تعطيل قاتل OOM لعمليات محددة: يُمكنك تعطيل وظيفة قاتل الذاكرة (OOM Killer) لبعض العمليات الحساسة عبر تعديل درجة حساسية العملية لقتلها، وذلك باستخدام الأمر التالي:

    echo -999 > /proc/$(pidof your_process)/oom_score_adj
  4. تحديث إعدادات التمهيد: يمكنك إضافة معلمة إلى grub لتعطيل وظائف قاتل OOM عند التمهيد. يمكن القيام بذلك عبر تعديل الملف كما يلي:

    sudo nano /etc/default/grub
    # أضف oom_kill_disable=1 إلى خيارات kernel

الحذر من أن هذه التعديلات يجب أن تتم بعناية وفهم جيد لتأثيراتها على النظام.

الخلاصة

مشكلة "إغلاق أوبونتو لجلساتي" ناتجة في معظم الأحيان عن الاستخدام المفرط للمساحة المخصصة للـ swap ونفاد الذاكرة. بخطوات بسيطة مثل زيادة حجم الـ swap، وتعديل إعدادات kernel، وتعطيل قاتل OOM، يمكن التغلب على هذه المشكلة بشكل فعال. إذا كنت تواجه نفس المشكلة، فكر في تطبيق هذه الحلول لتحسين استقرار نظام التشغيل وتجربتك الشخصية.

بذلك تكون قد اكتسبت معلومات شاملة حول كيفية معالجة مشكلة إغلاق الجلسة في أوبونتو واستخدام الـ swap، وهو الأمر الذي يُعتبر جزءًا أساسيًا من إدارة موارد النظام بشكل جيد.

فهد السلال

خبير تقني متخصص في شروحات الكمبيوتر والإنترنت والموبايل، يتمتع بخبرة واسعة في تقديم حلول تقنية مبتكرة ومبسطة. يهدف فهد إلى مساعدة المستخدمين على تحسين تجربتهم التقنية من خلال مقالات وأدلة عملية واضحة وسهلة الفهم.
زر الذهاب إلى الأعلى
Don`t copy text!