Restauració del MBR i gestor d'arranc
Quan instal·lem nous SOs o clonem màquines cal, sovint, arranjar el MBR (Master Boot Record). Podeu fer un cop d'ull a aquest article on explica datalladament com fer-ho.
Al MBR tenim informació de les particions del disc i també el programa que gestiona l'arranc del S.O.. Aquest programa s'anomena gestor d'arranc.
Bàsicament treballarem 3 tipus de gestors d'arranc:
- Windows
- GRUB 1 (Ubuntu fins la versió 9.04)
- GRUB 2 (Ubuntu a partir de la versió 9.10)
Cadascun té mètodes diferents per solucionar-se.
Restauració del MBR amb Windows
Quan s'instal·la Windows també s'instal·la el propi gestor d'arranc al MBR. Aquest només pot arrencar particions Windows, i ho fa anant a buscar la primera partició amb flag boot que troba, normalment la primera partició (/dev/sda1) però pot ser qualsevol altra.
Per restaurar el MBR de Windows necessitem un CD d'instal·lació de Windows o un diskette d'arranc de MSDOS que tingui la utilitat fixmbr':
- Engeguem el PC i insertem el CD de Windows.
- Quan aparegui "Presione cualquier tecla para arrancar desde CD ROM...", polsar una tecla.
- Si no arrenca el CD pot ser degut a que calgui ajustar la boot sequence de la BIOS i miri primer el CDROM enlloc del disc dur o altres dispositius.
- Un cop carregat l'instal·lador, triar l'opció [R]eparar enlloc d'instal·lar.
- L'instal·lador busca versions de Windows instal·lades al sistema. Normalment voldrem arrencar amb la primera de C:\WINDOWS, tot i que depenent de la configuració ens pot interessar una altra cosa.
- Un cop apareguem a la línia de comandes, hem de fer
C:\WINDOWS> fixmbr
Sol ser instantani. Si no ens ha donat cap error, ara ja podem rebotar la màquina i arrencarà el Windows normalment.
Restauració amb GRUB 2
El GRUB 2 ha aparegut recentment a la distribució Ubuntu 9.10 i serà el nou estàndard de gestor d'arranc. Per restaurar-lo en cas de fallada del MBR, ens cal un Live CD. Pel nostre cas triarem un Live CD d'Ubuntu que és el SO que utilitzem a classe.
Seguirem les següents passes:
- Inserta el Live CD i arrenca amb ell la màquina.
- Si no arrenca el CD pot ser degut a que calgui ajustar la boot sequence de la BIOS i miri primer el CDROM enlloc del disc dur o altres dispositius.
- Un cop arrencat, obrirem un terminal i seguirem les següents instruccions.
Primer de tot necessitem saber quines particions té el disc. Amb la comanda fdisk -l ("-l" = "list") sabrem què tenim entre mans.
$ sudo fdisk -l
Cal que ens fixem i deduïm quina és la partició on tenim el GRUB. El GNU/Linux sol instal·lar-se en particions esteses, i l'arrel sol estar a /dev/sda5 (1a partició lògica de la partició estesa) però podria ser una altra.
Seguidament muntarem el disc dur sobre el sistema d'arxius del Live CD (basat en un ramdisk).
$ sudo mount /dev/sda5 /mnt
Si tot ha anat bé, fent "ls /mnt" veurem els arxius del disc dur amb el què volem que arrenqui la màquina. Si tenim algun error cal que ens assegurem d'on tenim el disc dur del sistema i tornar-ho a intentar.
Per poder instal·lar el GRUB 2, cal que muntem sobre el disc dur els devices (a /dev) i el pont de comunicació amb el kernel (a /proc). Per fer això farem:
$ sudo mount --bind /dev /mnt/dev $ sudo mount --bind /proc /mnt/proc
El paràmetre --bind fa com una redirecció cap al /dev autèntic, sense interpretar el tipus de sistema d'arxius.
Ara "enganyarem" la consola, resituant l'arrel del sistema a /mnt. Això provocarà que la consola vegi el sistema d'arxius /mnt com si fos l'arrel (/).
$ sudo chroot /mnt
I finalment, podem reinstal·lar el MBR del GRUB al /dev/sda (suposant que aquest és el disc dur amb el què volem que arrenqui el sistema). Vigila que el MBR s'instal·la en un disc (/dev/sda) i no en una partició (com podria ser /dev/sda1).
# grub-install /dev/sda
Si no ens dóna cap error, ja tenim instal·lat el GRUB 2! Ara ja podem reiniciar la màquina i comprovar si el sistema arrenca.
Si hem instal·lat algun altre sistema operatiu de nou i volem actualitzar-lo, caldrà rebotar la màquina i executar:
$ sudo update-grub2
Reiniciem de nou per comprovar que el GRUB 2 ha detectat el nou sistema operatiu.