كيفية استخدام GRUB Rescue لإصلاح Linux

النقاط الرئيسية

إذا أظهرت أصداف GRUB الخاصة بك موجه “grub>”، فيمكنك استخدام
ls
,
set
,
linux
، و
initrd
أوامر لإصلاح نظام Linux الخاص بك. إذا رأيت بدلاً من ذلك موجه “grub rescue>”، فاستخدم
set
,
insmod
,
linux
، و
initrd
أوامر لتشغيل جهاز الكمبيوتر الخاص بك.



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


عندما لا يتم تشغيل أداة تحميل التشغيل الخاصة بك

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

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

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


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

ذات صلة: كيفية حرق ملف ISO على محرك أقراص USB في Linux

كملاحظة جانبية، ما نطلق عليه جميعًا GRUB هو في الواقع GRUB 2. وهو إصدار متقدم من GRUB تم إصداره في عام 2012. ومن بين التغييرات الأخرى، فقد غيّر طريقة إنشاء ملف “grub.cfg”، ويسمح لك بالتمهيد من وسائط قابلة للإزالة.

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


هناك غلافان مختلفان لـ GRUB. اعتمادًا على السبب الجذري للمشكلة، قد تجد نفسك أمام موجه غلاف GRUB:

grub>

أو في موجه غلاف الإنقاذ GRUB:

grub rescue>

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

استخدام GRUB Shell

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

موجه غلاف GRUB


الأوامر التي يمكنك الوصول إليها ليست هي نفسها الموجودة في إصدارات Linux المعتادة. على سبيل المثال، غلاف GRUB ls الأمر ليس Bash ls الأمر. لا يوجد الكثير من القواسم المشتركة بينهما. يمكننا أن نرى ذلك باستخدام --help خيار.

ls --help

استخدام خيار --help مع إصدار shell GRUB من ls

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

عند المطالبة، اكتب ls واضغط على “أدخل”.

ls

الناتج من إصدار غلاف GRUB الخاص بـ ls، والذي يظهر محركات الأقراص والأقسام

على هذا الكمبيوتر، يتم إدراج ثلاثة عناصر.


  • (hd0) هو القرص الصلب الأول.
  • (hd0،gpt1) هو القسم الأول على القرص الصلب الأول.
  • (hd0،gpt2) هو القسم الثاني على القرص الصلب الأول.

تشير علامة “gpt” إلى جدول تقسيم GUID“نحن بحاجة إلى تضمين الأقواس”()“عندما نشير إلى قسم، ولكن يمكننا حذف التسمية.

لإلقاء نظرة على الأقسام بدورها، سنستخدم ls.

ls (hd0,1)

ls (hd0,2)

استخدام إصدار GRUB shell من ls لتحديد قسم Linux

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

ls (hd0,2)/

استخدام إصدار GRUB shell من ls لفحص قسم معين


من الواضح أن هذا هو قسم Linux، مع دليل التمهيد عليه. هذا هو المكان الذي يتم فيه تخزين ملفات GRUB وصور تمهيد Linux وملفات التمهيد الأخرى.

على هذا الكمبيوتر، سنحتاج إلى الرجوع إلى القسم (hd0,2) عندما نصدر أوامرنا، يمكنك استخدام أي قسم تجد فيه تثبيت Linux على جهاز الكمبيوتر الخاص بك.

يمكننا استخدام cat أمر للبحث في ملفات نصية عن طريق إضافة مسار الدليل واسم الملف إلى اسم القسم، مثل هذا:

cat (hd0,2)/etc/issue

إلقاء نظرة على إصدار Linux باستخدام أمر cat في غلاف GRUB

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


هنا، نحن نستخدم ls الأمر مع -l (طويل) و -h (الأحجام القابلة للقراءة بواسطة الإنسان) خيارات لإدراج الملفات الموجودة في دليل “/boot”.

ls -lh (hd0,2)/boot

إدراج الملفات الموجودة في دليل /boot باستخدام إصدار GURB من ls

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

set root=(hd0,2)

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

linux /boot/vmlinuz-6.2.0-20-generic root=/dev/sda2

في مثال الكمبيوتر الخاص بنا، نستخدم (hd0) وهو أول قرص صلب، ويسمى sda في تسمية لينكس المعتادة. وجدنا أن القسم الثاني هو قسم لينكس، لذا نحتاج إلى تحديد sda2.


قد يكون جهازك مختلفًا. على سبيل المثال، إذا تم الإبلاغ عن قسم Linux الخاص بك على أنه (hd2,1) وهذا يعني القسم الأول على القرص الصلب الثالث، أو sdc1.

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

initrd /boot/initrd.img-6.2.0-20-generic

ضبط معلمات التمهيد في غلاف GRUB

الآن، لتشغيل نظامنا، اكتب “boot” واضغط على “Enter”.

يجب أن يؤدي هذا إلى تشغيل جهاز الكمبيوتر الخاص بك على Linux. لقد نجحنا في تشغيله مرة أخرى، ولكننا ما زلنا بحاجة إلى إصلاح GRUB حتى لا نحتاج إلى القيام بذلك في كل مرة نبدأ فيها تشغيل جهاز الكمبيوتر الخاص بنا.

سوف نركض update-grubسيؤدي هذا إلى فحص نظامنا وتحديد أنظمة التشغيل وإنشاء تكوين GRUB جديد. نحتاج إلى تشغيل هذا كمستخدم الجذر.


sudo update-grub

تشغيل update-grub لإعادة بناء ملف grub.cfg

في حالات نادرة، قد تحتاج إلى إعادة تثبيت أداة تحميل التشغيل GRUB أيضًا، باستخدام grub-install.

sudo grub-install /dev/sda

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

يأتي إثبات نجاح العملية مع إعادة التشغيل التالية. يجب أن يتم إعادة تشغيل الكمبيوتر بشكل طبيعي.

ذات صلة: كيفية تكوين إعدادات محمل التمهيد GRUB2

استخدام GRUB Rescue Shell

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

grub rescue>


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

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

set prefix=(hd0,2)/boot/grub

set root=(hd0,2)

insmod normal

insmod linux

linux /boot/vmlinuz-6.2.0-20-generic root=/dev/sda2

initrd /boot/initrd.img-6.2.0-20-generic

ضبط معلمات التمهيد في غلاف الإنقاذ GRUB

يمكنك بعد ذلك كتابة “boot” والضغط على “Enter” لإعادة تشغيل الكمبيوتر. بمجرد إعادة التشغيل وتسجيل الدخول، قم بتحديث GRUB باستخدام update-grub يأمر.


العلاجات الممكنة الأخرى

إذا تبين أن المشكلة تكمن في فقدان ملفات التمهيد، مثل ملفات “vmlinuz” و”initrd.img”، فيمكنك تشغيل الكمبيوتر من قرص DVD مباشر أو محرك أقراص USB محمول قابل للتمهيد لنظام التشغيل Linux، ثم نسخ الملفات المفقودة إلى مكانها.

لاحظ أن ملفات “vmlinuz” و”initrd.img” يجب أن تحتوي على أرقام الإصدار نفسها، لأنها تعمل كزوج متطابق.

ذات صلة: كيفية إنشاء USB مباشر قابل للتمهيد لنظام Linux على جهاز Mac الخاص بك

أضف تعليق