كيفية استخدام GRUB Rescue لإصلاح Linux
نشرت: 2023-05-14ls
و set
و linux
و initrd
لإصلاح نظام Linux الخاص بك. إذا رأيت بدلاً من ذلك موجه "إنقاذ اليرقة>" ، فاستخدم أوامر set
و insmod
و linux
و initrd
لتشغيل الكمبيوتر.إذا تعذر على كمبيوتر Linux الخاص بك التمهيد في نظام التشغيل الخاص به ، فمن المحتمل أن تجد نفسك تحدق في موجه في GRUB shell. اتبع هذه الخطوات لإصلاح عمليات التمهيد المعطلة.
عندما لا يتم تمهيد Bootloader الخاص بك
باستخدام قذيفة GRUB
باستخدام قذيفة الإنقاذ GRUB
العلاجات الممكنة الأخرى
عندما لا يتم تمهيد Bootloader الخاص بك
هناك عدد قليل جدًا من مشكلات الكمبيوتر التي تجعل قلبك يغوص بعمق وبسرعة مثل الفشل في التمهيد. بدون نظام تشغيل يعمل ، فإن جهاز الكمبيوتر الخاص بك ليس جهاز كمبيوتر بالفعل.
يمكن أن تكون مشكلة غامضة للغاية ، مع عدم وجود طريقة سهلة للتعمق في السبب الجذري. بدون الوصول إلى Linux ، لا يمكنك استخدام أي من أدوات التشخيص المعتادة والعمليات التي تستخدمها للتحقيق في المشكلة. وبدون تحديد المشكلة ، كيف يمكنك حلها؟
في نظام Linux ، GRUB هو البرنامج الذي يتحكم في عملية التمهيد. إذا كان لديك عدة أنظمة تشغيل مثبتة ، فدعنا تختار النظام الذي تريد الإقلاع فيه.
يتم التحكم في GRUB من خلال تكوينها. يعتمد أيضًا على ملفات داعمة أخرى ، من أجل أداء وظائفه. إذا كان أي منها مفقودًا أو تالفًا ، فلن يعمل GRUB. يجب أن تنعكس التغييرات التي يتم إجراؤها على محركات الأقراص الثابتة وأقسام جهاز الكمبيوتر الخاص بك في تكوين GRUB. إذا لم يكن الأمر كذلك ، فلن تكون تعليمات GRUB منطقية ولن تعمل عملية التمهيد.
كملاحظة جانبية ، ما نسميه جميعًا GRUB هو في الواقع GRUB 2. هذه نسخة متقدمة من GRUB تم إصدارها مرة أخرى في عام 2012. من بين التغييرات الأخرى ، فقد غيرت طريقة إنشاء ملف “grub.cfg” ، وتتيح لك التمهيد من الوسائط القابلة للإزالة.
إذا لم يتمكن GRUB من تحميل نظام تشغيل ، فستترك تحدق في موجه في غلاف GRUB. هذه بيئة بسيطة تتيح لك أداء عدد قليل من الإجراءات. إذا تم إجراؤها بشكل صحيح ، يمكن أن تؤدي هذه الخطوات إلى إحياء جهاز الكمبيوتر الخاص بك.
هناك نوعان من قذائف GRUB مختلفة. اعتمادًا على السبب الجذري للمشكلة ، قد تجد نفسك في موجه أوامر GRUB shell:
نكش>
أو في موجه قذيفة إنقاذ GRUB:
إنقاذ نكش>
إن غلاف إنقاذ GRUB مقيد أكثر من غلاف GRUB ، لكنه لا يزال يحزم ما يكفي من الكمات لجعل جهاز الكمبيوتر الخاص بك يقوم بالتمهيد. بمجرد تشغيل جهاز الكمبيوتر الخاص بك ، فأنت في وضع أفضل بكثير لعلاج السبب الجذري.
باستخدام قذيفة GRUB
غلاف GRUB عبارة عن واجهة سطر أوامر تتيح لك استخدام مجموعة فرعية صغيرة من أوامر Linux. إذا وجدت نفسك هنا بدلاً من شاشة تسجيل الدخول المعتادة ، فهذا يعني أن عملية التمهيد الخاصة بك معطلة.
الأوامر التي يمكنك الوصول إليها ليست مماثلة لإصدارات Linux المعتادة. على سبيل المثال ، أمر GRUB shell ls
ليس أمر Bash ls
. لديها القليل جدا من القواسم المشتركة معها. يمكننا رؤية ذلك باستخدام الخيار --help
.
ls - help
يسرد خمسة خيارات فقط. هذا بعيد كل البعد عن عشرات الخيارات التي يدعمها ls
في Bash. ومع ذلك ، حتى مع لوحة الأوامر الصامتة إلى حد ما ، لا يزال بإمكاننا تصحيح الوضع.
في موجه الأوامر ، اكتب ls
واضغط على "Enter".
ls
على هذا الكمبيوتر ، يسرد ثلاثة عناصر.
- (hd0) هو أول قرص صلب.
- (hd0، gpt1) هو القسم الأول على القرص الصلب الأول.
- (hd0، gpt2) هو القسم الثاني على القرص الصلب الأول.
تشير التسمية "gpt" إلى جدول أقسام GUID. نحتاج إلى تضمين الأقواس " ()
" عندما نشير إلى قسم ، لكن يمكننا حذف التسمية.
لإلقاء نظرة على الأقسام بدورها ، سنستخدم ls
.
ls (hd0،1)
ls (hd0،2)
لقد وجدنا أن القسم الثاني به نظام ملفات Linux. سنحقق أكثر قليلاً من خلال النظر في الدليل الجذر لهذا القسم.
ls (hd0،2) /
من الواضح أن هذا هو قسم Linux ، مع دليل التمهيد عليه. هذا هو المكان الذي يتم فيه تخزين ملفات GRUB وصور تمهيد Linux وملفات التمهيد الأخرى.
على هذا الكمبيوتر ، سنحتاج إلى الإشارة إلى القسم (hd0,2)
عندما نصدر أوامرنا. على جهاز الكمبيوتر الخاص بك ، ستستخدم أي قسم تجد تثبيت Linux الخاص بك عليه.
يمكننا استخدام الأمر cat
للبحث في الملفات النصية عن طريق إلحاق مسار الدليل واسم الملف باسم القسم ، مثل هذا:
cat (hd0،2) / etc / issue
في عمليات التثبيت متعددة التمهيد ، تعد هذه طريقة مفيدة للتحقق من وجودك على القسم الصحيح. إنها أيضًا رائعة للبحث داخل ملفات التكوين.
هنا ، نستخدم الأمر ls
مع خياري -l
(long) و -h
(الأحجام التي يمكن قراءتها من قبل الإنسان) لسرد الملفات في الدليل "/ boot".
ls -lh (hd0،2) / التمهيد
لتشغيل هذا الكمبيوتر ، نحتاج إلى إخبار GRUB أن قسم Linux المكتشف حديثًا يحتوي على ملفات التمهيد.
تعيين الجذر = (hd0،2)
نحتاج إلى تحديد Linux kernel الذي سيتم التمهيد منه. نفعل هذا بأمر linux
. لاحظ أنه يتعين علينا أيضًا توفير الدليل الجذر باستخدام محرك الأقراص الثابتة لنظام Linux المعتاد ونظام تسمية الأقسام.
لينكس /boot/vmlinuz-6.2.0-20- جذر عام = / dev / sda2
في مثال الكمبيوتر الخاص بنا ، نستخدم (hd0)
وهو أول محرك أقراص ثابت. وهذا ما يسمى sda
في مصطلحات Linux المعتادة. وجدنا أن القسم الثاني هو قسم Linux ، لذلك نحتاج إلى تحديد sda2
.
قد يكون جهازك مختلفًا. على سبيل المثال ، إذا تم الإبلاغ عن قسم Linux الخاص بك كـ (hd2,1)
، فهذا يعني تقسيم واحد على محرك الأقراص الثابتة الثالث ، أو sdc1
.
نحتاج أيضًا إلى تحديد صورة نظام الملفات المستندة إلى ذاكرة الوصول العشوائي (RAM) التي يجب استخدامها عند بدء تشغيل الكمبيوتر. يجب أن يستخدم هذا نفس المكون العددي مثل Linux kernel الذي نستخدمه.
initrd /boot/initrd.img-6.2.0-20- عام
الآن ، لتشغيل نظامنا ، اكتب "boot" واضغط على "Enter".
يجب أن يؤدي هذا إلى تشغيل جهاز الكمبيوتر الخاص بك في نظام Linux. لقد أدى ذلك إلى تشغيلنا مرة أخرى ، لكن ما زلنا بحاجة إلى إصلاح GRUB لذلك لا نحتاج إلى القيام بذلك في كل مرة نقوم فيها بتشغيل جهاز الكمبيوتر الخاص بنا.
سنقوم بتشغيل update-grub
. سيؤدي هذا إلى فحص نظامنا وتحديد أنظمة التشغيل وإنشاء تهيئة GRUB جديدة. نحن بحاجة لتشغيل هذا كمستخدم الجذر.
sudo update-grub
نادرًا ما تحتاج إلى إعادة تثبيت محمل الإقلاع GRUB أيضًا باستخدام grub-install
.
sudo grub-install / dev / sda
لاحظ أنك لست بحاجة إلى تحديد القسم الذي تريد التثبيت عليه ، فقط على أي محرك أقراص. في عمليات التثبيت العادية ، يكون هو نفس محرك الأقراص الذي يعمل عليه نظام Linux.
يأتي إثبات الحلوى مع إعادة التشغيل التالية. يجب إعادة تشغيل جهاز الكمبيوتر الخاص بك بشكل طبيعي.
ذات صلة: كيفية تكوين إعدادات محمل التمهيد GRUB2
باستخدام قذيفة الإنقاذ GRUB
اعتمادًا على طبيعة مشكلة التمهيد ، قد لا تسقط في غلاف GRUB. قد يتم تركك في وضع إنقاذ GRUB. إذا كان الأمر كذلك ، فستبدو المطالبة كما يلي:
إنقاذ نكش>
الأوامر التي نحتاج إلى إصدارها في هذا الغلاف مختلفة. نحتاج إلى استخدام ls
للعثور على قسم Linux ، تمامًا كما لو كنت تستخدم GRUB shell. بعد تحديد قسم Linux ، يمكنك المضي قدمًا وإدخال هذه الأوامر.
تذكر استخدام معرفات محرك الأقراص وأرقام إصدارات kernel الصحيحة لجهاز الكمبيوتر الخاص بك. يقوم الأمر insmod
بتحميل وحدات kernel النمطية.
ضبط البادئة = (hd0،2) / boot / grub
تعيين الجذر = (hd0،2)
insmod طبيعي
insmod لينكس
لينكس /boot/vmlinuz-6.2.0-20- جذر عام = / dev / sda2
initrd /boot/initrd.img-6.2.0-20- عام
يمكنك بعد ذلك كتابة "boot" والضغط على "Enter" لإعادة تشغيل جهاز الكمبيوتر الخاص بك. بمجرد إعادة تشغيله وتسجيل الدخول ، قم بتحديث GRUB باستخدام الأمر update-grub
.
العلاجات الممكنة الأخرى
إذا تبين أن المشكلة هي فقدان ملفات التمهيد ، مثل ملفات "vmlinuz" و "initrd.img" ، يمكنك تشغيل جهاز الكمبيوتر الخاص بك من قرص DVD مباشر أو محرك أقراص USB محمول Linux قابل للتشغيل ، ونسخ الملفات المفقودة في مكانها.
لاحظ أن ملفي "vmlinuz" و "initrd.img" يجب أن يكون لهما نفس أرقام الإصدار ، لأنهما يعملان كزوج متطابق.
ذات صلة: كيفية إنشاء Linux Live USB قابل للتشغيل على جهاز Mac الخاص بك