Belge

Linux’ta Grub Bootloader Nasıl Geri Yüklenir

GNU Grand Unified Bootloader (GRUB), ana kartınızın BIOS’unu işletim sisteminizin çekirdeğine bağlayan güçlü ve esnek bir yardımcı programdır. Anakartınızın belleğine, daha büyük bir çoklu önyükleme ikilisini önyüklemek için kullandığı küçük bir program yükleyerek çalışır.

Ancak, GNU GRUB’un işletim sisteminizin çekirdeğini yükleyemediği durumlar vardır. Örneğin, Linux ve Windows ile ikili önyükleme kurulumu genellikle ikincisinin GNU önyükleyicisini silmesine neden olur. Bu yazı, en popüler Linux dağıtımlarından bazılarını kullanarak GRUB’u yeniden yükleyerek sisteminizi nasıl kurtarabileceğinizi gösterir.

Ubuntu ve Debian’da GRUB’u geri yükleme

GNU GRUB’u Ubuntu ve Debian’a yeniden kurmanın en hızlı yollarından biri, her iki dağıtımın da canlı bir kopyasını başlatmaktır. Bunu yapmak, sisteminizin kök bölümünü bağlamanıza ve sisteminizin önyükleyicisini yeniden oluşturmak için canlı dağıtımın GRUB ikili dosyalarını kullanmanıza olanak tanır.

Not: Canlı USB’yi başlattığınızda, Masaüstüne erişmek için “Try Ubuntu”ya tıklayın. “Install Ubuntu”ya tıklamayın.

A window showing the welcome screen for Ubuntu Live.
  1. Canlı dağıtım ortamınızda bir terminal açın.
A screenshot of the Ubuntu Live environment.
  1. Sisteminizin root bölümünün aygıt adını bulun. Aşağıdaki komutu çalıştırarak bunu yapabilirsiniz:
sudo fdisk -l | grep "Linux filesystem$"
A window showing the current root filesystem for the machine.
  1. Sisteminizin root bölümünü canlı dağıtımınızın “/mnt” dizinine bağlayın:
sudo mount /dev/sda1 /mnt
A window showing the root partition being mounted inside the live session.
  1. GRUB ikili dosyalarınızı yeniden yükleyin:
sudo grub-install --force --boot-directory=/mnt/ /dev/sda1
A window showing the GRUB reinstallation process for Ubuntu.
  1. PC’yi kapatın. USB sürücüsünü çıkarın ve yeniden başlatın. Linux işletim sisteminize önyükleme yapmalıdır.
  2. Makinenizin mevcut durumunu yansıtmak için sisteminizin GRUB yapılandırma dosyasını yenileyin:
sudo update-grub
A window showing the GRUB update process for Ubuntu.

Arch Linux’ta GRUB’u geri yükleme

Ubuntu ve Debian’ın yanı sıra, önyükleyicinizi geri yüklemek için canlı bir Arch Linux kopyası kullanmak da mümkündür. Bunun bir avantajı, canlı Arch Linux’un herhangi bir grafik ekrana dayanmaması, dolayısıyla GRUB’u grafik ortamsız makinelerde bile SSH üzerinden kolayca geri yükleyebilmenizdir.

A screenshot showing the live Arch Linux environment.
  1. lsblk kullanarak sisteminizin root bölümünü belirleyin:
lsblk
A screenshot showing all the available partitions in the current session.
  1. root dizininizi canlı ortamınıza bağlayın:
mount /dev/sda1 /mnt
  1. Canlı sistemin sürecini sisteminizin root dizinine bağlayın:
mount --bind /sys /mnt/sys
mount --bind /proc /mnt/proc
mount --bind /run /mnt/run
mount --bind /dev /mnt/dev
A screenshot showing the process for mounting special files.
  1. Geçerli oturumunuzun root’unu sisteminize göre değiştirin:
chroot /mnt /bin/sh -i
  1. Aşağıdakileri çalıştırarak sisteminizin önyükleyici ikili dosyalarını yeniden kurun:
/sbin/grub-install --target=i386-pc /dev/sda
A window showing the reinstallation process for GRUB in Arch Linux.
  1. Sisteminizin GRUB yapılandırma dosyasını yeniden yükleyin:
/sbin/grub-mkconfig > /boot/grub/grub.cfg
  1. Sisteminizden çıkış yapmak için Ctrl + D tuşlarına basın.
A screenshot showing grub-mkconfig program recreating the system's GRUB configuration.
  1. Sisteminizi yeniden başlatarak yeni önyükleyicinizi test edin:
reboot
A screenshot showing the reboot command in Arch Linux.

GRUB’u Fedora’da geri yükleme

Ubuntu ve Debian’a benzer şekilde, Fedora’da Grub’u geri yüklemek de aynı derecede kolaydır.

A screenshot of the default Fedora live session.
  1. Makinenizin root bölümünü bulun:
sudo fdisk -l | grep "Linux filesystem$"
A window showing the Linux filesystem partitions in the live session.
  1. Sisteminizin root bölümünü bağlayın ve bununla canlı oturumunuz arasında bir bağlama bağlantısı oluşturun:
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
  1. Kök dosya sistemini “/mnt” dizininize taşıyın:
sudo chroot /mnt/root bash
mount /dev/sd3 /
mount /dev/sda2 /boot
A window showing the chroot and additional mounts for Fedora.
  1. Sisteminizdeki tüm mevcut önyükleyici yapılandırma dosyalarını kaldırın:
rm -f /etc/grub.d/*
rm -f /etc/sysconfig/grub
A window showing the removal process for the default GRUB files.
  1. Sisteminiz için yeni bir GRUB yapılandırma dosyası oluşturun:
grub2-mkconfig -o /boot/grub2/grub.cfg
  1. GRUB’u makinenizin önyükleme bölümüne kurun:
grub2-install --target=i386-pc /dev/sda
A window showing the GRUB reinstallation process for Fedora.

Sıkça Sorulan Sorular

Sistemim LVM kullanıyorsa GRUB’u geri yüklemek mümkün mü?

Evet. Sisteminiz LVM kullanıyor olsa bile GRUB’u geri yükleyebilirsiniz. Bunu yapmak için, makinenizin root bölümü için mutlak dosya yolunu belirlemek üzere ls /dev/mapper/*–vg-root komutunu çalıştırın. Geleneksel “/dev/sda1” yerine bu mutlak yolu kullanın.

GRUB’u geri yüklemek diskimdeki diğer işletim sistemlerini siler mi?

Hayır. Bir önyükleyici, tasarımı gereği, bir işletim sisteminin çekirdeğinin yalnızca ilk birkaç baytını nerede bulacağını bilir. Önyükleyicinizi değiştirmek, diskinizdeki mevcut işletim sistemlerini etkilemeyecektir.

GRUB’u bir UEFI sistemine yeniden yüklemek mümkün müdür?

Evet. Bunu yapmak için, UEFI sisteminizin “/boot/efi” bölümünü doğru şekilde bağladığınızdan emin olmanız gerekir. Ayrıca grub-install içindeki –boot-directory bayrağının değerini “/boot/efi” olarak değiştirmeniz gerekir.

Fedora için grub2-mkconfig için -o bayrağını da değiştirmeniz gerekir. “/boot/efi/EFI/fedora/grub.cfg.”

Yazının orijinalini buradan okuyabilirsiniz.