یکی از دلایل بوت نشدن Linux میتواند خرابی GRUB باشد.
وقتی GRUB آسیب ببیند، ممکن است سیستم روی grub rescue متوقف شود، فقط صفحه سیاه نشان دهد یا اصلاً وارد سیستمعامل نشود.
در این مقاله، نشانههای رایج، علتهای معمول و روش پایه برای تعمیر GRUB با استفاده از Live USB را توضیح میدهیم.
1. نشانههای خراب شدن GRUB
- هنگام روشن کردن، فقط
grub rescueنمایش داده میشود - خطاهایی مانند “no such partition” ظاهر میشود
- Linux بوت نمیشود و صفحه سیاه باقی میماند
- بعد از بهروزرسانی، سیستم ناگهان دیگر بوت نمیشود
اگر این نشانهها را میبینید، احتمال دارد خود GRUB یا یکی از پارتیشنهای مرتبط با بوت آسیب دیده باشد.
2. علتهای رایج
- قطع شدن بهروزرسانی سیستم در میانه کار
- تغییر در ساختار پارتیشنهای دیسک
- بوت دوگانه با Windows اطلاعات بوت را بازنویسی کرده است
- خرابی پارتیشن EFI یا پارتیشن /boot
- مشکلات دیسک که باعث از بین رفتن فایلهای بوت شدهاند
این نوع مشکل بهویژه پس از تغییر پارتیشنها، نصب مجدد سیستم یا بهروزرسانی کرنل بیشتر دیده میشود.
3. ابتدا با Live USB بوت کنید
اگر Linux دیگر به شکل عادی بوت نمیشود، امنترین راه این است که سیستم را با Linux Live USB اجرا کنید. سپس ترمینال را باز کرده و پارتیشنها را بررسی کنید.
lsblk -f
مشخص کنید کدام پارتیشن، پارتیشن ریشه Linux است و کدام پارتیشن EFI است.
4. سیستم را mount کنید و GRUB را تعمیر کنید
در ادامه یک نمونه رایج از مراحل بازیابی آمده است. نام دستگاهها را متناسب با سیستم خود تغییر دهید.
sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/boot/efi # فقط برای سیستمهای UEFI
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
پس از ورود به chroot، GRUB را دوباره نصب کنید.
grub-install /dev/sda
در سیستمهای UEFI میتوانید از دستور زیر نیز استفاده کنید:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
سپس پیکربندی بوت را دوباره ایجاد کنید.
update-grub
در پایان خارج شوید و سیستم را راهاندازی مجدد کنید.
exit
sudo reboot
5. اگر update-grub در دسترس نبود
در توزیعهایی مانند Fedora معمولاً از grub2-mkconfig استفاده میشود.
برای مثال:
grub2-mkconfig -o /boot/grub2/grub.cfg
در سیستمهای UEFI ممکن است مسیر فایل خروجی بسته به توزیع متفاوت باشد.
جمعبندی
خرابی GRUB یکی از علتهای رایج بوت نشدن Linux است. در بسیاری از موارد نیازی به نصب مجدد کامل سیستم نیست. معمولاً این ترتیب کمک میکند:
- بوت کردن با Live USB
- بررسی پارتیشن Linux و EFI
- mount کردن سیستم و ورود به chroot
- نصب مجدد GRUB
- ایجاد دوباره پیکربندی بوت
اگر دیسک بهشدت آسیب ندیده باشد، معمولاً میتوان سیستم را با همین مراحل بازیابی کرد.