[ dilbe @ 27.05.2002. 04:23 ] @
GRUB je instaliran na FAT16 particiji (~40MB za recovery programe i sl.), upisan u MBR (kao i u nekoliko sektora iza MBR-a) i koristim ga za dizanje Linux-a, Win2k Pro i Win98-ice. E sad, kako moj autoexec.bat (i config.sys) 98-ice sadrze M$ Boot Menu i ja recimo hocu da izaberem njegovu trecu stavku, prinudjen sam da prolazim kroz _dva_ menija. Kako bi se ovo moglo resiti (optimizovati za jedan <ENTER>:) ?

Ako bih podelio taj Boot Menu i kreirao nekih 5-6 autoexec.bat i config.sys fajlova, mozda bi ih bilo moguce "rotirati", odnosno kopirati odredjene fajlove na root (C:\) u zavisnosti od izabrane stavke u _grub_ meniju. Naravno, "plain" grub ovo ne moze da radi; postoji samo read-only pristup FAT32 particijama.

Postoji li neki (takodje interaktivni) boot loader koji bi podrzavao ovakve "akrobacije" (ili resavao istu stvar na neki drugi nacin), a da pri tom _obavezno_ moze _direktno_ (dakle, bez chain-ovanja) da podigne i Linux sa mogucnoscu prosledjivanja parametara kernelu (mada bih onda mogao da "rotiram" i grub.conf :) ? Mogao bi to biti i program kog bi grub mogao da ucita (0x7c00), koji bi iskopirao odgovarajuca 2 fajla i zatim sam ucitao prvi sektor Win98 particije i prepustio mu dalje boot-ovanje. Ako ovo jos niko nije odradio, postoji li neka _dobra_ (pouzdana) C/ASM biblioteka za full pristup FAT32 ? :))

Da li trazim previse ?! ;)

P.S. Priznajem, ovo pitanje verovatno i nije za Linux grupu (Moderatoru, imaj milosti!:), ali cisto sumnjam da _zakleti_ windows-ovci uopste imaju potrebe za (tamo nekim) boot loader-ima i da uopste znaju sta je to. ;(
[ tOwk @ 31.05.2002. 11:03 ] @
GRUB radi chainloading DOS/Windows operativnih sistema. Prema tome, moraćeš da ili napišeš svoj dodatak (/usr/src/linux/.../vfat.c --- ili nešto slično, tu imaš kompletne module za pristup FAT i FAT32 disku).

Ako misliš da sam pišeš nešto, možeš pisati i DOS-loader koji će ti obavljati samo posao dizanja odgovarajućeg DOS izbora (recimo prenosiš mu opcije iz GRUBa koji config.sys i autoexec.bat da koristi).

Ukoliko hoćeš nešto bolju varijantu (ali možda i komplikovaniju), preporučujem da pogledaš kako je napravljen netboot drajver za GRUB. GRUB sam po sebi može da čita i FAT(32) particije.

Sve u svemu, lepog rešenja čini mi se da nema (kao što sigurno i sam pretpostavljaš), pa je sigurno i to jedan od razloga zašto nema podrške za upravo to što želiš u GRUBu.

Dalje, mislim da je ova poruka zaslužila da bude u forumu za programiranje, a ne Linux.

Toliko.va.

-i�a populacija korist
[ dilbe @ 01.06.2002. 16:17 ] @
Citat:
tOwk:
GRUB radi chainloading DOS/Windows operativnih sistema. Prema tome, moraćeš da ili napišeš svoj dodatak (/usr/src/linux/.../vfat.c --- ili nešto slično, tu imaš kompletne module za pristup FAT i FAT32 disku).


Pogledacu ovo jos malo, problem je sto sam jos uvek Linux newbie i ne poznajem dobro interface tih fs drajvera (mada su dosta "cisto" pisani). Trebalo bi valjda samo izdvojiti par f-ja i mapirati odredjene rutine na BIOS pozive. Kako cu ja to sve da linkujem ? Ne bi smele da postoje tablice za relokaciju, sve mora biti staticki linkovano, relativni skokovi, bez DOS poziva (iskljucivo BIOS), "plain binary" format fajla... C biblioteka onda verovatno otpada, a ako se mora pisati u asm-u, preskocio bih AT&T sintaksu. Sve ovo pod uslovom da ne pisem ELF/MZ-EXE loader. _Direktno_ debug-ovanje je, pretpostavljam, nemoguce ?!

Citat:
Ako misliš da sam pišeš nešto, možeš pisati i DOS-loader koji će ti obavljati samo posao dizanja odgovarajućeg DOS izbora (recimo prenosiš mu opcije iz GRUBa koji config.sys i autoexec.bat da koristi).


Hmm... Kako tacno grub prenosi parametre boot sektoru (mislim, u koji deo memorije ih upisuje) ?! Ja sam pre mislio na nekakvu hard-coded varijantu (posto bi taj program ionako "tezio" par kb) jer bi ona ipak bila modularnija (!) - mogla bi se koristiti iz skoro svakog boot loader-a. Naravno, postojao bi i nekakav setup (dos/linux) program koji bi samo patch-ovao unapred definisani deo fajla. Uostalom, tako radi i grub.

Citat:
Ukoliko hoćeš nešto bolju varijantu (ali možda i komplikovaniju), preporučujem da pogledaš kako je napravljen netboot drajver za GRUB. GRUB sam po sebi može da čita i FAT(32) particije.


Pogledacu, nego kad smo vec kod ekstenzija, nesto sam razmisljao i o boot-ovanju sa CD-a posto moj BIOS to ne podrzava. Nasao sam OpenSource "Smart Boot Manager" koji ima ovu plemenitu mogucnost, ali problem je sto se ne moze tek tako koristiti u kombinaciji sa grub-om zbog specificne instalacije. Naime, on _zahteva_ da bude prisutan u MBR-u i da se ostatak programa nalazi neposredno iza MBR-a. Nije moguce ucitati samo sbmgr.mbr iz grub-a, jer ostatak proverava MBR (jedino da menjam src). Grub je rucno instaliran u MBR ("install", ne "setup" komanda), bez dodatka od 20 sektora posle MBR-a (stage 1.5/2).

Citat:
Sve u svemu, lepog rešenja čini mi se da nema (kao što sigurno i sam pretpostavljaš), pa je sigurno i to jedan od razloga zašto nema podrške za upravo to što želiš u GRUBu.


LM, na net-u sam naisao na navodno "ultimativni" boot loader, "Acronis OS Selector 5.0 Deluxe *DEMO*" koji moze da radi i ovo sto ja hocu i mnogo vise (ima ugradjeni "Partition Magic", podrzava i "bezbolno" resize-ovanje ext3 particija itd.) samo me _uzasno_ nervira izgled programa (ala WinXP, sa sve mishkom i prozorcicima na 60Hz:), sam nacin rada (piskaranje po boot sektorima pri svakom boot-ovanju) i to sto mi je upropastio obe FAT tablice Win98-ice! ;(

Skinuo sam i jos par boot manager-a, neki se bore (dovijaju) sa dvostrukim boot menijima punjenjem bafera tastature, ali je sve to daleko od savrsenog...

Citat:
Dalje, mislim da je ova poruka zaslužila da bude u forumu za programiranje, a ne Linux.



Sada i ja to vidim... Moderatoru, da li bi bio ljubazan da premestis ovu temu na odgovarajuci forum ?

dilbe
9:0t koji posaljemo IIS serv