رفع مشکل GRUB Rescue اوبونتو
موضوعاتی که در این مقاله به آنها پرداخته خواهد شد، به شرح زیر است:
نحوه استفاده از GRUB Rescue در اوبونتو 18.04، 20.04 و 22.04
GRUB یک نرمافزار بوتلودر حیاتی است که به عنوان بوتلودر پیشفرض برای بسیاری از توزیعهای لینوکس، از جمله اوبونتو، استفاده میشود. در این راهنما، به طور مشخص به رابط خط فرمان قدرتمند آن یعنی GRUB Rescue اوبونتو میپردازیم که برای حل مشکلات بوت طراحی شده است. اگرچه GRUB عمدتاً در لینوکس کاربرد دارد، اما میتواند سیستمعاملهای ویندوز را نیز بوت کند.بوتلودر GRUB دارای یک رابط خط فرمان قدرتمند است که میتواند برای حل مشکلات بوت استفاده شود؛ این رابط GRUB Rescue نامیده میشود و این راهنما به استفاده از GRUB Rescue اوبونتو میپردازد.در این مقاله، نحوه استفاده از رابط خط فرمان GRUB Rescue در GRUB را به شما نشان خواهیم داد. ما از اوبونتو 18.04 LTS برای این آموزش استفاده میکنیم. بیایید شروع کنیم.ورود به رابط خط فرمان GRUB Rescue
به طور پیشفرض، اگر همه چیز به درستی کار کند، هنگامی که کامپیوتر خود را روشن میکنید، باید مستقیماً وارد سیستمعاملی شوید که نصب کردهاید. در مورد ما، این سیستمعامل اوبونتو 18.04 LTS است.
اما اگر مشکل بوت لودر گراب رخ دهد، به احتمال زیاد با رابط خط فرمان GRUB Rescue مواجه خواهید شد. این رابط چیزی شبیه به تصویر زیر است:


گاهی اوقات، ممکن است بتوانید منوی GRUB را مانند تصویر زیر مشاهده کنید. برای رفتن به محیط خط فرمان نجات گراب از این منو، کلید c را فشار دهید.




در بخش بعدی، نحوه استفاده عملی از GRUB Rescue اوبونتو را نشان خواهیم داد. ابتدا، نحوه بوت کردن سیستمعامل اوبونتو 18.04 LTS نصب شده با استفاده از دستورات آن را توضیح میدهیم، که گام مهمی در تعمیر بوت اوبونتو است. سپس برخی از دستورات رایج GRUB Rescue را بررسی خواهیم کرد.
استفاده از GRUB Rescue برای بوت کردن اوبونتو 18.04 LTS
در رابط خط فرمان GRUB Rescue اوبونتو، اولین قدم معمولاً شناسایی دیسکها و پارتیشنهای موجود است. میتوانید با استفاده از دستور ls این کار را انجام دهید:grub> ls


همانطور که مشاهده میکنید، (hd0), (hd0,gpt1) و (hd0,gpt2) در دسترس هستند. (hd0) نشاندهنده هارد دیسک خام است. (hd0,gpt1) و (hd0,gpt2) به ترتیب اولین و دومین پارتیشن GPT از (hd0) هستند.
ما اوبونتو 18.04 LTS را روی سختافزار UEFI نصب کردهایم. بنابراین، اولین پارتیشن ((hd0,gpt1)) پارتیشن EFI و دومین پارتیشن ((hd0,gpt2)) پارتیشن روت (root) است. فایلهای مورد نیاز برای بوت کردن سیستمعامل در دایرکتوری /boot پارتیشن (hd0,gpt2) قرار دارند. اگر دایرکتوری /boot شما در یک پارتیشن جداگانه قرار دارد، باید دستورهای را متناسب با آن تغییر دهید.
میتوانید با استفاده از دستور ls در خط فرمان نجات گراب، لیست فایلهای موجود در یک پارتیشن خاص را مشاهده کنید.
لیست فایلها و دایرکتوریهای پارتیشن روت ((hd0,gpt2)) را با دستور زیر نمایش دهید:
grub> ls (hd0,gpt2)/


همانطور که میبینید، فایلها و دایرکتوریها لیست شدهاند. ما به فایلهای موجود در دایرکتوری /boot علاقهمندیم.
grub> ls (hd0,gpt2)/boot
مکانیابی کرنل (vmlinuz) و ایمیج Initrd
شما باید دو فایل با نامهای vmlinuz و initrd را در دایرکتوری /boot پیدا کنید، همانطور که در تصویر زیر مشخص شده است. این فایلها برای بوت صحیح سیستم ضروری هستند.


grub> set root=(hd0,gpt2)


grub> linux /boot/vmlinuz-4.15.0-20-generic root=/dev/sda2


نکته:
در اینجا root=/dev/sda2 مورد نیاز است. در غیر این صورت ممکن است نتوانید بوت کنید. /dev/sda2 به این معنی است که این دومین پارتیشن از اولین هارد دیسک است. جدول زیر به درک بهتر نحوه تطابق شناسهها کمک میکند:
شناسه GRUB | هارد دیسک | پارتیشن | شناسه لینوکس |
---|---|---|---|
(hd0) | اول | – | /dev/sda |
(hd0,gpt1) | اول | اول | /dev/sda1 |
(hd0,gpt2) | اول | دوم | /dev/sda2 |
(hd1) | دوم | – | /dev/sdb |
(hd1,gpt2) | دوم | دوم | /dev/sdb2 |
(hd1,gpt5) | دوم | پنجم | /dev/sdb5 |
همچنین توجه داشته باشید که تکمیل خودکار نام فایل و دایرکتوری با فشردن کلید در رابط خط فرمان GRUB نیز کار میکند، درست مانند ترمینال لینوکس. این ویژگی میتواند به وارد کردن صحیح مسیرها و نام فایلها کمک کند.
اکنون باید دستور initrd را اجرا کنید تا ایمیج initrd به بوتلودر GRUB معرفی شود.
این کار را با دستور زیر انجام دهید (نام دقیق فایل ممکن است متفاوت باشد):
grub> initrd /boot/initrd.img-4.15.0-20-generic


grub> boot




بهروزرسانی و نصب مجدد GRUB (پس از ورود به سیستم)
حالا که با موفقیت وارد سیستم شدهاید، برای تکمیل فرآیند تعمیر بوت اوبونتو و رفع دائمی مشکل، دستورهای زیر را در ترمینال اجرا کنید.نصب
$ sudo update-grub2
(توجه: در برخی سیستمها ممکن است دستور sudo update-grub صحیح باشد)


پیکربندی GRUB 2 باید بهروز شود.


همچنین ممکن است لازم باشد بوتلودر GRUB را با استفاده از دستور زیر مجدداً نصب کنید:
$ sudo grub-install /dev/sda




بارگذاری ماژولهای اضافی
گاهی اوقات، ممکن است پرامپت خط فرمان GRUB به جای grub> به صورت grub rescue> باشد. این یک حالت خاص در GRUB Rescue اوبونتو است.
در این حالت، ممکن است نیاز باشد دو دستور اضافی زیر را برای بارگذاری ماژولهای ضروری اجرا کنید:
برای اطلاعات بیشتر در مورد دستورای GRUB میتوانید به مستندات رسمی GRUB مراجعه کنید.
grub rescue> insmod normal
grub rescue> insmod linux
نتیجهگیری
همانطور که در این راهنما مشاهده کردید، GRUB Rescue اوبونتو ابزاری حیاتی برای مواقعی است که سیستم با مشکل بوت لودر گراب مواجه میشود. با دنبال کردن مراحل ذکر شده، کاربران میتوانند به صورت دستی سیستم خود را بوت کرده و سپس با بهروزرسانی و نصب مجدد GRUB، فرآیند تعمیر بوت اوبونتو را به طور دائمی انجام دهند. تسلط بر خط فرمان نجات گراب میتواند در شرایط بحرانی بسیار کارگشا باشد.
از اینکه وقت خود را به مطالعه این مقاله اختصاص دادید سپاسگزاریم. امیدواریم این اطلاعات برای شما مفید بوده باشد. در صورتی که در اجرای مراحل با مشکلی مواجه شدید یا سوالی برایتان پیش آمد، میتوانید در بخش نظرات مطرح فرمایید. همچنین میتوانید برای راهنماهای بیشتر به وبسایت رسمی پشتیبانی اوبونتو مراجعه کنید.
در نظر داشته باشید که اگر با مشکلات پیچیدهتر سرور یا نیاز به پشتیبانی تخصصی سیستمعامل مواجه هستید، تیم فنی پشتوار سرور آماده ارائه خدمات و مشاوره به شما میباشد. برای دریافت اطلاعات بیشتر با ما در تماس باشید.