Šta je to GRUB? - ★★ Fog Developer ★★

Novo

6/recent/ticker-posts

Šta je to GRUB?

Šta je to GRUB?
Većina ljudi na svome računaru ima samo jedan operativni sistem. Zapravo, ogromna većina ljudi ni ne zna za neke druge sisteme sem popularnog Windows-a. Neki ljudi se odvaže na egzotične eksperimente sa ostalim sistemima, pa na prvu loptu instaliraju taj drugi operativni sistem, pri tome "gazeći" prethodni sistem koji se "vrteo" na toj mašini.
U većini slučajeva takvo ponašanje nije potrebno. Pravilnim korišćenjem programa koji se nazivaju butloderi (boot loader) svaka mašina može biti podešena za rad sa više nezavisnih sistema. U ovom tekstu ćemo samo opisati jedan od njih, koji je široko rasprostranjen u linux svetu.
Dakle,

Šta je to GRUB?

U najprostijem smislu, GRUB je program koji Vam omogućava da računar prepozna sve operativne sisteme koji su mu na raspolaganju i da Vam pri tom ponudi izbor koji od sistema želite da pokrenete. Još prostije: GRUB će se pokrenuti odmah nakon startovanja računara a zatim Vam dati mogućnost da izaberete koji od pronađenih operativnih sistema želite da pokrenete.
  • [message]
    • Obrati pažnju!
      • Treba da znate da ukoliko imate više operativnih sistema na svom računaru, njih ne možete koristiti istovremeno. Ako Vam je tako nešto na umu, Vi bi ste trebali da koristite virtuelne mašine, a ne operativne sisteme koji su samostalno instalirani na računaru.

GRUB je skraćenica od naziva Grand Unified Bootloader (Butloader velikog ujedinjenja, što je namerna asocijatcija na Grand Unified Theory tj. Teoriju velikog ujedinjenja koja je vezana za veliki prasak i nastanak kosmosa).

Zašto nam više sistema (i GRUB) može koristiti?

Verovatno se pitate šta će nekom više operativnih sistema na jednom računaru?
Ukoliko ste iskusni korisnik onda već znate da svaki OS (operativni sistem) ima svoje prednosti i mane. Neke mane određenih sistema se ne pojavljuju kod drugih i obrnuto. Često će Vam za određen zadatak zatrebati ono što OS koji trenutno koristite ne poseduje. Imajući više sistema, Vi ste u mogućnosti da brzo restartujete računar i obavite posao na istoj mašini, ali na drugom sistemu.
Druga mogućnost je želja za eksperimentisanjem i testiranjem nekog novog sistema. Tom prilikom Vi možete instalirati OS na svoju mašinu i testirati ga u realnim uslovima rada.
Treća stvar je vezana za prirodu GRUB-a. Naime, GRUB ne mora biti instaliran na hard disk, već se može nalaziti i na CD/DVD-ju, Flopi disku ili USB-u. Ovo omogućava da pokrećete razne LIVE distribucije linuxa bez bojazni da ćete bilo šta poremetiti na primarnom OS-u koji već postoji na hard disku.
GRUB v2 running in text mode
By Huihermit - Own workGPLLink
U današnje vreme sve veću popularnost stiču pametni telefoni. Postoje indikacije da će, sem Androida, Linux zavladati i tim tržištem. U ovom trenutku postoje eksperimenti u kojima jedan mobilni telefon pokreće Windows Phone i Android sistem u dual boot varijanti (pomoću određenog bootloadera). Ako ovi eksperimenti budu uspešni, uskoro bi smo mogli da imamo telefone na kojima je paralelno instaliran Android i pored njega neki linux. Prilikom uključivanja takvog telefona nam GRUB može pomoći da izaberemo koji sistem želimo da koristimo.

Malo objašnjenje za radoznale

U vreme kada su se prvi put pojavili, kompjuteri nisu imali operativne sisteme. Oni su samo izvršavali određeni program. Međutim, kako je vreme prolazilo i snaga računara se povećavala, došlo je do potrebe da jedna mašina može brzo i efikasno da izvršava i kontroliše više programa u isto vreme. Takođe se pojavila potreba za brzim i efikasnim upravljanjem i hardverom i softverom. Tada nastaju operativni sistemi pomoću kojih se lako upravljalo celokupnom mašinom.
U današnje vreme su stvari prilično jednostavne. Postoji BIOS koji upravlja mašinom. On ne zna za postojanje ikakvog operativnog sistema, već mu je zadatak da pokrene mašinu. Nakon toga on "prepušta" nekom OS-u kontrolu nad uređajima.
Kako će BIOS potražiti taj operativni sistem kada ni ne zna da on postoji? Odgovor na ovo pitanje je jednostavno. BIOS u stvari traži uređaj na kojem postoji nešto što kontroliše mašinu (boot). Vrsta uređaja zavisi od njegovog podešavanja, tako da korisnik ima izbor (Hard Disk, CD/DVD, USB, Flopi, Network...). BIOS je najčešće podešen da potraži hard disk (u narodskom jeziku "butuje sa harda").
Nakon toga je dovoljno da BIOS samo pokrene hard disk. Prilikom pokretanja diska njegova igla počinje čitanje podataka sa nultog sektora (veličine samo 512 bajtova), a u tom sektoru postoje podaci koji se smeštaju u memoriju i izvršavaju od strane procesora. Ovaj nulti sektor se naziva MBR (master boot record).
Veličina MBR-a je sasvim dovoljna da se u nju smeste podaci o tom disku i maleni butloder. Najčešće je taj butloader samo naredba procesoru koja govori gde se na tom hard disku nalazi izvršni fajl koji pokreće operativni sistem.
Međutim, u MBR nema mesta da se smesti neki veći program koji bi vodio računa o više operativnih sistema!
Da bi se ova anomalija na neki način "ispravila", prilikom instalacije bilo kog linux-a GRUB će biti podeljen na više manjih delova. Prvi i najvažniji deo će se nalaziti u MBR sektoru hard diska, drugi deo će biti instaliran između nultog sektora i prve particije (na tom potezu postoje 62 prazna i neiskorišćena sektora), dok će konfiguracioni fajlovi da budu instalirani u fajl sistemu tog hard diska.
Ovo omogućava da mašina koja koristi GRUB "podiže sistem na ovaj način: BIOS traži MBR; MBR šalje procesoru podatak da učita GRUB sa određene lokacije; GRUB pronalazi fajlove na disku koji mu govore koji operativni sistemi su na raspolaganju; računar to prikazuje korisniku i korisnik bira (tj zadaje komandu GRUB-u) koji sistem želi; na kraju GRUB daje naredbu procesoru da krene sa čitanjem i izvršavanjem memorijske lokacije na kojoj se nalazi jezgro operativnog sistema.

Nedostaci GRUB-a

Iako deluje kao perfektno rešenje, GRUB može mnogo puta da zadaje glavobolju korisnicima sa multibut mašinama (mašinama koje na sebi imaju više operativnih sistema instaliranih nezavisno jedan od drugog).
Prvi nedostatak je kod korisnika koje možemo nazvati avanturisti u linux svetu. Ovakvi korisnici često instaliraju neki linux paralelno sa windowsom. Nakon kratkog eksperimenta, oni se ipak odlučuju za samo jedan sistem i to najčešće windows.
Konfiguracioni fajlovi za GRUB se nalaze u linux sistemu fajlova, pa će neiskusni korisnik prilikom brisanja linuxa obrisati i njih! Nakon toga mašina neće moći da podigne operativni sistem jer se, u tom trenutku na MBR sektoru nalaze ostaci GRUB-a koji procesoru ništa ne znače.
Dakle, nakon ovoga je potrebno uraditi oporavak MBR sektora hard diska, kako bi on ispravno mogao da podigne windows. Ovaj oporavak zahteva određene alate o kojima ću pisati u nekom drugom tekstu.
Drugi veliki nedostatak GRUB-a se javlja kod korisnika koje možemo nazvati ekstremisti u linux svetu.  Ovi korisnici često na svojim mašinama imaju instalirano mnogo nezavisnih linux distribucija. Kada se bilo koji operativni sistem apdejtuje (update) postoji velika verovatnoća da će on izmeniti i GRUB. Kada operativni sistem ažurira GRUB-ove fajlove, ona će preuzeti kontrolu nad procesom pokretanja GRUB-a. Neki put ni sam korisnik ne zna koja distribucija je trenutno konfigurisala GRUB.
Još gora stvar se dešava kada takav korisnik slučajno obriše linux distribuciju koja kontroliše GRUB. Tada će se takođe pojaviti potreba za poporavkom MBR sektora i oporavkom GRUB butlodera.
O takvim stvarima ću pisati u nekim sledećim tekstovima, ako za tim bude bilo potrebe.

Постави коментар

0 Коментари