كيفية إصلاح خطأ بدء تشغيل Linux في BIOS

من المعروف أن تحديثات GRUB تؤدي إلى تشغيل أجهزة الكمبيوتر التي تعمل بنظام Linux في إعدادات BIOS أو UEFI. ويستفيد حل هذه المشكلة من خدعة مفيدة لاستعادة النظام يجب أن تعرفها حقًا.




دراسة حالة: GRUB 2:2.06.r322

تضمن تحديث النظام لتوزيعات Linux المستندة إلى Arch وArch في صيف 2022 إصدارًا جديدًا من نكش. GRUB تعني غرامو انتمُنْفَخ بمحمل.

أداة تحميل التشغيل هي تطبيق يبدأ عملية التمهيد عند تشغيل الكمبيوتر. يلزم تشغيل العديد من أدوات البرامج والأدوات المساعدة – من القسم الصحيح وبالترتيب الصحيح – حتى ينتج في النهاية نظام تشغيل صالح للعمل ويمكن الوصول إليه. يبدأ GRUB هذه السلسلة من الأحداث.

إذا كان لديك أكثر من نظام تشغيل مثبت على جهاز الكمبيوتر الخاص بك، فإن GRUB يوفر قائمة حتى تتمكن من تحديد نظام التشغيل الذي تريد استخدامه. أضاف أحد التغييرات في الكود إلى GRUB 2:2.06.r322 دعمًا لخيار GRUB جديد،

--is-supported 

يتم استخدام الخيار للإشارة إلى ما إذا كانت إمكانية التمهيد إلى البرامج الثابتة موجودة أم لا. إذا كانت موجودة، يضيف GRUB إدخالاً إلى قائمة التمهيد للسماح لك بالتمهيد إلى إعدادات EUFI الخاصة بك.


الخيار الجديد تمت الإشارة إليه في البرنامج النصي يُسمى “30_uefi-firmware.in.” الفرق لهذا الملف يظهر أن

if 

تمت إزالة العبارة، وتمت إضافة سطرين.

كان أحد الخطوط الجديدة بديلاً

if 

البيان. يحتوي السطر الجديد الآخر على

fwsetup --is-supported 

يشير “fw” في “fwsetup” إلى البرامج الثابتة. ولكن لأن هذا السطر يقع أعلى البرنامج الجديد،

if 

العبارة، سوف تعمل دائمًا. إذا كانت داخل جسم

if 

عبارة “سيتم تشغيلها فقط عند إجراء الاختبار في”

if 

تمت تسوية العبارة إلى صحيحة.

ذات صلة: ما هو UEFI، وكيف يختلف عن BIOS؟

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


عندما تواجه مواقف مثل هذه، هناك دائمًا خيار إعادة التثبيت بالكامل. سينجح هذا، ولكن اعتمادًا على كيفية تقسيم القرص الصلب، فبدون نسخة احتياطية حديثة، قد تفقد البيانات.

تستخدم الطريقة ذات التأثير المنخفض chroot وقرص USB مباشر أو قرص مضغوط/قرص DVD مباشر. هذه تقنية جيدة لفهمها والاحتفاظ بها في جعبتك لجميع أنواع أعطال النظام عندما لا تتمكن من تشغيل جهاز الكمبيوتر الذي يعمل بنظام Linux أو تسجيل الدخول إليه.

التقنية التي سنستخدمها

لاستخدام هذه التقنية، يجب أن يكون لديك إما USB قابل للتمهيد أو قرص مضغوط/قرص DVD به توزيع Linux، والذي يقوم بالتمهيد إلى نسخة Linux حية. وعادةً ما تسمى هذه الأقراص USB الحية أو قرص مضغوط/قرص DVD حي. تدعم جميع التوزيعات الرئيسية هذه الوظيفة.

ذات صلة: كيفية إنشاء محرك أقراص USB مباشر يعمل بنظام Ubuntu مع تخزين دائم


لن نقوم بتثبيت أي شيء، لذا لا يلزم أن تكون الوسائط الحية من نفس التوزيعة التي قمت بتثبيتها على جهاز الكمبيوتر الخاص بك. يمكنك استخدام USB Ubuntu لإصلاح جهاز كمبيوتر يعمل بنظام EndeavourOS، على سبيل المثال. إذا لم يكن لديك إمكانية الوصول إلى أي وسائط حية، فستحتاج إلى استخدام جهاز كمبيوتر آخر لتنزيل صورة وكتابتها على ذاكرة USB أو على قرص مضغوط/قرص DVD.

عند التمهيد من الوسائط المباشرة، ستتمكن من تحميل نظام الملفات الحالي والوصول إليه. سيظهر نظام الملفات المثبت لديك كجزء من نظام الملفات الخاص بنظام Linux الذي تم تمهيده من الوسائط المباشرة. هذا رائع. إذا تمكنا من الوصول إليه، فلدينا فرصة لإصلاحه. لكن هذا يثير مشكلة.

ذات صلة: كيفية استخدام الأمر chroot على Linux

جذر نظام الملفات الهجين هذا هو جذر نظام ملفات الوسائط الحية، وليس جذر نظام الملفات المثبت لديك. لجعل مسارات الملفات التي تم تكوينها في نظام Linux الخاص بك تشير إلى مواقعها المستهدفة الصحيحة – في مكان ما داخل نظام الملفات الخاص بك، وليس في مكان ما بالنسبة لجذر Linux الحية – نحتاج إلى استخدام chroot لتعيين جذر جديد يشير إلى جذر نظام الملفات المثبت لديك. بعبارة أخرى، ستستخدم المسارات التي تبدأ بـ ” جذر نظام الملفات لديك كنقطة بداية لها.


يستخدم الكمبيوتر الاختباري الذي استخدمناه لهذا الغرض

ext4 

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

وضعه موضع التنفيذ

لقد قمنا بإنشاء محرك أقراص USB قابل للتمهيد وقمنا بتشغيل جهاز الكمبيوتر المصاب منه. كان التوزيع الذي استخدمناه هو EndeavourOS. يتم تشغيل الوسائط الحية EndeavourOS في إكس إف سي إي 4 بيئة سطح المكتب.

تم تشغيل الوسائط المباشرة لنظام EndeavourOS في بيئة سطح المكتب XFCE

لتحديد الأقسام التي تحتوي على جذر نظام الملفات الخاص بك، وأيها قسم التمهيد، افتح نافذة المحطة الطرفية واستخدم fdisk الأمر. نحن نستخدم

-l 

خيار (تقسيم القائمة). ستحتاج إلى استخدام

sudo 

، أيضاً.

sudo fdisk -l


استخدام الأمر sudo fdisk -l لعرض قائمة الأقسام والأجهزة

قم بالتمرير خلال المخرجات حتى ترى الإدخالات المسماة “نظام EFI” و”نظام ملفات Linux”.

الناتج من الأمر sudo fdisk -l مع إبراز أقسام التمهيد والجذر

على هذا الكمبيوتر، كلاهما على sda القرص الصلب. يوجدان في القسمين الأول والثاني، كما هو موضح في تسميات القسمين /dev/sda1 و /dev/sda2.

قد تكون الملفات على أقراص صلبة وأقسام مختلفة على جهاز الكمبيوتر الخاص بك. احرص على ملاحظة الأقسام التي توجد عليها الملفات، حيث سنحتاج إلى استخدامها في الأوامر التالية.


نحن بحاجة إلى تثبيت أنظمة الملفات على هذه الأقسام عن طريق ربطها بنظام الملفات المباشر. mount سيفعل الأمر ذلك من أجلنا. تذكر أن تسميات الأقسام الخاصة بك من المحتمل أن تكون مختلفة، لذا تأكد من استخدام تلك الموجودة في نتائج fdisk يأمر.

sudo mount /dev/sda2 /mnt

sudo mount /dev/sda1 /mnt/boot/efi

تركيب أنظمة الملفات الجذرية لنظام التشغيل والملفات

لجعل الجذر الفعال لنظام الملفات يبدأ من جذر نظام الملفات الفعلي المثبت لديك، سنستخدم chroot لتعيين الجذر ليكون نقطة التثبيت “/mnt”. هذا هو المكان الذي يتم فيه تطعيم جذر نظام الملفات المثبت لديك على نظام الملفات المباشر.

sudo chroot /mnt


استخدام أمر chroot لإنشاء جذر فعال جديد

لاحظ أن موجه الأوامر يتغير لإظهار أنك قمت الآن بتسجيل الدخول فعليًا باعتبارك الجذر، وأنك موجود في الدليل الجذر “لنظام الملفات الخاص بجهاز الكمبيوتر الخاص بك.

يمكننا اختبار ذلك بسهولة، عن طريق الانتقال إلى دليل “/home” والتحقق من الدلائل الموجودة بداخله.

cd /home

ls

استخدام ls لعرض حسابات المستخدمين

يجب أن ترى دليلاً لكل مستخدم تم تكوينه على جهاز الكمبيوتر الخاص بك، بما في ذلك دليل لحساب المستخدم الخاص بك. يحتوي هذا الكمبيوتر على مستخدم واحد، يسمى “dave”. إذا استخدمنا cd /home قبل أن نستخدم chroot باستخدام الأمر، سندخل إلى دليل “/home” لنظام الملفات المباشر.


فقط لكي نكون واضحين، فأنت الآن تقوم بالوصول إلى نظام الملفات الحقيقي الخاص بك كما هو الحال جذر المستخدم، لذا كن حذرا.

لإصلاح المشكلة مع GRUB 2:2.06.r322، كل ما كان علينا فعله هو تشغيل grub-install يأمر.

grub-install

تشغيل أمر grub-install لإصلاح خطأ تمهيد GRUB إلى BIOS

جري grub-install لا يُنصح عادةً بالتصرف بشكل أعمى بهذه الطريقة. في هذه الحالة، كان هذا هو المطلوب.

إصلاح أو استبدال

إذا كنت تحاول إصلاح مشكلة مختلفة، فستحتاج إلى التحقق من المنتديات الخاصة بتوزيعك للحصول على الإصلاح المناسب لمشكلتك. إذا كانت الشكوى واسعة النطاق، فستجد حلاً لها قريبًا.

على الأقل، الآن بعد أن أصبح بإمكانك الوصول إلى نظام الملفات لديك، يمكنك نسخ بياناتك إلى بعض الوسائط القابلة للإزالة. إذا قررت إجراء إعادة تثبيت كاملة، فلن تفقد أي بيانات.


ذات صلة: كيفية نسخ الملفات باستخدام أمر “install” على Linux

أضف تعليق