A GRUB újratelepítése, beállítása - Live Rendszer alól (LiveCD/DVD/USB Stick)

kimarite képe

Néhány esetben előfordulhat, hogy a rendszer betöltő- és választó alkalmazást, melynek manapság és általában véve a GRUB 2 a neve, hogy, hogy nem, újra kell telepítened. Jellemző történet ez a dual-boot rendszereknél, például, ha a Windows rendszert újratelepítetted, és ennek következménye, hogy nem a telepített Linux GRUB alkalmazása van használatban, azt a Windows újratelepítése eltünteti, pontosabban használaton kívül helyezi.

A telepített rendszerek közötti választási lehetőséget és az indításukat  - általában - a GRUB (GRand Unified Bootloader) vagy az EFI Boot Manager (EFI Boot Loader) végzi.

A leírás a GRUB újratelepítésében segít.

Első lépésként elenőrizd az EFI Boot Manager, illetve a Secure Boot beállításokat!

EFI Boot Manager / GRUB

EFI Boot Manager (EFI Boot Loader) állapotának ellenőrzése (bootctl):

bootctl status

A használaton kívüli állapot (MBR partícióstáblánál futtatva a parancssort):

Couldn't find EFI system partition. It is recommended to mount it to /boot or /efi.
Alternatively, use --path= to specify path to mount point.
System:
    Not booted with EFI

Ha a kimenetben Setup Mode beállításnál az user (és nem a platform) beállítást látod, akkor a Linux rendszer nem a GRUB, hanem az EFI Boot Manager alkalmazást használja: ennek beállítása más lapra tartozik! A bootctl status parancssor kimenete megmutatja egyébként azt is, ha az EFI Boot Manager van használatban.

Secure Boot

Be- illetve kikapcsolt állapot ellenőrzése (mokutil):

mokutil --sb-state

Bekapcsolt állapot jelzése:

SecureBoot enabled

A Secure Boot kikapcsolt állapotában (SecureBoot disabled), a kimenetben feltűnhet - második sorként - a Platform is in Setup Mode kifejezés is, mely a BIOS-ban kikapcsolt Secure Boot beállítást jelez (platform).

Az ellenőrzéshez szükséges a mokutil alkalmazás telepítése:

apt-get install mokutil

Linux rendszerek egymás mellett

Ha egynél több Linux terjesztés van telepítve a számítógépen, akkor választhatsz - egészen pontosan választanod kell - hogy melyik rendszer GRUB alkalmazását használod általánosan, vagyis az összes rendszer betöltéséhez.

A választásod szerinti Linux rendszer (gyökér) partíciót és a kiválasztott rendszer partícióhoz társuló boot, illetve efi partíció elnevezéseket használd a parancssorokban (a boot és/vagy az efi partíciót akkor, ha erre szükség van)!

Windows rendszer

A telepített Windows rendszer felismerését a GRUB újratelepítésénél a leírásban is szereplő alkalmazás biztosítja:

os-prober

Chroot

-- indíts Live rendszert (LiveCD/DVD/USB Stick), mégpedig kipróbálás módban

-- nyiss egy terminált (például menüből)

-- deritsd ki, hogy melyik a telepített Linux rendszer partíciója,

sudo fdisk -l

vagy a

df -Th

vagy az

lsblk -o PATH,PTTYPE,PARTTYPE,FSTYPE,SIZE

illetve, olvasd el a leírást segítségnek:
Chroot - Live Rendszer (LiveCD/DVD/USB Stick
A döntésben segíthet a partíció mérete, illetve a formázás tipusa is (például: ext4).

Rendszer partíció

-- ha az fdisk -l parancssor kimenetéből - vagy más módszerrel - megtudtad, hogy melyik a rendszer (gyökér) partíció, akkor azt fűzd be a valós elnevezése szerint (sdxY = sda1, sdb5, stb.) az mnt könyvtár alá
   (a valós elnevezésről itt olvashatsz: Chroot - Live Rendszer (LiveCD/DVD/USB Stick)

sudo mount /dev/sdxY /mnt

-- ha boot partícióval is rendelkezel (nem jellemző), akkor azt is fűzd be:
   (a logika ugyanaz: sdzY = sda2, sdb3, stb.)

sudo mount /dev/sdzY /mnt/boot

Az UEFI/GPT partícióstábláról, fájlrendszerről...

Partícióstábla (MBR, GPT)

Fontos tudnod, hogy a partícióstábla MBR vagy GPT!

Megállapítható a parancssor kimenetéből:

sudo fdisk -l | grep "Disklabel type"
  • ha itt a dos kifejezés szerepel, akkor a partícióstábla MBR,
  • ha itt a gpt kifejezés szerepel, akkor a partícióstábla GPT.

Ha a partícióstábla GPT

Töltsd be az efivars kernel modult (az EFI fájlrendszer betöltése),

sudo modprobe efivars

és fűzd be az EFI partíciót (az fdisk -l kimenet EFI System tipusként jelzi):

sudo mount /dev/sdwY /mnt/boot/efi

Visszatérve a chroot módszerre...

A továbbiak már egyértelműek - és nem „kitalálósdi” - azaz egymás után futtasd a parancsokat
    (ha a rendszered nagyon egyedi, további segítség itt: Chroot - Live Rendszer (LiveCD/DVD/USB Stick)

sudo mount -t devtmpfs /dev /mnt/dev
sudo mount -t devpts /dev/pts /mnt/dev/pts
sudo mount -t sysfs /sys /mnt/sys
sudo mount -t proc /proc /mnt/proc
sudo mount -t tmpfs /run /mnt/run
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
sudo cp /proc/mounts /mnt/etc/mtab
sudo mount -o bind /etc/resolv.conf /mnt/etc/resolv.conf
sudo chroot /mnt /bin/bash

... és ezzel a kívánt chroot környezetben vagy.

A GRUB újratelepítése

Telepített Windows

Első lépésként futtasd:

os-prober

Az os-prober futtatásakor kimenet nem keletkezik, hanem a készenléti jelzés, más néven, a prompt tér vissza.
Futtatni azonban szükséges, mert a háttérben mégis elvégzi a feladatát az alkalmazás, felismeri a Windows rendszert.

-- ha nincs telepítve, telepítsd:

sudo apt-get install os-prober

Ha nincs telepítve Windows rendszer, vagy telepítve van, és már futtattad az os-prober alkalmazást, akkor:
a további lépésekhez tudnod kell a partícióstábla tipusát, vagy például a Secure Boot ki- vagy bekapcsolt állapotát...

MBR partícióstábla

-- helyettesítsd be a megfelelő eszközt - sda, sdb, sdc, (stb.),
   mármint, amelyik lemezen a telepített rendszer található (sdxY = sda1, sdb5, stb.)

     -- véleményem szerint használhatod a partíció számát is,
         mármint a rendszer partícióét, mely a példában is így szerepel

grub-install /dev/sdxY

     -- vagy a lemez elejére telepíted a GRUB-ot és nem használsz partíció számot

grub-install /dev/sdX

-- ellenőrizd a telepítést
   (az első módszer szerint mutatom)

grub-install --recheck /dev/sdxY

GPT partícióstábla

Ugye, ellenőrizted az EFI Boot Manager állapotát, és a Secure Boot beállítást: azt látod, a GRUB van használatban...

A GRUB beállításához, újratelepítéséhez futtasd a parancssorokat a Secure Boot beállításnak megfelelően.

Válaszd a lehetőségek közül azt, amelyikre szükséged van!

-- helyettesítsd be a parancssorokba a megfelelő eszközt - sda, sdb, sdc, (stb.),
   mármint, amelyik lemezen a telepített rendszer található (sdxY = sda1, sdb5, stb.)

    1) ha a rendszer/BIOS nem használja a Secure Boot beállítást (disabled)

Az alkalmazás újratelepítése frissíti a beállításokat is:

apt-get install --reinstall grub-efi-amd64

Telepítsd a GRUB-ot a megfelelő helyre:

grub-install /dev/sdX --target=x86_64-efi --recheck --efi-directory=/mnt/boot/efi --boot-directory=/mnt/boot

Frissítsd a GRUB beállítást:

update-grub

    2) ha a rendszer/BIOS használja a Secure Boot beállítást (enabled)

Az alkalmazások újratelepítése frissíti a beállításokat is:

apt-get install --reinstall grub-efi-amd64-signed shim-signed

Telepítsd a GRUB-ot a megfelelő helyre:

grub-install /dev/sdX --target=x86_64-efi --recheck --efi-directory=/mnt/boot/efi --boot-directory=/mnt/boot --uefi-secure-boot 

Frissítsd a GRUB beállítást:

update-grub

Befejezés

-- ha minden rendben ment - nem kaptál hibaüzenetet - akkor lépj ki a chroot környezetből parancs segítségével

exit

vagy gyorsbillentyűvel

Ctrl + D

-- válaszd le a korábban befűzött eszközöket

sudo umount tmpfs /run /mnt/run
sudo umount proc /proc /mnt/proc
sudo umount sysfs /sys /mnt/sys
sudo umount devpts /dev/pts /mnt/dev/pts
sudo umount devtmpfs /dev /mnt/dev

-- ha korábban befúzted a boot partíciót, annak leválasztása

sudo umount /mnt/boot

-- ha korábban befűzted az efi partíciót, annak leválasztása

sudo umount /mnt/boot/efi

-- majd

sudo umount /mnt/

-- és egy újraindítást eredményező parancssor futtatása után,

sudo reboot

vagy

sudo systemctl reboot

-- vedd ki a CD-t, USB-kulcsot,

-- aztán lépj be az imént frissített GRUB segítségével, indítsd azt a telepített rendszert, amelyik használatához éppen kedved van.

A leírás telepített és használt GRUB alkalmazást feltételez: a chroot környezetben a véletlenül törölt GRUB beállítása vagy újratelepítése sem nehéz, de azt esetleg érdemes tudnod, melyik GRUB csomag volt telepítve korábban.

Enjoy :-)

Az EFI fájlrendszerhez felhasznált irodalom:

Hozzászólások

átköltözés új lemezre

Értékelés: 

0
Még nincs értékelve

Szia, lenne egy kérdésem, alkalmazható-e a fenti eljárás arra is, ha a WIN és Linux partíciót átköltöztetem egy új SSD-re? van egy HDD-m, amin WIN 8.1 és Mint 18.3 van kb 500-500 GB, de csak 100-100 GB van használva, amiket Macrium reflect-tel akarok egy új 500 GB-os SSD-re másolni (250-250 GB felosztással)

kimarite képe

átköltözés új lemezre

Értékelés: 

0
Még nincs értékelve

#1 Biztosan. Legalábbis, miután a Windows-t indíthatóvá tetted, akkor ez a módszer jó, hogy a Linux GRUB-ját tedd meg vezérlőnek. Az os-prober alkalmazás a boot-olható (indítható) OS-eket ismeri fel. Az általad említett alkalmazást nem ismerem amúgy, nem tudom, hogyan csinálja a másolást.

átköltözés új lemezre

Értékelés: 

0
Még nincs értékelve

köszi a választ,

tehát az a kérdés, hogy  az új címre kerülő Linux particiót megtalálja-e a GRUB,

azt nem tudom, hogy a Macrium reflect tud-e úgy másolni, hogy csak a használt részt teszi át, azt viszont bootolhatóan,

te ismert ilyen partíció másoló programot?

 

kimarite képe

átköltözés új lemezre

Értékelés: 

0
Még nincs értékelve

#2  https://askubuntu.com/a/741727
(ha a dd-vel másolsz: https://askubuntu.com/a/741818 --> bs=1M, status=progress)
Az fstab fájl kell majd frissíteni még a GRUB újratelepítése után, és az átmásolt rendszer kész, ha:
-- kilépsz a chroot-ból,
-- újraindítod a rendszert: reboot.

Az UUID-k így nézhetőek meg (a chroot használatával):

sudo blkid

Pontosabban a sudo-ra nem lesz szükség.

Aztán így szerkeszted az fstab fájlt:

nano /etc/fstab

A kurzor nyilakkal lépkedsz a szövegben.
Kilépés és mentés:
Ctrl + O és Enter
Ctrl + X

Hasonló másoló alkalmazás a CloneZilla vagy parancsorban a dd. Rá lehet ilyenekre keresni. De például:
https://alternativeto.net/software/clonezilla/
Ilyen célra alkalmazást nem használtam még. ;)
Nem lehet túl bonyolult a használata, de biztosan van erre leírás.

A CloneZilla telepíthető a jelenlegi rendszeredre,

sudo apt-get install clonezilla

mert elérhető a tükrökről (Linux Mint 19 Tara).

apt-cache policy clonezilla
clonezilla:
Telepítve: (nincs)
Jelölt: 3.27.16-2
Verziótáblázat:
3.27.16-2 500
500 http://ftp.energotel.sk/pub/linux/ubuntu/archive bionic/universe amd64 Packages
500 http://ftp.energotel.sk/pub/linux/ubuntu/archive bionic/universe i386 Packages

 

m.2 ssd lévő linux grub /boot/efi helyreállítása

Értékelés: 

0
Még nincs értékelve

Sziasztok!

Gparteddel másoltam, rakosgattam és töröltem a windows partíciókat beleértve a /boot/efijét is. a windows os sata ssd újratettem, viszont ahogy a windows-t kikapcsoltam és a linuxot elakartam indítani nem találta a betöltőt ezért live usb  boot repair próbáltam helyre hozni ami ideiglenesen működik is, de a grub menüt /boot/efi helyre szeretném hozni. A linux másolás rakosgatása előtt clonezillával csináltam a sata ssd-n létrehozott helyekre klónozást - ezt későbbiekbe image készítővel szeretném át pakolni máshova. Lényeg, hogy az m.2 ssd csak linux és másik ssd az winserver gyakorlásra van és ehhez a kiválasztó menü amit eddig a win kezelt.

 

utólag csináltam fat32 /boot/efi 500mb boot,esp partíciót, de jelenleg a /boot , /boot-sav itt fel van sorolva a régi nvme0n1 a p3 amin volt a win /boot/efi az már nincs :(

 

eddig jutottam > https://pastebin.com/qEtPH8CF

 

a fenti leírással ezt a problémát orvosolni lehet?

 

/cow és duv nem talál több körösen ez az eredmény...de mégis valahogy elindul..

m.2 ssd lévő linux grub /boot/efi helyreállítása

Értékelés: 

0
Még nincs értékelve

#4 Elég nagy katyvaszt látok. Linux elindul?  update-grub lefut? Megtalálja a másik lemezen a wint?

Probálj egyszerre csak egy lemezzel foglalkozni. Legyen egyszer csak a Win lemez, arra ráengedni a boot-repair disk-et.

Aztán a másikkal. Végig csak egy lemez legyen a gépben.