تعرضت شبكة Ubuntu للانقطاع بعد تحديث النواة

كيف أصلحت مشاكل الشبكة في أوينتو

Page content

بعد تثبيت نواة جديدة تلقائيًا، فقدت شبكة إيثرنت في Ubuntu 24.04. وقع هذا الموقف المزعج معي للمرة الثانية، لذا سأوثق الحل هنا لمساعدته الآخرين الذين يواجهون نفس المشكلة.

أوامر لتصحيح مشاكل الشبكة

هذه الأوامر استعادت اتصالي بالشبكة. أولاً، تحقق من إصدار النواة الخاصة بك باستخدام uname -r (وسيعرض شيء مثل 6.14.0-37-generic)، ثم استبدل رقم الإصدار في الأوامر أدناه:

# تحقق من واجهات الشبكة وعناوين IP
ifconfig

# تحقق من إصدار النواة
uname -r

# تحديث قائمة الحزم وتحديث النظام
sudo apt update
sudo apt upgrade

# تثبيت وحدات النواة الإضافية لإصدار النواة المكتشف أعلاه
# استبدل 6.14.0-37-generic بإصدار النواة الفعلي الخاص بك
sudo apt install linux-modules-extra-6.14.0-37-generic

# إعادة بناء initramfs لضمان تضمين وحدات النواة الجديدة
sudo update-initramfs -u

# تثبيت المحركات الخاصة الموصى بها (خاصةً لمحركات NVIDIA)
sudo ubuntu-drivers autoinstall

# إعادة التشغيل لتطبيق التغييرات
sudo reboot

فهم المشكلة والحل

عندما تقوم Ubuntu بتحديث النواة تلقائيًا إلى إصدار جديد (وهو ما يحدث أثناء التحديثات النظامية العادية)، تحدث أحيانًا مشكلة في عدم تضمين محركات التشغيل الخاصة بالشبكة بشكل صحيح في نظام الملفات المُبدئي (initramfs) للنواة الجديدة. هذا يظهر بشكل خاص في Ubuntu 24.04 بعد تحديث النواة، خاصةً في الأنظمة التي تحتوي على معدات شبكة محددة تتطلب وحدات نواة إضافية.

لماذا يحدث هذا

  1. وحدات النواة محددة بالإصدار: كل إصدار من النواة يتطلب مجموعة محددة من وحدات المحرك.
  2. initramfs قد يكون غير كامل: نظام الملفات المبدئي (initramfs) الذي يتم تحميله أثناء التشغيل قد لا يحتوي على جميع المحركات اللازمة للشبكة.
  3. غياب حزمة الوحدات الإضافية: قد لا يتم تثبيت حزمة linux-modules-extra الخاصة بإصدار النواة الجديدة تلقائيًا.

كيف يعمل الحل

تحل الأوامر أعلاه المشكلة من خلال:

  1. تثبيت وحدات النواة الإضافية: تحتوي حزمة linux-modules-extra-<version>-generic على وحدات نواة إضافية، بما في ذلك العديد من محركات الشبكة التي لا توجد في حزمة النواة الأساسية. بدون هذه الوحدات، لن يتم التعرف على معدات الشبكة الخاصة بك.

  2. إعادة بناء initramfs: أمر update-initramfs -u يضمن أن جميع الوحدات الضرورية (بما في ذلك محركات الشبكة الخاصة بك) تُعبأ في initramfs. هذا أمر حيوي لأن initramfs يتم تحميله قبل تثبيت نظام الملفات الجذر، ويحتاج إلى احتواء محركات الأجهزة الأساسية مثل واجهات الشبكة.

  3. تثبيت المحركات الخاصة: أمر ubuntu-drivers autoinstall يركز بشكل رئيسي على محركات الرسومات (خاصةً NVIDIA) ولا يحل مشاكل الشبكة مباشرة. ومع ذلك، إذا فقدت نظامك عدة محركات أثناء تحديث النواة، يضمن هذا الأمر تثبيت جميع المحركات الخاصة بشكل صحيح.

  4. إعادة التشغيل: يقوم بتحميل النواة الجديدة مع initramfs المُعد بشكل صحيح، مما يستعيد اتصال الشبكة.

بعد إعادة التشغيل، يجب أن يعود اتصال الشبكة إلى طبيعته. يمكنك التحقق من ذلك مرة أخرى عن طريق تشغيل ifconfig أو ip a لرؤية واجهات الشبكة مع العناوين المُعينة. إذا كنت بحاجة إلى التحقق من إصدار Ubuntu للتأكد من توافقه، فهناك عدة طرق متاحة.

إذا كنت تعمل على خادم وتريد تكوين إعدادات الشبكة بعد استعادة الاتصال، فقد تجد دليلنا حول كيفية تغيير عنوان IP ثابت في Ubuntu Server مفيدًا لتكوين الشبكة بشكل إضافي.

بوروت جميل جدًا!

روابط مفيدة