Product SiteDocumentation Site

8.8. Configurar el carregador d'arrencada

Probablement ja és funcional, però sempre és bo saber com configurar i instal·lar el carregador d'arrencada en cas que desaparegui del «Master Boot Record». Això pot ocórrer després de la instal·lació d'un altre sistema operatiu, com ara Windows. La següent informació també us pot ajudar a modificar la configuració del gestor d'arrencada si calgués.

8.8.1. Identificació dels discos

La configuració del carregador d'arrencada ha d'identificar els diferents discos durs i les seves particions. Linux utilitza fitxers especials de “bloc” ubicats al directori /dev/ per a aquest propòsit. Des de Debian Squeeze, la nomenclatura per a discos durs ha estat unificada pel nucli Linux, i tots els discos durs (IDE/PATA, SATA, SCSI, USB, IEEE 1394) ara estan representades per /dev/sd*.
Cada partició està representada pel seu número al disc on resideix: per exemple, /dev/sda1 és la primera partició del primer disc, i /dev/sdb3 és la tercera partició del segon disc.
L'arquitectura de PC (o “i386”, incloent el seu cosí més jove “amd64”) s'ha limitat durant molt de temps a utilitzar el format de taula de particions “MS-DOS”, que només permet quatre particions “primàries” per disc. Per anar més enllà de la limitació d'aquest esquema, una de les particions ha de ser creada com a partició "estesa", i llavors pot contenir particions “secundàries” addicionals. Aquestes particions secundàries estan numerades a partir de 5. Per tant, la primera partició secundària podria ser /dev/sda5, seguida de /dev/sda6, etc.
Una altra restricció del format de taula de particions MS-DOS és que només permet discos de fins a 2 TiB de mida, que comença a ser un problema real amb els discs recents.
Un nou format de taula de particions anomenat GPT («GUID Partition Table» o “Taula de particions GUID”) relaxa aquestes restriccions sobre el nombre de particions (permet fins a 128 particions quan s'utilitza la configuració estàndard) i sobre la mida dels discs (fins a 8 ZiB, que són més de 8 mil milions de terabytes). Si teniu la intenció de crear moltes particions físiques al mateix disc, hauríeu d'assegurar-vos que esteu creant la taula de particions en el format GPT al particionar el disc.
No sempre és fàcil recordar quin disc està connectat a quin controlador SATA, o en tercera posició a la cadena SCSI, especialment perquè la denominació dels discos durs en calent (que inclou entre d'altres la majoria de discs SATA i discos externs) pot canviar d'una arrencada a una altra. Afortunadament, udev crea, a més de /dev/sd*, enllaços simbòlics amb un nom fix, que podeu utilitzar si desitgeu identificar un disc dur d'una manera no ambigua. Aquests enllaços simbòlics s'emmagatzemen a /dev/disk/by-id/. En una màquina amb dos discos físics, per exemple, es podria trobar el següent:
mirexpress:/dev/disk/by-id# ls -l
total 0
lrwxrwxrwx 1 root root  9 23 jul. 08:58 ata-STM3500418AS_9VM3L3KP -> ../../sda
lrwxrwxrwx 1 root root 10 23 jul. 08:58 ata-STM3500418AS_9VM3L3KP-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 23 jul. 08:58 ata-STM3500418AS_9VM3L3KP-part2 -> ../../sda2
[...]
lrwxrwxrwx 1 root root  9 23 jul. 08:58 ata-WDC_WD5001AALS-00L3B2_WD-WCAT00241697 -> ../../sdb
lrwxrwxrwx 1 root root 10 23 jul. 08:58 ata-WDC_WD5001AALS-00L3B2_WD-WCAT00241697-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 10 23 jul. 08:58 ata-WDC_WD5001AALS-00L3B2_WD-WCAT00241697-part2 -> ../../sdb2
[...]
lrwxrwxrwx 1 root root  9 23 jul. 08:58 scsi-SATA_STM3500418AS_9VM3L3KP -> ../../sda
lrwxrwxrwx 1 root root 10 23 jul. 08:58 scsi-SATA_STM3500418AS_9VM3L3KP-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 23 jul. 08:58 scsi-SATA_STM3500418AS_9VM3L3KP-part2 -> ../../sda2
[...]
lrwxrwxrwx 1 root root  9 23 jul. 08:58 scsi-SATA_WDC_WD5001AALS-_WD-WCAT00241697 -> ../../sdb
lrwxrwxrwx 1 root root 10 23 jul. 08:58 scsi-SATA_WDC_WD5001AALS-_WD-WCAT00241697-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 10 23 jul. 08:58 scsi-SATA_WDC_WD5001AALS-_WD-WCAT00241697-part2 -> ../../sdb2
[...]
lrwxrwxrwx 1 root root  9 23 jul. 16:48 usb-LaCie_iamaKey_3ed00e26ccc11a-0:0 -> ../../sdc
lrwxrwxrwx 1 root root 10 23 jul. 16:48 usb-LaCie_iamaKey_3ed00e26ccc11a-0:0-part1 -> ../../sdc1
lrwxrwxrwx 1 root root 10 23 jul. 16:48 usb-LaCie_iamaKey_3ed00e26ccc11a-0:0-part2 -> ../../sdc2
[...]
lrwxrwxrwx 1 root root  9 23 jul. 08:58 wwn-0x5000c50015c4842f -> ../../sda
lrwxrwxrwx 1 root root 10 23 jul. 08:58 wwn-0x5000c50015c4842f-part1 -> ../../sda1
[...]
mirexpress:/dev/disk/by-id# 
Tingueu en compte que alguns discos es llisten diverses vegades (perquè es comporten simultàniament com a discos ATA i com a discos SCSI), però la informació rellevant està principalment en el model i els números de sèrie dels discos, amb els quals podeu trobar el fitxer del perifèric. Mentre que els enllaços a /dev/disk/by-id/ es creen utilitzant el número de sèrie i el camí físic del dispositiu, hi ha enllaços més útils, per exemple /dev/disk/by-label/ (basats en etiquetes donades), /dev/disk/by-uuid/ (basat en identificadors únics, que poden canviar al reformatejar un dispositiu usant mkfs.* o mkswap),/dev/disk/by-path/ (basat en el camí físic més curt), i /dev/disk/by-partlabel/ i /dev/disk/by-partuuid/ (només les particions amb etiquetes GPT i els seus identificadors únics). Si utilitzeu aquests enllaços, per exemple a /etc/fstab, sempre doneu preferència als identificadors únics abans que a les etiquetes. També podeu obtenir i canviar aquesta informació per a cada partició o dispositiu utilitzant les ordres lsblk i blkid.
Els fitxers de configuració d'exemple donats en les següents seccions es basen en la mateixa configuració: un sol disc SATA, on la primera partició és una instal·lació antiga de Windows i la segona conté Debian GNU/Linux.

8.8.2. Configuració de GRUB 2

GRUB («Grand Unified Bootloader» o “gran gestor d'arrencada unificat”) és més recent. No és necessari invocar-lo després de cada actualització del nucli; GRUB sap com llegir els sistemes de fitxers i trobar tot sol la posició al disc del nucli. Per instal·lar-lo a l'MBR del primer disc, simplement escriviu grub-install /dev/sda. Això sobreescriurà l'MBR, així que aneu amb compte de no sobreescriure una ubicació incorrecta. Encara que també és possible instal·lar GRUB en un registre d'arrencada de partició, cal tenir en compte que normalment és un error i fer grub-install /dev/sda1 no és el mateix que grub-install /dev/sda.
La configuració de GRUB 2 s'emmagatzema a /boot/grub/grub.cfg, però aquest fitxer (a Debian) es genera a partir d'altres. Aneu amb compte de no modificar-lo a mà, ja que aquestes modificacions locals es perdran la pròxima vegada que s'executi update-grub (que pot ocórrer després d'actualitzar diversos paquets). Les modificacions més comunes del fitxer /boot/grub/grub.cfg (per afegir paràmetres de la línia d'ordres al nucli o canviar la durada que es mostra el menú, per exemple) es fan a través de variables a /etc/default/grub. Per afegir entrades al menú podeu crear un fitxer /boot/grub/custom.cfg o modificar el fitxer /etc/grub.d/40_custom. Per a configuracions més complexes, podeu modificar altres fitxers a /etc/grub.d, o afegir-n'hi; aquests scripts haurien de retornar fragments de configuració, possiblement fent ús de programes externs. Aquests scripts són els que actualitzaran la llista de nuclis per arrencar: 10_linux té en compte els nuclis Linux instal·lats; 20_linux_xen té en compte els sistemes virtuals Xen, i 30_os-prober afegeix altres sistemes operatius existents (Windows, OS X, Hurd), imatges de nucli, i opcions d'accés BIOS/EFI al menú.

8.8.3. Ús del GRUB amb EFI i Secure Boot

L'ús de GRUB per arrencar un sistema BIOS tradicional (antic o amb UEFI-CSM) o un sistema UEFI és molt diferent. Afortunadament, l'usuari no necessita conèixer les diferències perquè Debian proporciona diferents paquets per a cada propòsit i l'instal·lador es preocupa automàticament de quin/s triar. El paquet grub-pc és escollit per a sistemes antics, on GRUB està instal·lat l'MBR, mentre que els sistemes UEFI requereixen grub-efi-arquitectura, on GRUB està instal·lat a la partició EFI System (ESP). Aquest últim requereix una taula de particions GTP així com una partició EFI.
Per canviar un sistema existent (suportant UEFI) del mode d'arrencada antic al mode UEFI no només cal canviar els paquets GRUB del sistema, sinó també ajustar la taula de particions i el per crear una partició EFI (i probablement incloent-hi el redimensionat de les particions existents per crear l'espai lliure necessari). Per tant, es tracta d'un procés bastant elaborat i que no podem cobrir-lo aquí. Afortunadament, hi ha alguns manuals de “blòguers” que descriuen els procediments necessaris.
Si utilitzeu un sistema amb «Secure Boot» habilitat i heu instal·lat shim-signed (vegeu la barra lateral CULTURA Arrencada segura i el gestor d'arrencada «shim»), també heu d'instal·lar grub-efi-arquitectura-signed. Aquest paquet no s'inclou automàticament, només si s'ha activat la instal·lació del paquet recomanat.