|
|
(5 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
− | == Traducciones: ==
| + | The previous translation of this HowTo has become obsolete. |
− | * Versión en inglés: [[Knoppix Remastering Howto]]
| + | |
− | * Versión en alemán: [[Knoppix Remastering Howto Deutsch]]
| + | |
− | ----== Vea también : ==
| + | |
− | * Si desea crear un kernel personalizado, compruebe [[Knoppix Custom Kernel Howto]]
| + | |
− | * También hay una guía sobre el mismo asunto en O'Reilly: [http://linux.oreillynet.com/lpt/a/4323 Using and Customizing Knoppix]
| + | |
− | ----
| + | |
− | === Esta guía le mostrará cómo remasterizar KNOPPIX ===
| + | |
− | (Notas : las órdenes deberían aparecer en una sola línea, por favor maximice su ventana del navegador. Si tiene cualquier comentario o sugerencia, por favor envíe el formulario que hay al final.)
| + | |
| | | |
− | Puede que desee personalizar un Knoppix ya adaptado, de forma que no tenga que hacer tanto esfuerzo (tal como eliminar programas). Si es así, vea [[Knoppix Customizations]].
| + | Perhaps someone likes to translate the new version of the [[Knoppix_Remastering_Howto]]. |
− | | + | |
− | ==== Requisitos del sistema: ====
| + | |
− | *CD-ISO
| + | |
− | ** por lo menos 1 GB de memoria libre total FREE RAM+Swap (ej. 256M ram, y 750M swap DISPONIBLE) (a menos que use un programa de compresión diferente - busque compressloop en esta página)
| + | |
− | ** 3 GB libres en una partición de disco formateada con '''sistema de ficheros Linux (ext2/3, xfs, etc.)'''
| + | |
− | *DVD-ISO
| + | |
− | ** 5 GB libres de RAM + swap (para un DVD de tamaño completo)
| + | |
− | ** 15 GB libres en una partición de disco formateada con '''sistema de ficheros Linux (ext2/3, xfs, etc.)'''
| + | |
− | | + | |
− | | + | |
− | ==== Instrucciones: ====
| + | |
− | | + | |
− | # Arranque desde el ''CD de Knoppix''
| + | |
− | # Abra una consola de root:
| + | |
− | ** Menú: Kmenu->Knoppix->Consola de Root
| + | |
− | ** Nota: Todas las órdenes a continuación son ejecutadas desde la consola de root.
| + | |
− | # Configure su conexión a Internet (lo necesitará más adelante). Si usa DHCP, ya debería estar configurada.
| + | |
− | ** Nota: Ejecute '''ifconfig''' para comprobarlo.
| + | |
− | # Busque la partición en la que va a trabajar. En este ejemplo será '''hda1''' . La partición debería tener al menos 3 GB libres
| + | |
− | # Monte la partición:
| + | |
− | ** '''mount -rw /dev/hda1 /mnt/hda1'''
| + | |
− | ** Nota: Asegurese que es de lectura/escritura u obtendrá errores más adelante cuando cambie la raíz del sistema. Para comprobarlo, teclee '''mount'''
| + | |
− | # Cree un directorio raíz donde trabajar:
| + | |
− | ** '''mkdir /mnt/hda1/knx'''
| + | |
− | ** Si coloca todos sus ficheros aquí, será fácil borrarlos todos después
| + | |
− | # Si no tiene 1 GB de RAM ('''cat /proc/meminfo''' (physical+swap)) entonces necesitará un fichero de intercambio (swap):
| + | |
− | ** '''cd /mnt/hda1/knx ; dd if=/dev/zero of=swapfile bs=1M count=750 ; mkswap swapfile ; swapon swapfile'''
| + | |
− | # Cree 2 directorios, uno para su nuevo CD maestro, y otro para los fuentes, en una partición del disco. También, cree directorios adicionales en ellos llamados KNOPPIX:
| + | |
− | ** '''mkdir -p /mnt/hda1/knx/master/KNOPPIX'''
| + | |
− | ** '''mkdir -p /mnt/hda1/knx/source/KNOPPIX'''
| + | |
− | # Ahora copie los ficheros de KNOPPIX a su directorio fuente:
| + | |
− | '''* '''cp -Rp /KNOPPIX/''' /mnt/hda1/knx/source/KNOPPIX &'''
| + | |
− | ** Nota: Esto tardará unos minutos
| + | |
− | # Copie la página HTML principal de inicio:
| + | |
− | ** '''cp /cdrom/index.html /mnt/hda1/knx/master/ '''
| + | |
− | # Copie todos los ficheros necesarios excepto el fichero KNOPPIX, de unos 700 Mb.
| + | |
− | ** < 3.4: '''cd /cdrom/KNOPPIX;find . -size -10000k -type f -exec cp -p --parents {} /mnt/hda1/knx/master/KNOPPIX/ \;'''
| + | |
− | ** 3.4: '''cd /cdrom;find . -size -10000k -type f -exec cp -p --parents {} /mnt/hda1/knx/master/ \;'''
| + | |
− | # Ahora puede cambiar la raíz del sistema "chroot" al KNOPPIX copiado en su partición:
| + | |
− | ** '''chroot /mnt/hda1/knx/source/KNOPPIX'''
| + | |
− | | + | |
− | Si obtiene un montón de mensajes de error '''/dev/null permission denied''', debería hacer los siguiente. Esto puede pasar si guarda sus datos de configuración de Knoppix en la misma partición que esté usando para la remasterización, Y arranca Knoppix con '''knoppix home=scan'''.
| + | |
− | | + | |
− | Compruebe el estado de montado si obtuvo el problema: '''mount /dev/hdaX on /mnt/hdaX type ext3 (rw,nosuid,nodev)''' (reemplace la X con su número de partición ) donde "nodev" significa que no puede acceder al sistema de ficheros montado y que no puede acceder a /dev/null. Y algunos scripts redirigen la salida a /dev/null... Para solventar esto debería montar la partición de destino antes de cambiar la raíz del sistema (chroot) de esta forma:
| + | |
− | ^d # control+d saldrá del entorno chroot
| + | |
− | mount /dev/hda1 /mnt/hda1
| + | |
− | Entonces debería obtener:
| + | |
− | mount /dev/hda1 on /mnt/hda1 type ext3 (rw)
| + | |
− | | + | |
− | Si persisten los avisos de /dev/null entonces, antes de hacer chroot, haga:
| + | |
− | mount --bind /dev /mnt/hda1/knx/source/KNOPPIX/dev
| + | |
− | �Tiene que desmontar umount /mnt/hda1/knx/source/KNOPPIX/dev antes de construir la imagen del CD o el directorio /dev del CD se hará un lio!
| + | |
− | | + | |
− | entonces puede seguir y hacer el chroot.
| + | |
− | | + | |
− | * Ahora ha cambiado su direcotio raíz. "/" es en estos en realidad "/mnt/hda1/knx/source/KNOPPIX"
| + | |
− | * Para acceder a Internet necesitará montar proc '''mount -t proc /proc proc'''
| + | |
− | * Ahora edite /etc/resolv.conf y añada su servidor de nombres o "salga" del chroot y copie su fichero resolve.conf en el directorio fuente correspondiente: '''cp /etc/dhcpc/resolv.conf /mnt/hda1/knx/source/KNOPPIX/etc/dhcpc/resolv.conf'''
| + | |
− | * Cambie también su grupo MS en smb.conf si desea soporte smbd (MSHOME es normalmente Home en XP y WORKGROUP en Windows 9x .
| + | |
− | * Compruebe su conexión a Internet desde la nueva raíz : '''ping google.com'''
| + | |
− | * Actualice su lista de paquetes con '''apt-get update'''
| + | |
− | * Ahora puede realizar cambios.
| + | |
− | * '''Aviso''': apt-get upgrade es una MALA IDEA. Muy probablemente, hará que su remasterización de KNOPPIX no sea arrancable o se corrompa en alguna forma. Un método más seguro consiste en actualizar sólo los paquetes necesarios
| + | |
− | ** Antes de poder añadir programas, probablemente tendrá que eliminar algunos paquetes. Para obtener una lista de los paquetes instalados, teclee esto:
| + | |
− | '''*''' '''dpkg-query -l'''
| + | |
− | ** Si quiere tener esa lista ordenada por tamaño (de esta forma podrá eliminar los que más ocupan), teclee esto:
| + | |
− | '''*''' '''dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -n'''
| + | |
− | ** Para eliminar un paquete (y todos los paquetes que dependen de él), teclee esto:
| + | |
− | '''*''' '''apt-get remove <nombre-del-paquete-a-eliminar>'''
| + | |
− | ** Para comprobar paquetes huérfanos, teclee esto:
| + | |
− | '''*''' '''deborphan'''
| + | |
− | ** Si desea ahorrar más espacio eliminando esos molestos huérfanos(¡Qué cruel!), teclee esto ('''Aviso''', no se le preguntará sí/no para eliminar estos paquetes. Cuando pulse Intro después de esta orden, los paquetes '''habrán desaparecido'''):
| + | |
− | '''*''' '''deborphan | xargs apt-get -y remove'''
| + | |
− | ** Si no está seguro acerca del comando anterior y quiere ver que pasará sin hacer ningún cambio, simplemente añada la opción '''-s''' a la orden apt-get de esta forma (puede hacer esto con todas las órdenes apt-get, y es un buen hábito usar esta opción antes de operaciones masivas como esta):
| + | |
− | '''*''' '''deborphan | xargs apt-get -s -y remove'''
| + | |
− | ** Ahora las buenas obras. Si desea añadir un paquete, teclee esto:
| + | |
− | '''*''' '''apt-get install <nombre-del-paquete-a-instalar>'''
| + | |
− | ** ¿No sabe que paquetes instalar? Teclee esto. Cuando aparezca la lista, puede examinarla (¡unas 13000 líneas!) o buscar cosas usando '''/<search-term>''':
| + | |
− | '''*''' '''apt-cache search .* | sort | less'''
| + | |
− | ** Cuando haya terminado de eliminar y añadir paquetes, una buena forma de hacer limpieza es tecleando los siguiente:
| + | |
− | '''*''' '''COLUMNS=200 dpkg -l |grep ^rc |awk '{print $2} ' | xargs dpkg -P'''
| + | |
− | ** También, como el sistema de paquetes Debian guarda en caché los paquetes descargados, querrá ejecutar lo siguiente para eliminar esos ficheros inútiles:
| + | |
− | '''*''' '''apt-get clean'''
| + | |
− | ** las configuraciones de usuario están en /etc/skel
| + | |
− | ** consejo: no cloque ficheros en /root sólo estarán disponibles en tiempo de ejecucuón en /KNOPPIX/root
| + | |
− | * Desmonte /proc - ¡muy importante! '''umount /proc'''
| + | |
− | * Pulse '''CTRL+D''' para volve a la raíz original (no chrooted).
| + | |
− | | + | |
− | ==== Notas : ====
| + | |
− | | + | |
− | Cuando compruebe programas gráficos basados en X, tendrá que hacer '''export DISPLAY=localhost:0.0'''
| + | |
− | | + | |
− | Cuando quiera autoejecutar algunos programas, puede crear un script y ponerlo en el directorio /etc/rc5.d/ (Esto sólo carga elementos antes de cargar las X)
| + | |
− | | + | |
− | hay material interesante en /etc/init.d/knoppix-autoconfig :
| + | |
− | | + | |
− | * El fichero de fondo X background está en /cdrom/KNOPPIX/background.gif '''(en knoppix 3.4: background.jpg)'''
| + | |
− | * Al igual que con floppyconfig, está cdromconfig que ejecutará cdrom/KNOPPIX/knoppix.sh
| + | |
− | | + | |
− | hay material interesante en /etc/init.d/xsession :
| + | |
− | * TAMBIÉN establece el fondo /usr/local/lib/knoppix.gif
| + | |
− | | + | |
− | Ahora la creación del fichero ISO :
| + | |
− | | + | |
− | * ya hemos terminado de personalizarlo y ¡queremos quemar!
| + | |
− | * primero haga algo de limpieza : ''' elimine los ficheros .bash_history, ficheros temporales etc '''
| + | |
− | * '''rm -rf /mnt/hda1/knx/source/KNOPPIX/.rr_moved'''
| + | |
− | * Ahora crearemos el fichero enorme que es un sistema de ficheros ISO 9660 cloop comprimido : '''mkisofs -R -U -V "KNOPPIX.net filesystem" -publisher "KNOPPIX www.knoppix-es.org" -hide-rr-moved -cache-inodes -no-bak -pad /mnt/hda1/knx/source/KNOPPIX | nice -5 /usr/bin/create_compressed_fs - 65536 > /mnt/hda1/knx/master/KNOPPIX/KNOPPIX'''
| + | |
− | | + | |
− | el "www.knoppix-es.org" y "Knoppix.net filesystem" pueden ser modificados a lo que quiera que nombre el fichero. Obtendrá un error diciendo que no cumple los estándars ISO, puede ignorarlo.
| + | |
− | | + | |
− | En Knoppix 3.4 el scrip create_compressed_fs ha sido actualizado así que asegúrese de usarlo para obtener los mejores resultados.
| + | |
− | Tiene una nueva opción '''-b''' (best), que activa la mejor compresión usando diferentes esquemas de compresión e intenta optimizarlo de esa forma, pero sea cauto, porque esa opción es ralentiza (10 veces más lento).
| + | |
− | | + | |
− | * si todo fue bien, para crear la imagen del CD-ROM final :
| + | |
− | * '''cd /mnt/hda1/knx/master'''
| + | |
− | * '''rm -f KNOPPIX/md5sums; find -type f -not -name md5sums -not -name boot.cat -not -name isolinux.bin -exec md5sum {} \; >> KNOPPIX/md5sums''' (esto actualizará las sumas de verificación md5 de los ficheros incluidos, se usa para comprobar la integridad)
| + | |
− | * para Knoppix <= 3.3: '''mkisofs -pad -l -r -J -v -V "KNOPPIX" -b KNOPPIX/boot.img -c KNOPPIX/boot.cat -hide-rr-moved -o /mnt/hda1/knx/knoppix.iso /mnt/hda1/knx/master''' (la ISO se guardará en /mnt/hda1/knx/knoppix.iso)
| + | |
− | * Para Knoppix >= 3.4 u otras distribuciones basadas en isolinux haga:
| + | |
− | '''mkisofs -pad -l -r -J -v -V "KNOPPIX" -no-emul-boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -hide-rr-moved -o /mnt/hda1/knx/knoppix.iso /mnt/hda1/knx/master''' (la ISO se guardará en /mnt/hda1/knx/knoppix.iso)
| + | |
− | * ¡y eso es todo!
| + | |
− | | + | |
− | === Trucos/consejos ===
| + | |
− | Si está buscando paquetes grandes instalados teclee
| + | |
− | : dpkg-awk "Status: .* installed$" -- Package Installed-Size | \
| + | |
− | : awk '{print $2}' | egrep -v '^$' | xargs -n2 echo | \
| + | |
− | : perl -pe 's/(\S+)\s(\S+)/$2 $1/' | sort -rg
| + | |
− | listará los paquetes en orden de tamaño descendente.
| + | |
− | Por lo menos diez veces más rápido es el comando
| + | |
− | | + | |
− | : dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -n
| + | |
− | | + | |
− | y no necesita dpkg-awk o awk o perl.
| + | |
− | | + | |
− | Si tiene algún problema con el comando de ordenación anterior, pruebe a usar KPackage, expanda todas las ramas y ordene por la columna de tamaño para encontrar los paquetes mayores.
| + | |
− | | + | |
− | Compruebe la salida del programa "deborphan", listará los paquetes huérfanos que pueden ser eliminados, estos paquetes eran usados por otros paquetes que ahora han sido borrados.
| + | |
− | | + | |
− | Yo he obtenido buenos resultados remasterizando trabajando desde el cd como root y desde fluxbox. Sólo teclee "knoppix 2" en el prompt de arranque y arrancará en una consola de texto como root, donde puede teclear "startx /usr/bin/fluxbox". Me gusta usar la consola unicode xterm.
| + | |
− | | + | |
− | Mientras trabajo desde chroot creando la remasterización me gusta usar "apt-get remove --purge pkg-name" para eliminar paquetes porque antes de hacer nada se detendrá y mostrará los detalles de lo que va a ajustar para eliminar y le permitirá decir "sí o no".
| + | |
− | | + | |
− | Si no usa la instrucción "apt-get" y tiene que limpiar y purgar mucho, aquí tiene la forma de hacerlo: "COLUMNS=200 dpkg -l |grep ^rc |awk '{print $2} ' >topurge". Lo que creará una lista de los paquetes eliminados a purgar y entonces puede hacer "dpkg -P `cat topurge `" y ya está. "COLUMNS=200 dpkg -l |grep ^rc |awk '{print $2} ' | xargs dpkg -P" es la versión en una sola línea de esto.
| + | |
− | Use también "deborphan >orphaned" y luego "dpkg -P `cat orphaned `". "deborphan | xargs dpkg -P " es una versión en una sola línea para lo miso.
| + | |
− | | + | |
− | | + | |
− | Eso es todo. Esta es una versión actualizada de mi howto pevio. No es para novatos en Linux, necesitará buscarse la vida para hacerlo trabajar. Actualizará esto con correcciones/mejoras/etc a medida que las tenga.
| + | |
− | | + | |
− | Gracias a aay, charan, Tech2k, y #knoppix por algunas correcciones, trucos e ideas. Es libre de editar o añadir a este howto.
| + | |
− | Nota cerca de swap:<br>
| + | |
− | No necesita realmente 1G de swap ya que hay dos nuevas herramientaspara crear sistemas de ficheros comprimidos. Aquí hay algunos candidatos para crear sistemas de ficheros ''comprimidos'':
| + | |
− | * Valentijn's rewrite [http://projects.openoffice.nl/downloads/compressloop/]
| + | |
− | * Quozl's port of compressloop for Knoppix 3.4 [http://quozl.linux.org.au/compressloop-1.9-64bit.c]
| + | |
− | * Quozl's distributed compressloop (use more than one processor to speed things up) [http://quozl.linux.org.au/knoppix/compressloop/] or [http://quozl.netrek.org/knoppix/compressloop/]
| + | |
− | * Justin's patch [http://s.bouncybouncy.net/~justin/code/] (link broken) I also just wrote a distributed cloop compressor(or for smp) It's in that same directory.
| + | |
− | | + | |
− | ==== Truco, compruebe la imagen del cd sin grabarla en un cd ====
| + | |
− | | + | |
− | Si tiene una partición de sobra con al menos 700MB de espacio libre formateada con ext2, ext3 o Vfat, puede usarla para comprobaciones arrancando desde un disquete. Un disquete de arranque buscará una partición con el directorio /KNOPPIX/ en la raíz, y la imagen comprimida /KNOPPIX/KNOPPIX. En lugar de usar el subdirectorio /mnt/hda1/knx/master/KNOPPIX/ como se describia anteriormente, se debería llamar /mnt/hda2/KNOPPIX/ . Entonces el index.html estaría en /mnt/hda2/index.html y la imagen comprimida estaría en /mnt/hda2/KNOPPIX/KNOPPIX . Ahora puede arrancar desde un disquete y usar /mnt/hda2 como imagen. Para más infomración lea [[Hd BasedHowTo]].
| + | |
− | | + | |
− | Si no tiene una partición extra o no quiere hacerlo, puede usar Qemu ( lea [http://fabrice.bellard.free.fr/qemu/] ) con la imagen ISO de esta forma:
| + | |
− | '''qemu -m 128 -cdrom /temp/knoppix-custom.iso -boot d -user-net'''
| + | |
− | Ni siquiera necesita construir imagen de disco antes, simplemente instale Qemu y pruebe esto. ¡Asombroso!
| + | |
− | | + | |
− | ==== Arranque de imágenes de Knoppix con GRUB ====
| + | |
− | * Primero copie /boot del cd de Knoppix a su partición de arranque (o incluso a su partición dos). Yo nombré el mio boot.knoppix
| + | |
− | ''' Copie el directorio /KNOPPIX a su '''directorio raíz* de cualquir disco duro. Puede colocarlo en cualquier otra partición distinta a la de arranque. (puede ser ext2/3, reiserfs o vfat)
| + | |
− | * Coloque los siguiente en el fichero /boot/grub/menu.lst:
| + | |
− | title KNOPPIX
| + | |
− | root (hd0,0)
| + | |
− | kernel /boot.knoppix/vmlinuz 2 fromhd=/dev/hda4 lang=us
| + | |
− | initrd /boot.knoppix/miniroot.gz
| + | |
− | * tenga en cuenta que el parámetro fromhd: es el lugar donde está el directorio /KNOPPIX
| + | |
− | * reinicie y disfrute.
| + | |
− | | + | |
− | Si mi howto (como) es demasiado confuso, o le gustaría una segunda opinión, mire el bonito howto de charan : http://gnubox.dyndns.org:8080/~sunil/knoppix.php .
| + | |
− | Otro Howto en http://www.stirnimann.com/mystuff/doc/knoppix.txt
| + | |
− | | + | |
− | Hay un asistente, que utiliza todos los pasos de desempaquetado, compresión y grabación de CD mencionados aquí. También muestra una consola donde puede actualizar el sistema KNOPPIX descomprimido usando herramientas de estándar de instalación de software Debian. Se llama mmkcdrom y part del paquete de scripts: [http://rcswww.urz.tu-dresden.de/~holzhey/plugscript]
| + | |
− | | + | |
− | Otro HOWTO más, para los freaks de la consola, en http://quozl.linux.org.au/knoppix/
| + | |
− | | + | |
− | Asegúrese de que echa un vistazo a [http://knoppix.net/forum/viewforum.php?f=2 Knoppix Customization Forum] para ideas y ayuda con la remasterización.
| + | |
− | ----
| + | |
− | Este es el esquema de directorios recomendado para remasterizar KNOPPIX:
| + | |
− | . (invoque ../remaster desde aquí)
| + | |
− | |-- master (invoke ../../[[u]]mountbootimage from here)
| + | |
− | | |-- KNOPPIX
| + | |
− | | | |-- KNOPPIX (compressed image)
| + | |
− | | | |-- boot.img (boot floppy image)
| + | |
− | | | `-- (other files snipped)
| + | |
− | | `-- index.html
| + | |
− | `-- source
| + | |
− | `-- KNOPPIX (se puede hacer chroot sobre este directorio)
| + | |
− | |-- bin
| + | |
− | |-- boot
| + | |
− | |-- cdrom
| + | |
− | |-- dev
| + | |
− | |-- etc
| + | |
− | |-- floppy
| + | |
− | |-- home
| + | |
− | |-- initrd
| + | |
− | |-- lib
| + | |
− | |-- mnt
| + | |
− | |-- none
| + | |
− | |-- opt
| + | |
− | |-- proc
| + | |
− | |-- root
| + | |
− | |-- sbin
| + | |
− | |-- tmp -> /var/tmp
| + | |
− | |-- usr
| + | |
− | |-- var
| + | |
− | `-- vmlinuz -> boot/vmlinuz-2.4.22-xfs
| + | |
− | ----
| + | |
− | el siguiente script "remaster" hará el proceso de remasterización por usted. Úselo como root, u obtendrá derechos de acceso incorrectos en la imagen.
| + | |
− | | + | |
− | El script ha sido probado con Debian sid del 2004-04-02.
| + | |
− | | + | |
− | #!/bin/bash -x
| + | |
− | # This script builds a new KNOPPIX ISO image.
| + | |
− | # Copyright (C) 2004 by Marc Haber <mh+knoppix-remaster@zugschlus.de>
| + | |
− | # License: GPL V2
| + | |
− |
| + | |
− | ROOT="$PWD"
| + | |
− | SOURCE="$ROOT/source/KNOPPIX"
| + | |
− | MASTER="$ROOT/master"
| + | |
− | CLOOPTARGET="$ROOT/master/KNOPPIX/KNOPPIX"
| + | |
− | TARGET="$ROOT"
| + | |
− | EXCLUDELIST="$ROOT/source/excludelist"
| + | |
− |
| + | |
− | rm -rf $SOURCE/.rr_moved
| + | |
− |
| + | |
− | cd $SOURCE
| + | |
− | mkisofs -R -U -V "KNOPPIX.net filesystem" \
| + | |
− | -P "KNOPPIX www.knoppix.net" \
| + | |
− | -hide-rr-moved -cache-inodes -no-bak -pad \
| + | |
− | -exclude-list $EXCLUDELIST \
| + | |
− | . | nice -5 /usr/bin/create''compressed''fs - 65536 > $CLOOPTARGET
| + | |
− |
| + | |
− | cd $MASTER
| + | |
− | rm -f KNOPPIX/md5sums
| + | |
− | find -type f -not -name md5sums -not -name boot.cat -exec md5sum {} \; >> KNOPPIX/md5sums
| + | |
− | mkisofs -pad -l -r -J -v -V "KNOPPIX" -b KNOPPIX/boot.img \
| + | |
− | -c KNOPPIX/boot.cat -hide-rr-moved -o $TARGET/knoppix.iso $MASTER
| + | |
− | ----
| + | |
− | El siguiente script montará la imagen de arranque de disquete y la imagen initrd para su modificación. La función umount construirá una nueva imagen initrd y la pondrá de vuelta en la imagen de arranque del disquete.
| + | |
− | | + | |
− | El script ha sido probado con Debian sid del 2004-01-13.
| + | |
− | <!-- lines starting with space a preformatted -->
| + | |
− | #!/bin/bash -x
| + | |
− | # This script will loop-mount boot floppy and initrd image
| + | |
− | # Copyright (C) 2004 by Marc Haber <mh+knoppix-remaster@zugschlus.de>
| + | |
− | # License: GPL V2
| + | |
− | unset CDPATH || true
| + | |
− |
| + | |
− | # if not root, re-invoke self as root
| + | |
− | <nowiki>if [[ "`id -u`" -ne 0 ]]; then</nowiki>
| + | |
− | export LOCUSER="$USER"
| + | |
− | export LOCHOME="$HOME"
| + | |
− | <nowiki>if [[ "${SHELLOPTS/xtrace/}" != "$SHELLOPTS" ]]; then</nowiki>
| + | |
− | sudo bash -x $0 $@
| + | |
− | exit $?
| + | |
− | else
| + | |
− | sudo $0 $@
| + | |
− | exit $?
| + | |
− | fi
| + | |
− | else
| + | |
− | LOCUSER="${LOCUSER:-$USER}"
| + | |
− | LOCHOME="${LOCHOME:-$HOME}"
| + | |
− | fi
| + | |
− | set -e
| + | |
− |
| + | |
− | KNOPPIXDIR="KNOPPIX"
| + | |
− | BOOTIMGFILE="$KNOPPIXDIR/boot.img"
| + | |
− | BOOTIMGFS="vfat"
| + | |
− | BOOTIMGDIR="boot.img"
| + | |
− | INITRDGZ="$BOOTIMGDIR/miniroot.gz"
| + | |
− | INITRDFILE="$KNOPPIXDIR/miniroot"
| + | |
− | INITRDFS="ext2"
| + | |
− | INITRDDIR="miniroot"
| + | |
− |
| + | |
− | mountbootimage() {
| + | |
− | if ! modprobe loop; then
| + | |
− | echo >&2 "ERR: cannot load loop module"
| + | |
− | exit 1
| + | |
− | fi
| + | |
− |
| + | |
− | <nowiki>if ! [[ -e "$BOOTIMGFILE" ]]; then</nowiki>
| + | |
− | echo >&2 "ERR: no $BOOTIMGFILE found"
| + | |
− | exit 1
| + | |
− | fi
| + | |
− |
| + | |
− | for nofile in $BOOTIMGDIR $INITRDGZ $INITRDFILE $INITRDDIR; do
| + | |
− | <nowiki>if [[ -e "$nofile" ]]; then</nowiki>
| + | |
− | echo >&2 "ERR: $nofile already exists"
| + | |
− | exit 1
| + | |
− | fi
| + | |
− | done
| + | |
− |
| + | |
− | mkdir -p $BOOTIMGDIR
| + | |
− | mount -o loop,uid=$LOCUSER -t $BOOTIMGFS $BOOTIMGFILE $BOOTIMGDIR
| + | |
− |
| + | |
− | < $INITRDGZ gunzip > $INITRDFILE
| + | |
− | mkdir -p $INITRDDIR
| + | |
− | mount -o loop -t $INITRDFS $INITRDFILE $INITRDDIR
| + | |
− | }
| + | |
− |
| + | |
− | umountbootimage() {
| + | |
− | dd if=/dev/zero of=$INITRDDIR/nullfile || true
| + | |
− | sync
| + | |
− | rm $INITRDDIR/nullfile
| + | |
− | umount $INITRDDIR
| + | |
− | rmdir $INITRDDIR
| + | |
− | < $INITRDFILE gzip --best > $INITRDGZ
| + | |
− | rm -f $INITRDFILE
| + | |
− |
| + | |
− | umount $BOOTIMGDIR
| + | |
− | rmdir $BOOTIMGDIR
| + | |
− |
| + | |
− | syslinux KNOPPIX/boot.img
| + | |
− | }
| + | |
− |
| + | |
− | case "`basename $0`" in
| + | |
− | mountbootimage)
| + | |
− | mountbootimage
| + | |
− | ;;
| + | |
− | umountbootimage)
| + | |
− | umountbootimage
| + | |
− | ;;
| + | |
− | *)
| + | |
− | echo >&2 "ERR: called with unknown name `basename $0`"
| + | |
− | exit 1
| + | |
− | ;;
| + | |
− | esac
| + | |
− | | + | |
− | | + | |
− | | + | |
− | | + | |
− | [[Category: Remastering Knoppix ]]
| + | |
The previous translation of this HowTo has become obsolete.