Bootování Linuxu z flashky - co dát do root=?

Miroslav Benes miroslav_benes na zdas.cz
Sobota Listopad 11 15:51:46 CET 2006


> Ano, s USB diskem by to mělo být úplně stejné... Tyto věci tam být
> musí - teď tam bylo jádro z mého počítače, který denně používám a tam
> flashka samozřejmě normálně běhá...

Flaska běhá .. ale jak ? Je zakompilovaná nebo používá moduly ?

> A jak říkám, moduly tam nejsou,
> tedy neni ani žádná initrd...

Pozor - tady mícháte dohromady dvě věci. V initrd jsou moduly, které 
jsou potřeba pro rozjetí root fs. To, že je na svém PC nepouužíváte 
ještě neznamená, že pro přístup na flash nejsou žádné moduly potřeba.


> Já mám od toho druhého jenom zkompilovanou podobu :( ale ten rozdíl je
> vesměs ten, že moje jádro po panicu uplně vytuhne, kdežto toto reaguje
> na klávesnici dál a vyhazuje tyto hlášky...

On bude s pravděpodobností >= 100% nějaký rozdíl i v tom, co se vypisuje 
na konzolu. Akorát by musela být snaha to pořádně přečíst a porovnat.
Tip1 : běžící varianta to bude mít v dmesg
Tip2 : pro tuhnoucí variantu bude užítečný parametr jádra "vga=ask" (+ 
nastavení menšího písma)


> Tj, jenže jak sem psal, tak initrd nemám... a raději bych ho asi ani 
> nechtěl

Můžu vědět proč ? Je to nějaká zarytá averze, špatná zkušenost nebo jen 
neznalost ?

> :( ale asi jak tak na to koukám mi nezbyde nic jiného... už jen kvůli 
> tomu,
> že by tam šly narvat ty init scripty a root dát do toho ramdisku, jako to
> mívaj live distribuce... 

Asi mluvíme oba o něčem jiném :
 - live distribuce dokážou mít root fs v ramdisku, aby nemusely sahat na 
hdd. S tímto dokážou "normálně" fungovat
 - initrd je pouze berlička, která má usnadnit start systému. Vytvoří se 
relativně malý ramdisk, do kterého se rozbalí obsah (tj. hlavně utility 
a potřebné moduly). Po inicializaci ovladačů je připojen root fs a 
posledním příkazem je pak "switchroot ..."

> asi ještě zkusím jinou flashku, zda to s ní nepude
> lépe, pač tady reaguje jinak opožděně i při normálním používání (musím
> chvíli počkat, než ji mountnu, je to A-Data)... 

V inicializačním skriptu v initrd se používá "ořezaný" shell nash, který 
umí i příkaz "sleep ..". Takže po technické stránce no problemo.

> Nebo je ještě nějaký nápad?

man mkinird

> :) Díky za snahu.

Není zač.
BTW před dávnými časy jsem dat přenášel na disku, který se připojoval do 
lpt. Mělo to dvě výhody - šlapalo to na všem >386 a správně přeložené 
jádro se vešlo na jednu disketu. Před zhruba rokem jsem přešel na USB 
variantu. Původně jsem sice taky zkoušel přeložit jádro na míru, ale 
takové laborování stojí spoustu času. Mnohem jednodušší a pohodlnější je 
vzít jádro z distribuce a správně si nastavit initrd, i když se mi do 
toho původně taky moc nechtělo..



Další informace o konferenci Linux