albjes escribió:Pues no se entonces que le puede pasar al mio. Necesariamente la carpeta donde deben de estar metidos los archivos se tiene que llamar "UBUNTU"???. Porque es lo único por lo que podria fallarme.
No, hombre, no soy tan chapucero; se puede llamar como quieras: el casper parcheado comprueba cuál es el valor del parámetro "initrd" que se le pasa al kernel y en función de ese valor adivina en qué directorio metiste ubuntu. Por ejemplo, si metiste ubuntu en la carpetas "AQUI" entonces en el arranque se le pasó al núcleo el parámetro initrd=/AQUI/casper/initrd.gz, así que el script sabe que ubuntu está dentro de "AQUI".
albjes escribió:El tema del desplazamiento de lineas ese que comentas no tendra nada que ver no?.
No, no tiene nada que ver. Eso de que las líneas estén desplazadas es sencillo de entender. Los parches básicamente son ficheros que dicen: desde la línea X hasta la línea Y, ponía esto y ahora tiene que poner esto otro. Y así tantas veces como cambios haya. Sin embargo, supón que se saca una nueva versión del fichero original que consiste simplemente en que se ha añadido una línera de comentario al principio del código. Entonces el parcheo no es entre X e Y sino entre X+1 e Y+1. patch es una herramienta muy lista y a pesar de que las líneas "se hayan desplazado", las encuentra y aplica el parche. Por supuesto, puede ocurrir que los cambios hayan sido tan profundos que el parche ya no sirva, y esa era mi preocupación, pero no parece ser el caso.
Lo único que se me ocurre es que te diga por encima lo que he hecho paso a paso. Mira a ver qué es lo que no haces, porque funcionar, funciona:
1) Monto la imagen iso:
$ /sbin/losetup /dev/loop0 /donde/esta/ubuntu-no-sé.qué.iso
$ mount /mnt/loop
2) Creo los directorio necesarios y copio el contenido del cedé:
$ mkdir -p multidvd/UBUNTU
$ (cd /mnt/loop ; tar cf - .) | ( cd multidvd/UBUNTU ; tar xvf -)
$ chmod u+w -R multidvd/UBUNTU
$ umount /mnt/loop
$ /sbin/losetup -d /dev/loop0
3) Parcheo casper:
$ cd /tmp
$ mkdir ff
$ cd ff
$ gunzip < /path/multidvd/UBUNTU/casper/initrd.gz | cpio -i
$ patch -p0 < /donde/este/el/parche/casper.patch
*** Aquí tienen que aparecer algunos warning de que las líneas no se corresponden con las que pone el parche, pero no importa ***
$ find | cpio -o -H newc | gzip -9 > /path/multidvd/UBUNTU/casper/initrd.gz
4) Alteras los .cfg que vienen en el arranque con isolinux de ubuntu (esto supongo que sabes hacerlo)
5) Te haces tu arranque del dvd con lo que estés usando grub2dos, isolinux o lo que sea para que arranque el isolinux de ubuntu.
Y listo, haces el cedé y ya está. Creo que no me he dejado nada.