Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Jak nainstalovat Linux vedle Windows 10?

grub2?Ahoj všem, prosím vás o rady. Na disku s GPT jsou Windows 10. Dále mám vytvořený ext2 (nebo ext4) oddíl a chci nainstalovat Linux Ubuntu. Vím, že to nechci řešit multibootem přostřednictvím menu Windows 10 (nechci závislost na zavaděči Windows pro případ, že by se Windows odstraňovaly v budoucnu kvůli jejich nepoužívání, což je pravděpodobné).
Bohužel nedošlo po instalaci Linuxu Ubuntu k vytvoření multiboot menu pod taktovkou Linuxu (grub2?). Máte nějaký osvědčený návod na úspěšnou instalaci Ubuntu a nastavení multibootu pod Linuxem, aby to bylo společně s Ubuntu vše na jednom diskovém oddílu ext2?
Chápu dobře, že Linuxový ext oddíl musí být aktivní aby bootoval po spuštění PC i když je disk inizializovaný jako GPT?
Pak ještě potřebuju vědět, jestli je nutné vytvořit při instalaci Linuxu další oddíl určený pro swapování (nepoužil jsem a nemyslím si, že by to bylo důvodem nefunkčnosti při bootování). Dříve jsem swap oddíl nepoužíval, ale nyní to může být vynucené Linuxem, tak se radši ptám. Jakým bezplatným programem zazálohovat oddíl s Linuxem na ext2 nebo ext4? Bude vhodnější pro instalaci Linuxu použití ext2 nebo ext4 při zohlednění zálohování pouze dat, nikoli všech sektorů do zálohy? Závěrem ještě dodávám, že je možné, že v budoucnu nebude Linux používán a pak se pouze nastaví aktivní zaváděcí oddíl Windows 10 a bude používaný bootloader pod Windows 10. Celý důvod téhle eskapády je uživatel laik, který nezvládá Windows 10, věčně něco rozhrabává a prakticky bylo ověřeno na live flashdisku Ubuntu, že mu Linux zcela dostačuje (webový prohlížeč, pošta, více nepotřebuje) a vyhovuje, tak tomu chceme dát šanci. Děkuji.

Předmět Autor Datum
A co tak na jeden SSD dát Windows 10 a na druhý SSD Linux? A řešit to přepínáním v Biose. Nějaký SSD…
kacikac 28.09.2021 13:32
kacikac
Není možné to takto řešit, protože se jedná o PC ve kterém je veškerý HW v monitoru na muří noze.
Time 28.09.2021 14:22
Time
Veľká škoda, že po americky, po kapitalisticky v ich dekadentnej, protisocialistickej, protisovietsk…
Nuda 28.09.2021 13:34
Nuda
Proč věcně neodpovíte na položené dotazy? Váš výlev mi vůbec nepomohl. Vzít Rozum do hrsti...
Time 28.09.2021 14:25
Time
Při GPT/UEFI instalaci musí být všechny zavaděče umístěny ve společném EFI oddílu (tedy jak W10 zava…
dsa 28.09.2021 14:44
dsa
Pak jsou tedy jsou 3 možnosti: boot vybírat z UEFI boot řešit v rámci W10 boot řešit v rámci Grub
dsa 28.09.2021 15:52
dsa
Rozumím. Děkuji za vysvětlení. Logicky mi přijde nejlepší varianta - "boot vybírat z UEFI". Protože…
Time 28.09.2021 18:18
Time
logicky nejméně komplikovaná mi přijde varianta s mbr diskem. s jeho bootloaderem by se mohl libovol…
lední brtník 28.09.2021 19:27
lední brtník
Je to možné, ale UEFI a GPT taky mají něco do sebe a jsou menší problémy s desítkami partitions a vý…
gilhad 28.09.2021 20:07
gilhad
V zásadě ano :-) Proč by ale měla být "vyšší pravděpodobnost havarijního stavu windowsího zavadeče"…
dsa 28.09.2021 19:43
dsa
Nevím, ale o problémech zavádění Windows slýchám a čtu (a stávalo se mi, dokud jsem je ještě používá…
gilhad 28.09.2021 20:20
gilhad
Windows používám opravdu dlouho a že těch problémů už pár bylo ... ale snad nikdy se zavaděčem. Obča…
dsa 29.09.2021 14:20
dsa
Zatímco klasická instalace Windows bez ptaní nabořila zaváděč Linuxu prakticky vždycky (alespoň dřív…
gilhad 29.09.2021 21:07
gilhad
Já mám taky UEFI a GPT a na disku mám řadu nezávyslých systémů a vybírám si přez UEFI, který se má s…
gilhad 28.09.2021 19:57
gilhad
instalace Ubuntu a případné pozdější odstranění Ubuntu i zavaděče Grub .. sgMu3DYuVYY
karelX 29.09.2021 20:02
karelX
Věděl by někdo jak dále? Po nainstalování nelze spustit Linux. Instalátor na konci instalace zobrazi…
Time 03.10.2021 15:13
Time
Ten EFI oddíl musí být FAT32 kvůli nezávislosti na OS, je to součást standardu UEFI (proč by byl nes…
dsa 03.10.2021 16:04
dsa
Průběh instalace do EXT4 oddílu byl v pořádku až na nemožnost zvládnutí nastavení příznaku ESP. Poku…
Time 03.10.2021 16:18
Time
Naopak, díky UEFI je to snazší a průhlednější ... odpadají šachy s Grubem v MBR a v tabulce oddílu.…
dsa 03.10.2021 17:24
dsa
Fajn, vyčkám, on se tu určitě ozve. Vysvětlené to vypadá jaké snadné, něco někam nakopíruju, ale nec…
Time 03.10.2021 18:15
Time
Obávám se, že ne, ale nevylučuju to. "Hrál" jsem si s tím už před několika lety, od té doby se Linux…
dsa 03.10.2021 18:41
dsa
https://www.uschovna.cz/zasilka/QNXG58M2WPF6HLRB-68P
dsa 03.10.2021 18:43
dsa
To /EFI/atd. je složka v tom EFI oddílu.
dsa 03.10.2021 18:44
dsa
Jak jsem psal, po zapojení počítače se spustí UEFI z (EEP)ROM, zinicializuje nějaká základní zařízen…
gilhad 04.10.2021 15:21
gilhad
livecd ~ # parted /dev/nvme0n1 print Model: Unknown (unknown) Disk /dev/nvme0n1: 1000GB Sector size…
gilhad 04.10.2021 15:22
gilhad
Zrovna nemam cas odpovedet strucne, tak aspon dlouze ... v tom poslednim vypisu dole je skript, co v… poslední
gilhad 04.10.2021 15:32
gilhad
Dříve byl BIOS, ten předpokládal MBR disk, ze kterého vzal první sektor, načetl ho do paměti a spust…
gilhad 04.10.2021 14:41
gilhad

Rozumím. Děkuji za vysvětlení. Logicky mi přijde nejlepší varianta - "boot vybírat z UEFI". Protože když v budoucnu nastane jakýkoli požadavek, bude splnitelný. Uživatel může požadovat odstranění Windows 10 a ponechání Ubuntu. Zrovna tak může požadovat ponechání Windows 10 a odstranění Ubuntu.
Kdybych nastavil multiboot menu pod Windows 10, tak tam je vyšší pravděpodobnost havarijního stavu windowsího zavadeče a následkem toho by vznikla neschopnost zavedení Windows a Ubuntu.
Nepříliš pravděpodobné mi přijde, že dojde k poškození zavaděče grub2 a tím znefunkčnění multiboot menu ze kterého lze zavést oba systémy. Uvažuji správně?

Je to možné, ale UEFI a GPT taky mají něco do sebe a jsou menší problémy s desítkami partitions a výhledově "prý nemají jedenáctky vůbec umožnit MBR" (se psalo na řadě míst, ale co MS nakonec udělá a jak? to si nikdo netroufne říct s určitostí.)

Navíc pod UEFI+GPT ani ty zavaděče pro linux nepotřebuješ a startuješ ho rovnou z UEFI (a když si to tak nastavíš, tak to tak taky bude bez dalčích dotazů - vypnu stroj, zapnu stroj, nabootuje do Linuxu, nastartuje určené služby (cokoli si navymýšlím, od ovladače myši, přez třeba síť až po například řadu serverů, nebo taky ani jedno z toho) a kdy a jestli vůbec zapnu monitor, nebo šáhnu na klávesnici je zcela nepodstatné, vše co má běžet prostě běží)

Nevím, ale o problémech zavádění Windows slýchám a čtu (a stávalo se mi, dokud jsem je ještě používával) už asi od 3.1 a v souvislostmi s různýma servispackama obzvlášť. Možná jsou uživatelé prostě lamy, co neví co dělají (což má konec konců být ve výsledku i tady) nebo se furt občas MS tady a támhle něco nepovede a ani Gates se pak nevyhne modré smrti před plným sálem, nebo nejspíš obojí, ale za ta léta s linuxem jsem se do problémů dostal jen málokdy a to ještě většinou buď chybou HW, nebo vlastním experimentováním (a pak to zase většinou šlo snadno vrátit zpátky).

Prostě taky mám podobnou zkušenost, ale důvody jsem se moc nezabýval, zvlášť od doby, kdy jsem to už nemusel řešit a používat Windows kvůli práci (doma jsem spíš tak nějak přešel z převážně DOSu do takřka výhradně Linuxu (s DOSBOXEM na staré gamesy :-D )).

Zatímco klasická instalace Windows bez ptaní nabořila zaváděč Linuxu prakticky vždycky (alespoň dřív, teď už to snad díky UEFI nemá tak snadné) :-)

(A ano, možná to nebyl zavaděč, ale rané fáze startování, kdy se po projetí BIOSu prostě počítač seknul a nejel a protože ani nic nenapsal, tak člověk nevěděl, co se přesně stalo = chyba při zavádění windows, ačkoli možná v jiném programu, těžko říct. Jakmile se objevily okenice, tak už bylo jasné, že to zavaděč není. I když to nezřídka těma okenicema taky skončilo a na plochu už nedošlo)

Já mám taky UEFI a GPT a na disku mám řadu nezávyslých systémů a vybírám si přez UEFI, který se má spustit, i když obvykle mám nastavený dlouhodobě jeden a pak zase dlouhodobě jiný. Zavaděč tam nemám, prostě kernely v UEFI oddílu, každý v jiném adresáři.
Některé systémy i sdílejí některé datové partišny (nabo si tak přimountujou nějaký jiný systém), některé mají swap na samostatných oddílech, jiné přímo na tom svojem a pár jich swap nemá vůbec.

Většina systémů jsou linuxy (optimalizované na různá použití), ale dal jsem tam i desítky, kvůli jakémusi obskurnímu programu na nastavení podsvícení klávesnice a párkrát je i spustil, než jsem došel k optimálnímů výsledku (tahle klávesnice umožňuje asi 5 profilů a pamatuje si je, ale musí se nastavit zvenku, nakonec používám jen 2 - jeden má nastavené barvy pro psaní všemi 10 - klávesy pro jeden prst mají jinou barvu než klávesy pro prsty sousední a základní pozici FJ, stejně jako některé extra klávesy jako shifty, enter a tak jsem si dal ještě jinak, druhý profil je celý temný, až na Fn,F a J - pro skutečné psaní poslepu ). Ty desítky jsem teda spustil jen párkrát na chvíli, s odstupem pár týdnů a s vytaženým ethernetem (co já vím jaké další malwary jsou v tom ovladači od číňana navíc k těm z desítek - a že mě tobez nějakého MS účtu a kdovíčeho nechtělo nechat změnit plochu mi je fuk, když se tam daly nainstalovat ty podezřelé ovladače - jen vím, že jsem nějak narazil na něco, co jsem nakonec vyřešil použitím dvou bootovacích flešek, kde na jedné bylo oficiální ISO desítek a na druhé to samé, ale rozbalené na soubory, protože desítky v jednu chvíli chtěly to ISO a pak zase chtěly ty soubory z něj a než bych to řešil, tak jsem to prostě pod linuxem překopíroval rozbalené, po skončení instalačního harakiri už to žádné flešky nechtělo ), proložené normálním používáním linuxu (některé instalované před a jiné po) a nijak se to netlouklo.

Takže by to mělo jít i u tebe, ať nakonec převládne to či ono, nebo se to bude střídat. Ale samozřejmě netvrdím, že to je jediná cesta.

---

Jo a pod GPT v podstatě ten flag "aktivní" myslím není vůbec potřeba, na všechny tyhle legrace se tam používá ta malá UEFI partišna s VFATkou (nebo něčím takovým)

Věděl by někdo jak dále? Po nainstalování nelze spustit Linux. Instalátor na konci instalace zobrazil upozornění:
Po spuštění Lubuntu je třeba EFI systémový oddíl. Pro nastavení EFI systémového oddílu se vraťte zpět a vyberte nebo vytvořte oddíl typu FAT32 s příznakem ESP a přípojným bodem /BOOT/EFI.
Je možné pokračovat bez nastavení EFI systémového oddílu, ale systém nemusí jít spustit.

Když se vrátím zpět, ta mi to nedává možnost nastavit ESP příznak. Když odsouhlasím pokračování a dokončení instalace, nelze pak spustit Linux.
Dost zarážející je vynucená závislost na oddílu s obstarožním a nespolehlivým FAT32. Lze to nějak obejít bez jeho existence? Dříve bylo možné mít Linux nainstalovaný v jednom oddílu ext4 nebo ext2. Lze to vůbec ještě u nových verzí? Prosím pány znalce o vysvětlení.

Ten EFI oddíl musí být FAT32 kvůli nezávislosti na OS, je to součást standardu UEFI (proč by byl nespolehlivý, jsou na něj jen minimální provozní požadavky). A do něj se musí ten Grub naistalovat, popis pohledej (nejsem schopen to krok po kroku popsat). Instalace je nejspíš OK, jen to chce dořešit to spouštění.

Možnás měl přečíst odkaz:

Nuda [95.102.49.xxx], 28.09.2021 13:34

Průběh instalace do EXT4 oddílu byl v pořádku až na nemožnost zvládnutí nastavení příznaku ESP. Pokud si dobře pamatuju, tak dříve bylo možné zvolit pro instalaci Grub2 shodný oddíl jako pro samotnou instalaci Linuxu.

Toto jsem četl, ale o ESP příznaku nic nepíší. https://itsfoss.com/install-ubuntu-1404-dual-boot-mode-windows-8-81-uefi/
Hledal jsem v zahraničních fórech a lidi si stěžují na to samé. Údajně bylo vývojářům hlášeno ohledně ESP a stejně to neopravili. Instalace Linuxu se stala ještě složitější, i díky UEFI.

Naopak, díky UEFI je to snazší a průhlednější ... odpadají šachy s Grubem v MBR a v tabulce oddílu. Zkus kontaktovat Gilhad-a, vypadá, že tomu rozumí. Až to zvládneš, oceníš tu jednoduchost a průhlednost. Ten EFI oddíl už tam máš, žádný příznak nepotřebuje. Jde jen o to, založit v něm složku a nakopírovat do ní Grub pro UEFI (s odkazem na Kernel). Jednotlivé zavaděče mohou být zcela nezávislé, volí se po spuštění stiskem F11 (či jiné).

Fajn, vyčkám, on se tu určitě ozve.
Vysvětlené to vypadá jaké snadné, něco někam nakopíruju, ale nechápu to logicky.
Existuje nějaká možnost automatického opravení zavadeče Linuxu? Klidně to může být aplikace třetí strany, pravděpodobně bootovatelná z flashdisku?

Obávám se, že ne, ale nevylučuju to. "Hrál" jsem si s tím už před několika lety, od té doby se Linuxu nevěnuji, takže už nejsem schopen detailně poradit a nechci experimentovat na "pracovním" PC :-(

https://www.google.com/search?q=uefi+boot+linux+ubuntu&oq=uefi+boot+linux&aqs=edge.5.69i57j0i512j0i22i30l7.13125j0j1&sourceid=chrome&ie=UTF-8 možná něco najdeš.

Inspirace:
copy grubx64.efi from where it was installed to /EFI/boot/bootx64.efi
anytime you make grub changes, use efibootmgr -v before and after to ensure your reboot is ok

bcdedit /set „{bootmgr}“ path \EFI\ubuntu\grubx64.efi

Nahodím na Uschovnu popis a dám sem odkaz.

Jak jsem psal, po zapojení počítače se spustí UEFI z (EEP)ROM, zinicializuje nějaká základní zařízení, dá se přepnout do setupu, kde se nastaví RGB diskotéka, přetaktovaní RAM a tek podobně, no a taky se
vybere disk, ze kterého se bude bootovat a na něm se najde EFI partišna FAT32, kde se vybere, který se souborů se použije jako !boot sektor! pro zavedené systému (nebo se prostě vezmou zapamatované hodnoty z CMOSky, když nezmáčkneš včas tlačítko)
Ten vybraný soubor se spustí a něco uděla (zavede nějaký systém, otestuje paměť, zobrazí menu pro výběr systému ... fantasii se meze nekladou)

Já používám Gentoo, kde si člověk může udělat co chce, takže jsem si na to napsal tahák. Základem je, že z USB nabootuju instalačku, z ní mi naběhne linux, připojím se k síti a tak podobně a pak se podívám, jaké jsou v počítači disky, zformátuju je na GPT, rozdělím na nějaké partišny, na těch udělám nějaké filesystémy a nacpu na ně nějaká data. (Prostě začínám s nově sestaveným počítačem, kde není nic, dám tam co chci, pak to restartuju a vyndam USB a ono to naběhne a dál už jedu jen na tom počítači s jeho vlastním systémem ) (Jo a teď prostě kopíruju relevantní části postupu, takže to bude jen tak, jak jsem to zrovna dělal, uprav si jak chceš, dle svžch potřeb použij, přeskoč či dělej libovolně jinak)



1   UEFI

    UEFI BIOS
            DOCP - Profile #1 (RAM=3600 MHz)

            CSM
                    Compatibility Support Module - enabled, UEFI only, no network

            BOOT
                    Fast - disabled
                    a pár podobných

2   Boot

Boot z Gentoo USB

passwd
/etc/init.d/sshd start
/etc/init.d/ntp-client start

3   Vzdálená instalace - příprava disku a stažení základního systému
3.1   Partišny

Login z venku a podle https://wiki.gentoo.org/wiki/Handbook:AMD64

GPT
    určitě, budu používat UEFI pro spoustu systémů
/dev/nvme0n1
    tady bude nový systém, (ADATA /dev/sda je instalační USB flash) 

Parted je nějaký komplikovaný, fakt nechci počítat sektory ručně. Použiju raději fdisk (což jsem asi měl udělat hned)

livecd ~ # fdisk  /dev/nvme0n1

Welcome to fdisk (util-linux 2.33.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): g
Created a new GPT disklabel (GUID: 37A33C18-76C9-8C46-9708-385EE791F953).

Command (m for help): n
Partition number (1-128, default 1):
First sector (2048-1953525134, default 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-1953525134, default 1953525134): +100M

Created a new partition 1 of type 'Linux filesystem' and of size 100 MiB.

Command (m for help): t
Selected partition 1
Partition type (type L to list all types): 1
Changed type of partition 'Linux filesystem' to 'EFI System'.

Command (m for help): n
Partition number (2-128, default 2):
First sector (206848-1953525134, default 206848):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (206848-1953525134, default 1953525134): +50G

Created a new partition 2 of type 'Linux filesystem' and of size 50 GiB.

Command (m for help): t
Partition number (1,2, default 2):
Partition type (type L to list all types): 19

Changed type of partition 'Linux filesystem' to 'Linux swap'.

Command (m for help): n
Partition number (3-128, default 3):
First sector (105064448-1953525134, default 105064448):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (105064448-1953525134, default 1953525134): +50G

Created a new partition 3 of type 'Linux filesystem' and of size 50 GiB.

Command (m for help): n
Partition number (4-128, default 4):
First sector (209922048-1953525134, default 209922048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (209922048-1953525134, default 1953525134): +50G

Created a new partition 4 of type 'Linux filesystem' and of size 50 GiB.

Command (m for help): p
Disk /dev/nvme0n1: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Viper M.2 VP4100
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 37A33C18-76C9-8C46-9708-385EE791F953

Device             Start       End   Sectors  Size Type
/dev/nvme0n1p1      2048    206847    204800  100M EFI System
/dev/nvme0n1p2    206848 105064447 104857600   50G Linux swap
/dev/nvme0n1p3 105064448 209922047 104857600   50G Linux filesystem
/dev/nvme0n1p4 209922048 314779647 104857600   50G Linux filesystem

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Takže mám potřebné partišny, teď je ješte pojmenuju v partedu z CLI (NVM-SYSTEM slouží pro obecnou správu disku, NVM-SYSBCK je jeho záložní kopie - takže bootem z jednoho mám druhý plně k dispozici pro zkopírování na nově vytvářenou instalaci, bez všech pseudosystémů a otevřených souborů)

livecd ~ # parted  /dev/nvme0n1 name 1 EFIboot
livecd ~ # parted  /dev/nvme0n1 name 2 SWAP
livecd ~ # parted  /dev/nvme0n1 name 3 NVM-SYSTEM
livecd ~ # parted  /dev/nvme0n1 name 4 NVM-SYSBCK
livecd ~ # parted  /dev/nvme0n1 print
Model: Unknown (unknown)
Disk /dev/nvme0n1: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name        Flags
 1      1049kB  106MB   105MB                EFIboot     boot, esp
 2      106MB   53.8GB  53.7GB               SWAP
 3      53.8GB  107GB   53.7GB               NVM-SYSTEM
 4      107GB   161GB   53.7GB               NVM-SYSBCK

3.2   Formátování

Otázka na tělo, které fs potřebujeme? U nekritických bych volil ext4, ale je tam problém, když vypadne napájení a data jsou ještě v cache (a ext4 je tam drží "dlouho" - navíc rozbíjí ideu jurnálu a ordered z ext3, kdy soubor byl buď ve staré nebo nové verzi, ale ne "něco mezi tím" = mv fname.new fname už není atomické, když v dohledné době vypadne napájení.) Na druhou stranu je ext4 rychlejší, míň fragmentuje a míň "vyklepává na disk", protože víc cachuje. Na serveru (a hlavně na boxech) bych volil ext3 a ordered, na domácím počítači asi risknu ext4.

livecd ~ # mkfs.fat -F 32 /dev/nvme0n1p1
mkfs.fat 4.1 (2017-01-24)

livecd ~ # mkswap /dev/nvme0n1p2
Setting up swapspace version 1, size = 50 GiB (53687087104 bytes)
no label, UUID=c3e1c088-ee23-450f-b897-2886a370cad2

livecd ~ # mkfs.ext4 -L NVM-SYSTEM /dev/nvme0n1p3
mke2fs 1.45.5 (07-Jan-2020)
Discarding device blocks: done
Creating filesystem with 13107200 4k blocks and 3276800 inodes
Filesystem UUID: c82837c8-4642-43ea-b148-072f49ec39fe
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424

Allocating group tables: done
Writing inode tables: done
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done

livecd ~ # mkfs.ext4 -L NVM-SYSBCK /dev/nvme0n1p4
mke2fs 1.45.5 (07-Jan-2020)
Discarding device blocks: done
Creating filesystem with 13107200 4k blocks and 3276800 inodes
Filesystem UUID: edb20f6d-0fdb-4733-b52b-561a961bfefe
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424

Allocating group tables: done
Writing inode tables: done
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done

livecd ~ # swapon /dev/nvme0n1p2

livecd ~ # free -h
              total        used        free      shared  buff/cache   available
Mem:           31Gi       128Mi        30Gi        62Mi       290Mi        30Gi
Swap:          49Gi          0B        49Gi



livecd ~ # parted  /dev/nvme0n1 print
Model: Unknown (unknown)
Disk /dev/nvme0n1: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name        Flags
 1      1049kB  106MB   105MB   fat32           EFIboot     boot, esp
 2      106MB   53.8GB  53.7GB  linux-swap(v1)  SWAP
 3      53.8GB  107GB   53.7GB  ext3            NVM-SYSTEM
 4      107GB   161GB   53.7GB  ext3            NVM-SYSBCK

3.3   Mounting the root partition

livecd ~ # mount /dev/nvme0n1p3 /mnt/gentoo/

3.4   Downloading the stage tarball
...... následuje klasická instalace gentoo na  3      53.8GB  107GB   53.7GB  ext3            NVM-SYSTEM ....


6   Kernel

6.2   UEFI

https://wiki.gentoo.org/wiki/Efibootmgr potřebuje NLS ISO 8859-1 a vypnutý EFI mixed-mode support

emerge -avq sys-boot/efibootmgr
mount | grep efivars # must be RW otherwise try somthing like
# mount -o remount,rw -t efivarfs efivarfs /sys/firmware/efi/efivars
efibootmgr -v # just list entries for fun :)

6.3   kernel

emerge --ask --verbose --update --deep --newuse  -q --load-average --jobs -N sys-kernel/gentoo-sources sys-apps/pciutils
lspci
ls -al /usr/src/
cd /usr/src/linux
make menuconfig

    Nastavení kernelu

        Sensor driver: X570 boards (no WMI interface - use nct6775 driver instead)

        (root=/dev/nvme0n1p3) Built-in kernel command string - podle skutecne partisny, kde ten linux bude

Processor type and features  --->

  [*] EFI runtime service support
  [*]   EFI stub support
  [ ]     EFI mixed-mode support
  [*] Built-in kernel command line
  (root=/dev/nvme0n1p3  net.ifnames=0 vga=ask) Built-in kernel command string


Firmware Drivers  --->
  EFI (Extensible Firmware Interface) Support  --->
    <*> EFI Variable Support via sysfs





6.5   Mounting the boot partition (pro kernel)

(chroot) livecd / # mount /dev/nvme0n1p1 /boot/ # To je EFI

(chroot) livecd / # df -h  /boot
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p1   99M   512   99M   1% /boot

6.6   Compiling kernel

make -j 26
make modules_install

# tady na te EFI udelam adresar, kam zkopiruju kernel, ktery ma nastaveno, kde je system

mkdir -p /boot/EFI/'Gentoo-NVM-SYSTEM'  # or any other name under /boot/EFI
cp /usr/src/linux/arch/x86/boot/bzImage /boot/EFI/'Gentoo-NVM-SYSTEM'/bzImage.efi
efibootmgr -c -L "Gentoo-NVM-SYSTEM" -l '\EFI\Gentoo-NVM-SYSTEM\bzImage.efi'  -d /dev/nvme0n1p1




7   PROBLEMY !!! bomb

    System nebootuje, proste NVMe nejde vybrat.

        bzImage.efi jde spustit z GRUB2 na flasce linux (hd2,1)/EFI/Gentoo-NVM-SYSTEM/bzImage.efi - nebo jiny hdx - a bezi to, ale v EFI to vybrat nejde

            Řešení - je potřeba říct, z jaké EFI partišny to má bootovat (default je z té připojené) - " -d /dev/nvme0n1p1"

                efibootmgr -b 0 -c -L "NVM-Gentoo-NVM-SYSTEM" -l '\EFI\Gentoo-NVM-SYSTEM\bzImage.efi' -d /dev/nvme0n1p1


9.2   Nastavení EFI, když ho něco zboří

################################################################################
# cat ebm
################################################################################
#!/bin/bash -x

efibootmgr -B -b 0
efibootmgr -B -b 1
efibootmgr -B -b 2

mount /dev/nvme0n1p1 /boot/
efibootmgr -b 0 -c -L "NVM-Gentoo-NVM-SYSTEM" -l '\EFI\Gentoo-NVM-SYSTEM\bzImage.efi' -d /dev/nvme0n1p1
efibootmgr -b 1 -c -L "NVM-Gentoo-SDA2" -l '\EFI\Gentoo-SDA2\bzImage.efi' -d /dev/nvme0n1p1
efibootmgr -b 2 -c -L "NVM-Gentoo-NVM-SYSBCK" -l '\EFI\Gentoo-NVM-SYSBCK\bzImage.efi' -d /dev/nvme0n1p1
umount /boot

mount /dev/sda1 /boot/
if ( df /boot | grep -q /dev/sda1  ) ; then
        echo SDA
        efibootmgr -B -b 3
        efibootmgr -B -b 4
        efibootmgr -B -b 5

        efibootmgr -c -L "SDA-Gentoo-NVM-SYSTEM" -l '\EFI\Gentoo-NVM-SYSTEM\bzImage.efi' -d/dev/sda1
        efibootmgr -c -L "SDA-Gentoo-SDA2" -l '\EFI\Gentoo-SDA2\bzImage.efi' -d/dev/sda1
        efibootmgr -c -L "SDA-Gentoo-NVM-SYSBCK" -l '\EFI\Gentoo-NVM-SYSBCK\bzImage.efi' -d/dev/sda1
fi
umount /boot

efibootmgr -o 0,1,2

efibootmgr -D




Dříve byl BIOS, ten předpokládal MBR disk, ze kterého vzal první sektor, načetl ho do paměti a spustil. Podle toho, co v tom sektoru bylo se pak začaly dít věci - když tam byl nějaký zavaděč, tak něco zavedl (DOS, Win, Linux, Grub - který umožňoval volbu, přímo nějaký program, .... prostě ten sektor v sobě něco měl a co to udělalo, to to udělalo)

Teď je UEFI, které používá GPT dist, kde najde EFI partišnu která tak musí být označená a musí být FAT32 a na ní najde nějaký soubor podle toho, co má v CMOSce, ten soubor nahraje a spustí a pak se začnou dít věci. Ale ta EFI partišna není problém Linuxu, ale toho UEFI (nové verze BIOSU), které místo na první sektor hrabe do FAT32 partišny a tam teprve hledá, co by tak asi nabootovalo.

(Patrně ještě nějakou dobu půjde v UEFI zapnout nějaký compatibility systém emulující BIOS, co načtě první sektor MBR disku a věco pojedou postaru, ale výhledově se s tím už moc nepočítá)

Jinak, protože ten EFI je 99.99% času jen pro čtení a nepracuje se s ním, tak FAT32 bohatě stačí, aby se odtamtud načetl "boot sektor", teda boot soubor. Prostě tuhle trapnou partišnu ber jako součást BIOSu, stejně jako to kdysi byl ten první sektor na disky, co musel končit 55AA.

Linux nadále může být nainstalovaný klidně na jediněm oddílu s ext2-3-4 dle libosti. A samozřejmě tam takových různých linuxů může být spousta, v různách kombinacích.

Zpět do poradny Odpovědět na původní otázku Nahoru