IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Paquets

$ sudo apt-get install syslinux        <-- Tabuleu dos cops
syslinux                        syslinux-themes-debian          syslinux-themes-debian-squeeze  syslinux-themes-ubuntu-oneiric  
syslinux-common                 syslinux-themes-debian-lenny    syslinux-themes-ubuntu

Instal·lació

$ sudo apt-get install syslinux 

Fitxers instal·lats:

$ dpkg -L syslinux 
/.
/usr
/usr/bin
/usr/bin/gethostip
/usr/bin/lss16toppm
/usr/bin/mkdiskimage
/usr/bin/ppmtolss16
/usr/bin/syslinux
/usr/bin/extlinux
/usr/bin/syslinux2ansi
/usr/lib
/usr/lib/syslinux
/usr/lib/syslinux/img1200k.gz
/usr/lib/syslinux/img1440k.gz
/usr/lib/syslinux/img1743k.gz
/usr/lib/syslinux/img720k.gz
/usr/lib/syslinux/copybs.com
/usr/lib/syslinux/isolinux.bin
/usr/lib/syslinux/isolinux-debug.bin
/usr/lib/syslinux/ldlinux.bss
/usr/lib/syslinux/ldlinux.sys
/usr/lib/syslinux/pxelinux.0
/usr/lib/syslinux/chain.c32
/usr/lib/syslinux/cpuidtest.c32
/usr/lib/syslinux/dmitest.c32
/usr/lib/syslinux/elf.c32
/usr/lib/syslinux/ethersel.c32
/usr/lib/syslinux/linux.c32
/usr/lib/syslinux/mboot.c32
/usr/lib/syslinux/meminfo.c32
/usr/lib/syslinux/pcitest.c32
/usr/lib/syslinux/pmload.c32
/usr/lib/syslinux/reboot.c32
/usr/lib/syslinux/sdi.c32
/usr/lib/syslinux/menu.c32
/usr/lib/syslinux/vesamenu.c32
/usr/lib/syslinux/syslinux.com
/usr/lib/syslinux/mbr.bin
/usr/lib/syslinux/memdisk
/usr/share
/usr/share/doc
/usr/share/doc/syslinux
/usr/share/doc/syslinux/changelog.gz
/usr/share/doc/syslinux/comboot.txt.gz
/usr/share/doc/syslinux/BUGS
/usr/share/doc/syslinux/README
/usr/share/doc/syslinux/README.gfxboot
/usr/share/doc/syslinux/TODO
/usr/share/doc/syslinux/menu.txt.gz
/usr/share/doc/syslinux/distrib.txt
/usr/share/doc/syslinux/memdisk.txt.gz
/usr/share/doc/syslinux/keytab-lilo.txt
/usr/share/doc/syslinux/mboot.txt
/usr/share/doc/syslinux/pxelinux.txt.gz
/usr/share/doc/syslinux/SubmittingPatches.txt.gz
/usr/share/doc/syslinux/syslinux.txt.gz
/usr/share/doc/syslinux/usbkey.txt
/usr/share/doc/syslinux/copyright
/usr/share/doc/syslinux/changelog.Debian.gz
/usr/share/doc/syslinux/extlinux.txt.gz
/usr/share/doc/syslinux/isolinux.txt.gz
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/ppmtolss16.1.gz
/usr/share/man/man1/syslinux.1.gz
/usr/share/man/man1/syslinux2ansi.1.gz
/usr/share/man/man1/gethostip.1.gz
/usr/share/man/man1/lss16toppm.1.gz

Documentació:

$ dpkg -L syslinux | grep doc
/usr/share/doc
/usr/share/doc/syslinux
/usr/share/doc/syslinux/changelog.gz
/usr/share/doc/syslinux/comboot.txt.gz
/usr/share/doc/syslinux/BUGS
/usr/share/doc/syslinux/README
/usr/share/doc/syslinux/README.gfxboot
/usr/share/doc/syslinux/TODO
/usr/share/doc/syslinux/menu.txt.gz
/usr/share/doc/syslinux/distrib.txt
/usr/share/doc/syslinux/memdisk.txt.gz
/usr/share/doc/syslinux/keytab-lilo.txt
/usr/share/doc/syslinux/mboot.txt
/usr/share/doc/syslinux/pxelinux.txt.gz
/usr/share/doc/syslinux/SubmittingPatches.txt.gz
/usr/share/doc/syslinux/syslinux.txt.gz
/usr/share/doc/syslinux/usbkey.txt
/usr/share/doc/syslinux/copyright
/usr/share/doc/syslinux/changelog.Debian.gz
/usr/share/doc/syslinux/extlinux.txt.gz
/usr/share/doc/syslinux/isolinux.txt.gz

Obtenir la ultima versió d'Internet

Es troba a kernel.org:

http://www.kernel.org/pub/linux/utils/boot/syslinux/

La podeu descarregat amb wget:

$ wget http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.80.tar.gz

I la descomprimiu amb tar:

$ tar xvzf syslinux-3.80.tar.gz

Documentació

Un cop instal·lat syslinux teniu un fitxer:

/usr/share/doc/syslinux/syslinux.txt.gz

On hi ha la documentació de syslinux. Per descomprimir-lo:

$ sudo gunzip /usr/share/doc/syslinux/syslinux.txt.gz

Ara ja podeu llegir la documentació amb.

$ joe /usr/share/doc/syslinux/syslinux.txt

Consulteu també la wiki de syslinux:

http://syslinux.zytor.com/wiki/index.php/SYSLINUX

Components

Té diversos components:

ISOLINUX

SYSLINUX (o extlinux des de la versió 4 de syslinux) és una col·lecció de boot loaders capaços d'arrancar el sistema des de múltiples tipus de dispositius com discs durs, CDs, o xarxa (PXE). Suporta els sistemes de fitxers FAT, i tots els de la família EXT com ext3 o ext4.

Isolinux és la part encarregada de crear un gestor d'arrancada per a CDs. L'arrancada des de CD ve determinada per l'estandard El Torito i suporta dos tipus d'arrancada:

TODO traduir:
  • Modo de emulación floppy: donde la información del arranque es almacenada en un archivo de imagen de un disco flexible, que es cargado desde el CD, para luego comportarse como un disco virtual flexible. Este archivo de imagen es efectivamente un sistema de archivos FAT, por lo que SYSLINUX es el cargador de arranque necesario.
  • Modo sin emulación: donde la información de arranque es almacenada directamente en el CD. En este modo se necesita ISOLINUX.

Recursos:

Com funciona isolinux

El CD té que contenir les eines i la configuració d'isolinux. Normalment aquests fitxers es col·loquen a la carpeta isolinux de l'arrel del CD i aquí trobareu com a mínim:

IMPORTANT: Lives CDs com els d'Ubuntu tenen una configuració complexa de isolinux que es separa en múltiples fitxers. El fitxer de configuració del menú principal és el isolinux/txt.cfg

El format del fitxer isolinux.cfg el podeu trobar a:

http://syslinux.zytor.com/faq.php#config

Recursos:

Exemples

Accedir al prompt de isolinux

Per defecte les ISOS de Ubuntu tenen l'opció:

isolinux$ cat isolinux.cfg 
# D-I config version 2.0
include menu.cfg
default vesamenu.c32
prompt 0
timeout 0
ui gfxboot bootlogo

Amb prompt 0 el prompt només es mostra si premeu la tecla SHIFT o ALT durant l'arrancada del cd. Us apareixerà:

Prompisolinux.png

Aquí podeu escollir que executeu, per exemple si poseu:

> vesamenu

Us apareixerà:

Vesamenu.png

El logo que apareix és la imatge splash.png de la carpeta isolinux.

En canvi si poseu:

> gfxboot bootlogo

Us apareixerà el menú "normal" que apareix al intentar instal·lar una Ubuntu:

Gfxboot.png

bootlogo és el fitxer que hi ha l'arrel de la carpeta isolinux (és un fitxer empaquetat amb un fitxer binari dins anomenat init). Aquí el logo que apareix és la imatge splash.pcx de la carpeta isolinux.

Així doncs sembla ser que tot i que s'indica que:

$ cat isolinux.cfg 
# D-I config version 2.0
include menu.cfg
default vesamenu.c32
prompt 0
timeout 0
ui gfxboot bootlogo

Per defecte s'utilitzarà vesamenu.c32 però en realitat s'executa de forma implícita gfxboot bootlogo. Els executables semblen ser:

isolinux$ ls | grep c32
chain.c32
gfxboot.c32
vesamenu.c32

També podeu executar directament qualsevol entrada del menú indicant el seu label:

> install

O si heu posat una entrada a mida (a l'exemple custominstall1)

> custominstall1

Conèixer la versió de isolinux

Accediu al prompt i allà la podreu consultar.


Crear un cd executable amb isolinux. Exemple senzill

El següent fitxer isolinux.cfg:

default sbm-usuario

timeout 300
prompt 1
kbdmap spanish.kbd
display isolinux.msg
f1 isolinux.msg
f2 f2.msg
f3 f3.msg 
 
label sbm-usuario 
	kernel vmlinuz.usuario
	append lang=es init=/linuxrc apm=power-off hda=scsi hdb=scsi \
               hdc=scsi hdd=scsi hde=scsi hdf=scsi hdg=scsi hdh=scsi \
               vga=785 initrd=initrd.gz quiet nomce
label sbm-servidor
	kernel vmlinuz.servidor
	append lang=es init=/linuxrc verbose apm=power-off hda=scsi \
               hdb=scsi hdc=scsi hdd=scsi hde=scsi hdf=scsi hdg=scsi \
               hdh=scsi vga=normal initrd=initrd.gz quiet nomce
label memtest
	kernel memtest

On:

TODO:

  • “default”: opciones por defecto para el arranque por defecto, si no se pasa ningún parámetro en el arranque, se aplicarán las opciones aquí listadas.
  • “timeout”: tiempo de espera antes de comenzar el arranque desde el CD (en unidades de 1/10 s).
  • “prompt”: si el valor está a 1, el arranque mostrará un prompt (boot: ). Si el valor está a 0, el arranque sólo mostrará el prompt si se pulsan las teclas Alt o Shift.
  • “kbdmap”: carga el mapa de teclado indicado.
  • “display”: muestra el archivo indicado antes del prompt.
  • "f1, f2 y f3”: muestra los archivos indicados al pulsar las teclas de función en el prompt.
  • “label”: etiqueta que identifica una determinada imagen y sus opciones asociadas (sobreescribirán la opciones por defecto).
  • “kernel”: imagen a utilizar para el arranque.
  • “append”: opciones pasadas a la imagen definida en la etiqueta de la que cuelga.

Exemple configuració isolinux. Ubuntu Server

Un exemple de fitxer de configuració isolinux.cfg pot ser el del propi CD d'instal·lació d'ubuntu server (natty):

$ cat isolinux.cfg
# D-I config version 2.0
include menu.cfg
default vesamenu.c32
prompt 0
timeout 0
ui gfxboot bootlogo

Com podeu veure la majoria de continguts del fitxer estan al fitxer inclòs menu.cfg:

menu hshift 13
menu width 49
menu margin 8 

menu title Installer boot menu
include stdmenu.cfg
include txt.cfg
include gtk.cfg
menu begin advanced
 	menu title Advanced options 
	include stdmenu.cfg
	label mainmenu
		menu label ^Back..
		menu exit
	include adtxt.cfg
	include adgtk.cfg
menu end
label help
	menu label ^Help
	text help
   Display help screens; type 'menu' at boot prompt to return to this menu
	endtext
	config prompt.cfg

La resta d'opcions:

  • default vesamenu.c32: indica l'opció de menú per defecte
  • prompt 0:
  • timeout 0: no hi ha timeout
  • ui gfxboot bootlogo:

Isolinux i casper. Ubuntu Desktop

Als Live CD de las versión Desktop d'Ubuntu podeu trobar exemples de com s'utilitza casper per arrancar el sistema des isolinux. Consulteu:

LIVE_CD#Isolinux_i_casper

Com modificar isolinux per tal de utilitzar un fitxer preseed propi

Consulteu Preseed#Com_crear_un_CD_d.27instal.C2.B7laci.C3.B3_amb_un_preseeding_propi

Menú d'idiomes

El fitxer:

isolinux/langlist

Conté la llista d'idiomes que apareixen al menú d'idiomes (F2). Per escollir un idioma per defecte cal crear el fitxer:

isolinux/lang

I posar el codi d'un idioma, per exemple:

$ cat isolinux/lang
ca

NOTA: No se com fer que no aparegui la llista d'idiomes per defecte al entrar a no ser que ja escolleixi un per defecte

Gfxboot

http://en.opensuse.org/SDB:Gfxboot

NOTA: gfxboot pot ser utilitzat tant a Grub, com a LILO com a ISOLINUX

És una eina per crear i provar graphical boot logos.

La instal·lació la podeu fer amb:

$ sudo apt-get install gfxboot

Els fitxers instal·lat són:

$ dpkg -L gfxboot 
/.
/usr
/usr/share
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/gfxboot.1.gz
/usr/share/doc
/usr/share/doc/gfxboot
/usr/share/doc/gfxboot/copyright
/usr/share/doc/gfxboot/changelog.gz
/usr/share/doc/gfxboot/changelog.Debian.gz
/usr/bin
/usr/bin/gfxboot
$ dpkg -l gfxboot
Desitjat=desconegUt/Instal·la/supRimeix/Purga/retín(H)
| Estat=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Estat,Err: majúsc.=dolent)
||/ Nom                               Versió                           Descripció

+++-=================================-=================================-================================================================================ ==

ii  gfxboot                           4.2.2-1                           tool to test and create graphical boot logos (runtime)

NOTA: Per a Grub el fitxer sol ser /boot/message

Normalment aquest fitxer és un fitxer empaquetat amb cpio. Podeu veure els seus continguts amb:

$ cpio -tv < bootlogo
-rw-rw-r--   1 2001     2501       107091 Oct  5 18:56 init

Com podeu veure conté un fitxer anomenat init. Es pot desempaquetar amb:

$ cpio -i < bootlogo
210 blocks

Ara teniu un fitxer init a la carpeta:

$ ls
bootlogo  init

Per tornar a empaquetar:

$ find . | cpio -o > /bootlogo

També podeu utilitzar l'eina gfxboot

Mostrar els continguts del fitxer:

   * list gfxboot archive (default is /boot/message): 
$ gfxboot --ls -a bootlogo 
-rw-rw-r-- 1 sergi sergi 107091 2011-10-05 18:56 init

Afegir o reemplaçar fitxers (per exemple una imatge de fons):

$ gfxboot --add-files back.jpg -a bootlogo
$ gfxboot --ls -a bootlogo 
-r--r--r-- 1 sergi sergi   7500 2011-11-06 19:28 back.jpg
-rw-rw-r-- 1 sergi sergi 107091 2011-10-05 18:56 init

Altres exemples:

Veure un fitxer:

$ gfxboot --show-file gfxboot.cfg

o

$ gfxboot --show-config

Més ordres a l'ajuda:

$ gfxboot --help

Execució a Grub

Add a line like

gfxmenu (hd0,1)/boot/message

al fitxer /boot/grub/menu.lst (Grub 1). El fitxer message és similar al bootlogo a isolinux.

Temes

$ sudo apt-get install gfxboot       --> Tabuleu dos cops
gfxboot                  gfxboot-examples         gfxboot-themes-sled      gfxboot-themes-upstream  
gfxboot-dev              gfxboot-themes-opensuse  gfxboot-themes-sles      gfxboot-theme-ubuntu

Resol·lució de problemes. Troubleshooting

Entrades del menú per defecte

El següent és el comportament que he observat amb les opcions default:

  • Compte que poden haver-hi diversos default i per exemple el default que escolleig el tipus de UI (gfxeboot o vesamenu) pot aplicar-se en comtpes del default del menu.
  • Els menús de tipus gfxeboot (els que utilitza ubuntu per defecte) no fan cas de l'opció default i no et marquen per defecte una entrada de menu correcta. Si ho fa el vesamenu tot i que el problema és aleshores que el timeout ja s'ha aplicat per al promp

PXE Linux

Consulteu:

Arrancada_de_xarxa#PXE_Linux

Vegeu també

Enllaços externs