FANDOM


GNU GRUB [1] (sau GNU Grand Unified Bootloader) reprezintă o porțiune de cod cu scop-ul de a încărca nucleul (i.e. kernel-ul) sistemului de operare. SO-urile comerciale, sau familia *BSD, vin cu bootloader-ul propriu. Alternativa în GNU/Linux o reprezintă GRUB sau LILO (Linux Loader).

Introducere Edit

În momentul pornirii stației de lucru (i.e. computer/machine) BIOS-ul (Basic I/O System) va inițializa primii 512 bytes (din lista dispozivelor existente fizic în mașină). Prezentul articol se va referii la hard-disk-uri, și GRUB 0.97. Având vedere dimensiunea redusă și fapt-ul că în 512 octeți trebuie să existe și informații referitoare la parțiile și tipul lor, bootloader-ul va executa boot-are SO-ului în mai mulți pași (i.e. stages).

Stage1 va exista fizic în MBR (Master Boot Loader, fiind vorba despre cei 512 octeți discutați anterior), care va pointa către Stage 1.5 sau 2. (conform Wikipedia [2] Stage 1.5 va fi situat în primii 30 kB după MBR).


De obicei, după ce distribuția a fost instalată, wrapper-ul de install (sau handbook-ul) va prezenta ca ultim pas. înainte de a reboot-a mașina, instalarea unui bootloader. Totuși în cazul instalării alt-ui SO, dintr-o greșeală, schimbarea unor drive-uri s.a.m.d, este necesar ca bootloader-ul sa fie reinstalat.


O procedură detaliată exhaustiv pe Internet, este cea cu boot-area unui liveCD/rescue disk (http://www.tux.org/pub/people/kent-robotti/looplinux/rip/), cu care se poate restaura GRUB (folosită de wrapper-ele de install).

/path/to/grub-install --root-directory=/root/directory/path --no-floppy --recheck /dev/XdY[Z],

unde

/root/directory/path - reprezintă directorul radăcină. GRUB are nevoie de path-ul către stage-uri si fisierul de configurare. (i.e. / sau /mnt/, unde in / există director-ul boot sau in /mnt există director-ul boot) X - reprezintă tip-ul de controller (IDE, hdY sau SCSI/S-ATA/PATA sDY) Y - reprezintă hard-drive-ul (sda, sdb, hda, hdb) Z - opțional dacă bootloader-ul nu va fi instalat în MBR.

grub-install folosește alte tool-uri în spate pentru a scana device-uri existente pe mașină. --no-floppy este să ignore floppy drives. --recheck pentru a confirma că bootloader-ul a fost instalat cu success.

Exemple:

$ mount /dev/sda /mnt/sda # montează $ /usr/sbin/grub-install --root-directory=/mnt/sda --recheck /dev/sda --no-floppy # instalează GRUB în MBR al hard-drive-ul sda

Metodă alternativă folosită de altfel și de grub-install este cu grub shell.

  1. grub --no-floppy
  2. root (hdX,Y)
  3. setup (hdX)

unde, root - reprezintă comanda de a monta director-ul boot, pentru ca GRUB să aibe acces la stage-uri și fisierele necesare. X - reprezintă hard-disk-ul (i.e. sda/hda - in funcție de controller, X = 0, sdb/hdb, X = 1) Y - reprezintă parția care conține director-ul boot (Y se interpretează ca NUMAR_PARTITIE_REALĂ - 1, i.e. sda1 reprezintă parția de boot, atunci Y = 0, daca sda5 reprezintă partiția de boot atunci Y = 4). setup - comandă de instalare

Exemple:

  1. root(hd0,0) # montează sda1/hda1
  2. setup(hd0) # instealează MBR pe sda
  1. root (hd1,0) # montează sdb1/hdb1
  2. setup(hd1) # instelează MBR pe sdb
  1. root (hd3,2) # montează sdd3/hdd3
  2. setup (hd3)

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on FANDOM

Random Wiki