چگونه بوت لودر گراب را در لینوکس بازیابی کنیم

گراب یا GNU Grand Unified Bootloader و به انگلیسی GRUB ابزار قدرتمند و انعطافپذیری است که بایوس مادربرد شما را به هسته سیستمعامل پیوند میدهد. این کار با بارگذاری یک برنامه کوچک در حافظه مادربرد صورت میگیرد، که از آن برای bootstrap یک multiboot binary بزرگتر استفاده میکند.
با این حال، مواردی وجود دارد که GNU GRUB نمیتواند هسته سیستمعامل را بارگیری کند. به عنوان مثال، راهاندازی دوگانه لینوکس و ویندوز اغلب منجر به حذف بوت لودر گراب میشود. این آموزش نشان میدهد که چگونه میتوانید سیستم خود را با نصب مجدد GRUB با استفاده از برخی از محبوبترین توزیعهای لینوکس بازیابی کنید.
بازیابی گراب در اوبونتو و دبیان
یکی از سریعترین روشها برای نصب مجدد GNU GRUB در اوبونتو و دبیان، بوت کردن یک نسخه Live از آن توزیع است. انجام این کار به شما امکان میدهد تا پارتیشن root سیستم خود را نصب کنید و از گراب توزیع Live برای ایجاد مجدد بوت لودر سیستم خود استفاده کنید.
توجه: هنگامی که USB را بوت کردید، برای دسترسی به دسکتاپ، روی Try Ubuntu کلیک کنید. روی Install Ubuntu کلیک نکنید.
- یک ترمینال در محیط توزیع Live خود باز کنید.
- نام دستگاه پارتیشن root سیستم خود را پیدا کنید. با اجرای فرمان زیر میتوانید این کار را انجام دهید:
1 |
sudo fdisk -l | grep "Linux filesystem$" |
- پارتیشن root سیستم خود را در دایرکتوری /mnt توزیع Live نصب کنید:
1 |
sudo mount /dev/sda1 /mnt |
- گراب را دوباره نصب کنید:
1 |
sudo grub-install --force --boot-directory=/mnt/ /dev/sda1 |
- کامپیوتر را خاموش کنید. درایو USB را بردارید و دوباره آن را بوت کنید.
- فایل پیکربندی GRUB سیستم خود را به روز کنید تا وضعیت فعلی دستگاه شما را منعکس کند:
نکته: در حالی که نصب مجدد GRUB اکثر مشکلات مولتی بوت را برطرف میکند، ممکن است مبتدیان خط فرمان را دلهرهآور بدانند. برای این منظور، میتوانید GRUB را از طریق برنامه گرافیکی Boot Repair Utility نیز تعمیر کنید.
بازیابی گراب در آرچ لینوکس
به غیر از اوبونتو و دبیان، استفاده از آرچ لینوکس برای بازیابی بوت لودر نیز امکانپذیر است. یکی از مزایای این کار این است که لینوکس Live آرچ به هیچ صفحه نمایش گرافیکی متکی نیست، بنابراین میتوانید به راحتی گراب را حتی در ماشین های بدون هد (headless) از طریق SSH بازیابی کنید.
- پارتیشن root سیستم خود را با استفاده از lsblk تعیین کنید:
1 |
lsblk |
- دایرکتوری root را در محیط Live نصب کنید:
1 |
mount /dev/sda1 /mnt |
- فرآیند سیستم Live را در دایرکتوری root سیستم متصل کنید:
1 2 3 4 |
mount --bind /sys /mnt/sys mount --bind /proc /mnt/proc mount --bind /run /mnt/run mount --bind /dev /mnt/dev |
- root نشست جاری را به سیستم خود تغییر دهید:
1 |
chroot /mnt /bin/sh -i |
- با اجرای موارد زیر، بوت لودر سیستم خود را دوباره نصب کنید:
1 |
/sbin/grub-install --target=i386-pc /dev/sda |
- فایل پیکربندی GRUB سیستم خود را دوباره بارگیری کنید:
1 |
/sbin/grub-mkconfig > /boot/grub/grub.cfg |
- Ctrl + D را فشار دهید تا از root سیستم خارج شوید.
- بوت لودر جدید خود را با راه اندازی مجدد سیستم تست کنید:
1 |
reboot |
بازیابی گراب در فدورا
مشابه اوبونتو و دبیان، بازیابی گراب در فدورا به همان اندازه آسان است.
- پارتیشن root دستگاه خود را پیدا کنید:
1 |
sudo fdisk -l | grep "Linux filesystem$" |
- پارتیشن root سیستم را mount کنید و بین آن و نشست Live یک bind mount ایجاد کنید:
1 2 3 4 5 |
sudo mount /dev/sda3 /mnt sudo mount --bind /sys /mnt/root/sys sudo mount --bind /proc /mnt/root/proc sudo mount --bind /run /mnt/root/run sudo mount --bind /dev /mnt/root/dev |
- فایلسیستم root را به دایرکتوری /mnt منتقل کنید:
1 2 3 |
sudo chroot /mnt/root bash mount /dev/sd3 / mount /dev/sda2 /boot |
- تمام فایلهای پیکربندی بوت لودر موجود در سیستم خود را حذف کنید:
1 2 |
rm -f /etc/grub.d/* rm -f /etc/sysconfig/grub |
- یک فایل پیکربندی جدید GRUB برای سیستم ایجاد کنید:
1 |
grub2-mkconfig -o /boot/grub2/grub.cfg |
- گراب را در پارتیشن بوت دستگاه نصب کنید:
1 |
grub2-install --target=i386-pc /dev/sda |
توجه: Systemd-boot بوت لودر نسل بعدی لینوکس است. سعی خواهیم کرد در آموزشهای آینده به آن بپردازیم.
maketecheasier.com