LILO

Petr Her~man Petr.Herman na lfmotol.cuni.cz
Pondělí Leden 20 11:35:42 CET 1997


> > On Sun, 19 Jan 1997, Leos Bitto wrote:
> > 
> > > > Pri pridani dalsieho kernelu do /etc/lilo.conf sa po restarte LILO
> > > > akosi nerozbehol zostal takto:
> > > > LI_
> > > 
> > > Me to delalo taky. Pomohlo mi do /etc/lilo.conf pripsat parametr linear
> > > (jako slovo na samotny radek).
> > >                                                          Leos Bitto
...
> Ted jsem si teprve vsiml ze pisete ze se to stalo az pridani dalsiho
> kernelu. Mozna se jedna o zname omezeni BIOSu pro praci s disky > 504 MB.
> Podivejte se do souboru README od lila, odstavec BIOS restrictions.
...
>                                                          Leos Bitto

Po pridani noveho kernelu bylo nutne pustit lilo, ktere prekonfigurovalo
LILO :-) a tim vzniknul problem ('lilo' = prikaz k zavedeni a konfiguraci
LILO, 'LILO' = zavadec, sidlici v MBR nebo boot sektoru).

README od lila je vyborna vec, a kdo ztrasti tpelivost cist to az do konce,
necht se precte alespon ten konec: 'LILO start message'.
Vtip je v tom, ze ta hlaska LILO pri loadovani se nepise na jednou, ale
kazde pismenko se napise az tehdy, kdey se neco povede. A pokud se
neco nepovede, napise se misto dasneho pismenka nejaky jiny znak.
Konkretne, pokud se zobrazi dobre jen LI, pise se k tomu asi toto:

Prvni stadium naloudovani se povedlo, ale druhe stadium se uz nepovedlo,
coz muze byt zpusobeno blbou geometrii anebo presunutim souboru
/boot/boot.b aniz bych pak pustil lilo.

Me se stalo, ze jednou (aniz bych cokoli menil) se mi pri loudovani
zobrazilo jen:
LIL-
coz snamena, ze se mi hejbnul soubor /boot/map

Bylo to tak, ze jsem se vykaslal na vsechny warningy a posadil root
partisnu tak, ze jsem mel magickych 1024 cyl. v jeji pulce. Pri
instaslaci vse probehlo O.K., protoze ta partisna byla na zacatku
volna a vse se nainstalovalo _fyzicky_ pod tech 1024 cyl.

Casem se mi partisna zaplnila a ten soubor /boot/map (nebo jeho kus)
se mi soupnul nad tech 1024 a byl problem.

Jen nechapu, jakym hnutim "mysli" se tam presunul, kdyz jsem nepoustel 
lilo. Vzpomel jsem si, jak se tu asi pred rokem mluvilo o defragmentaci
disku a Yenyia pak napsal, ze u ext2 delat nejakou defragmentaci nema
smysl, ze se o to sprava filesystemu stara sama, aby soubory nebyly
moc fragmentovany. Muzu tomu rozumet tak, ze se nejake soubory
"tu a tam, obcas, samy" presunou na disku jinam, aby se uvolnila
nejaka spojita oblast a snizila se defragmentace? Tim by se do dalo
vysvetlit. Anebo jak jinak funguje ten system, ktery udrzuje tu nizkou
fragmentaci, smim-li se zeptat?
 
Co se tyce slovicka "linear", to chapu takhle:
Sektor na disku je mozne adresovat bud 3D (trojici cyl/head/sect)
anebo linearne (pocet sektoru od zacatku disku). V MBR existuji
o umisteni partitions nezavisle na sobe oboji informace, ale 
"tradicne" se vse ridi podle 3D. Nicmene "tradicne" je mozno do MBR
zapsat max. 1024 cylindru a vic ne. Prikaz "linear" pak lilu rika,
ze se nema ridit informaci 3D, ale cislem sektoru (linearne).

Jen mi neni 100% jasne, jak to souvisi s nastavenim parametru
disku v CMOS, kterou si cte BIOS (NORMAL, LBA, LARGE).
Znamena to LBA a LARGE, ze se jen provede zobrazeni jednoho 3D
prostoru do jineho 3D (kde je mene cylindru), anebo i neco jineho?
Nevim, co znamenaji ta pismenka LBA, ale tusim, ze by to mohlo
byt neco jako Linear Bios Acces. Kdyz jsem driv programovaval,
tak vzpominam, ze se na sektor pristupovalo volanim biosu, kde
se jako parametr uvadela 3D adresace. Tak si domyslim, ze v
"novem" BIOSu bylo toto volani rozrireno tak, ze je mozne adresovat
sektor i linearne, coz by prave byla ta vec, ktera by u "novych
BIOSu" umoznovala bootovat i z cylindru nad 1024.
Muze to nekdo uvest na pravou miru, zejmena, jak spolu v tomto
pripade souvisi nutnost parametru "linear" v lilu s nasavenim
"LBA" anebo "LARGE" v BIOSu?

Petr Herman


Další informace o konferenci Linux