Nainstaloval jsem Windows 7, který snědl spouštěcí soubor Ubuntu. Při spouštění počítače jde nyní přímo do systému Windows, aniž bych měl možnost spustit Ubuntu.
Jak mohu získat Ubuntu zpět?
Přijatá odpověď:
Když nainstalujete Windows, Windows předpokládá, že je to jediný operační systém (OS) na počítači, nebo alespoň nepočítá s Linuxem. Nahrazuje tedy GRUB vlastním zavaděčem. Co musíte udělat, je nahradit zavaděč Windows za GRUB. Viděl jsem různé návody na nahrazení GRUB pomocí příkazů GRUB nebo podobně, ale pro mě je nejjednodušší jednoduše chroot
do vaší instalace a spusťte update-grub
. chroot
je skvělé, protože vám umožňuje pracovat na vaší skutečné instalaci, místo abyste se pokoušeli věci přesměrovat sem a tam. Je opravdu čistý.
Zde je postup:
- Zaveďte systém z živého disku CD nebo živého USB v režimu „Vyzkoušet Ubuntu“.
-
Určete číslo oddílu hlavního oddílu.
sudo fdisk -l
,sudo blkid
nebo GParted (který by měl být ve výchozím nastavení již nainstalován v živé relaci) vám zde může pomoci. V této odpovědi budu předpokládat, že je to/dev/sda2
, ale ujistěte se, že používáte správné číslo oddílu pro váš systém!Pokud je váš hlavní oddíl v LVM , bude zařízení místo toho umístěno v
/dev/mapper/
, s největší pravděpodobností,/dev/mapper/{volume}--{os}-root
kde{volume}
je název svazku LVM a{os}
je operační systém. Spusťtels /dev/mapper
pro přesný název. -
Připojte svůj oddíl:
sudo mount /dev/sda2 /mnt #Replace sda2 with the partition from step 2
Pokud máte samostatný
/boot
,/var
nebo/usr
oddíly , opakujte kroky 2 a 3 pro připojení těchto oddílů do/mnt/boot
,/mnt/var
a/mnt/usr
resp. Například,sudo mount /dev/sdXW /mnt/boot sudo mount /dev/sdXY /mnt/var sudo mount /dev/sdXZ /mnt/usr
nahrazující
sdXW
,sdXY
asdXZ
s příslušnými čísly oddílů. -
Připevněte několik dalších nezbytných věcí:
for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
-
Pokud je Ubuntu nainstalováno v režimu EFI (pokud si nejste jisti, podívejte se na tuto odpověď), použijte
sudo fdisk -l | grep -i efi
nebo GParted k nalezení vašeho oddílu EFI. Bude mít štítekEFI
. Připojte tento oddíl a nahraďtesdXY
se skutečným číslem oddílu pro váš systém:sudo mount /dev/sdXY /mnt/boot/efi
-
chroot
do vaší instalace Ubuntu:sudo chroot /mnt
-
V tomto okamžiku jste ve své instalaci, nikoli v živé relaci, a běžíte jako root. Aktualizovat grub:
update-grub
Pokud se zobrazí chyby nebo pokud přechod ke kroku 7 váš problém nevyřeší, přejděte ke kroku 8. (V opačném případě je volitelný.)
-
V závislosti na vaší situaci možná budete muset přeinstalovat grub:
grub-install /dev/sda update-grub # In order to find and add windows to grub menu.
-
Pokud je Ubuntu nainstalováno v režimu EFI a UUID oddílu EFI se změnilo, možná jej budete muset aktualizovat v
/etc/fstab
. Porovnejte to:blkid | grep -i efi grep -i efi /etc/fstab
Pokud je aktuální UUID oddílu EFI (z
blkid
) se liší od toho v/etc/fstab
, aktualizujte/etc/fstab
s aktuálním UUID. -
Pokud vše fungovalo bez chyb, pak je vše připraveno:
exit sudo reboot
-
V tomto okamžiku byste měli být schopni normálně zavést.
Pokud nemůžete normálně spustit a neudělali jste krok 8, protože se neobjevily žádné chybové zprávy, zkuste to znovu s krokem 8.
- Někdy dává GRUB2 správnou konfiguraci pro vaše oddíly nestačí a musíte jej skutečně nainstalovat (nebo přeinstalovat) do hlavního spouštěcího záznamu, což dělá krok 8. Zkušenosti s pomocí uživatelům v chatu ukázaly, že krok 8 je někdy nezbytný, i když se nezobrazují žádné chybové zprávy.