dimecres, de juliol 07, 2010

Lucid, grub2, usb i raid - Tornant amb l'USB multiboot

Finalment he instal·lat Ubuntu Lucid, que ha estat el meu bateig amb grub2.

L'actualització des de Jaunty Jackalope no ha reconegut la unitat RAID-1, així és que he cercat algun instal·lador que ho fés.

Ni els instal·ladors de 10.4 ni 9.04 i386, ni amd64 han reconegut la unitat RAID que no estava disposat a renunciar. L'instal·lador del CD alternatiu també m'ha donat algun problema, així que he fet servir Minimal CD. tan el de i386 com el amd64 han reconegut la unitat RAID1. Finalment he fet servir el de amd64. Els dos es diuen mini.iso així que al de 64 bits l'he canviat el nom a mini64.iso per poder posar els dos al mateix llapis.

Tot plegat ha estat l'ocasió de posar-me amb el grub2, que ha resultat un éxit. M'ha evitat de fer servir una caixa sencera de Cds i provar una colla d'instal·ladors amb poc més que copiar-los a un disc USB de 4GB.

Prèviament he intentat fer servir Unetbootin, però encara no està disponible amb Lucid i al segon cop que he hagut de tornar a començar he decidit provar el grub2. Tampoc la utilitat de creació de discos d'arrencada de l'Ubuntu m'ha estat de cap ajuda ja que només funciona amb el CD estàndar.

De fet només he hagut d'instal·lar el grub2 al disc usb:

grub-install --no-floppy --root-directory=/media/USB /dev/sdx


Sustituïnt la x per la lletra de la unitat USB, que podem trobar amb sudo fdisk -l

Copiar les imatges iso a la carpeta arrel del disc i generar un arxiu boot/grub/grub.cfg amb les sesüències necessàries. Cercant una mica ho ha estat difícil. Deixo un enllaç que m'ha estat útil, i les que he fet servir. De fet no és complicat fer-ne de noves amb altres imatges iso, tenint en compte que podem veure on són els arxius necessaris muntant les imatges clicant-les al Nautilus.

El fitxer grub.cfg no convé editar-lo i el correcte fora afegir les nostres opcions al fitxer /etc/grub.d/40_custom i que ha de començar amb les línies:
#!/bin/sh
exec tail -n +3 $0

Sembla que quan el sistema s'actualitza, sobreescriu grub.d i afegeix el contingut de 40_custom, però a mi no m'ha donat cap problema, potser per que es tracta d'un disc usb.

El que no he aconseguit és triar la llengua de l'instal·lador. Simplement el grub2 salta la pantalla per triar-la! A veure si algú m'ho explica.

Gràcies Vicent Cubells.

Contingut del disc USB:
$ ls -l /media/usb
total 3860048
drwx------ 3 paco paco 4096 2010-07-06 11:38 boot
-rwxr-xr-x 1 paco paco 14299136 2010-07-06 22:15 mini64.iso
-rwxr-xr-x 1 paco paco 13121536 2010-04-25 23:03 mini.iso
-rwxr-xr-x 1 paco paco 272586752 2010-06-30 19:00 systemrescuecd-x86-1.5.7.iso
-rwxr-xr-x 1 paco paco 731453440 2010-04-29 12:55 ubuntu-10.04-desktop-amd64.iso
-rwxr-xr-x 1 paco paco 733419520 2010-04-29 12:56 ubuntu-10.04-desktop-i386.iso
-rwxr-xr-x 1 paco paco 733837312 2010-07-06 11:04 ubuntu-10.04-netbook-i386.iso
-rwxr-xr-x 1 paco paco 730136576 2010-07-05 12:53 ubuntu-9.10-alternate-amd64.iso
-rwxr-xr-x 1 paco paco 723795968 2010-07-06 11:46 ubuntu-9.10-desktop-i386.iso

Contingut de /media/usb/boot/grub/grub.cfg:
set timeout=10
set default=0

menuentry "Run Ubuntu Live 10.04" {
set isofile="/ubuntu-10.04-desktop-i386.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile splash --
initrd (loop)/casper/initrd.lz
}

menuentry "Run Ubuntu Live AMD 64 10.04" {
set isofile="/ubuntu-10.04-desktop-amd64.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile splash --
initrd (loop)/casper/initrd.lz
}

menuentry "Run Ubuntu Netbook Edition 10.04" {
set isofile="/ubuntu-10.04-netbook-i386.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile splash --
initrd (loop)/casper/initrd.lz
}

menuentry "Run Ubuntu Minimal CD 10.04" {
set isofile="/mini.iso"
loopback loop $isofile
linux (loop)/linux boot=/ iso-scan/filename=$isofile splash --
initrd (loop)/initrd.gz
}

menuentry "Run Ubuntu Minimal CD AMD64 10.04" {
set isofile="/mini64.iso"
loopback loop $isofile
linux (loop)/linux boot=/ iso-scan/filename=$isofile splash --
initrd (loop)/initrd.gz
}

menuentry "Run Ubuntu Live 9.10" {
set isofile="/ubuntu-9.10-desktop-i386.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile splash --
initrd (loop)/casper/initrd.lz
}

menuentry "Run Ubuntu Alternate CD 9.10 - AMD64" {
set isofile="/ubuntu-9.10-alternate-amd64.iso"
loopback loop $isofile
linux (loop)/install/vmlinuz boot=install iso-scan/filename=$isofile splash --
initrd (loop)/install/initrd.gz
}

menuentry "SystemRescue-ISO 32 bits" {
set isofile="/systemrescuecd-x86-1.5.7.iso"
loopback loop $isofile
linux (loop)/isolinux/rescuecd isoloop=$isofile
initrd (loop)/isolinux/initram.igz setkmap=es
}

menuentry "SystemRescue-ISO 64 bits" {
set isofile="/systemrescuecd-x86-1.5.7.iso"
loopback loop $isofile
linux (loop)/isolinux/rescue64 isoloop=$isofile
initrd (loop)/isolinux/initram.igz setkmap=es
}

menuentry "Memory test (memtest86+)" {
linux16 /boot/iso/memtest86+.bin
}

menuentry "Memory test (memtest86+, serial console 115200)" {
linux16 /boot/iso/memtest86+.bin console=ttyS0,115200n8
}

menuentry "Display known devices and partitions" {
ls
}

menuentry "Reboot" {
reboot
}

Referències:
The Grub 2 Guide
PendriveLinux

1 comentari: