Crear un DVD de FreeBSD a partir de los ISOs
De LIDSOL
Prácticamente todos los comandos requieren privilegios de root, o al menos privilegios para montar/desmontar "memory disks", montar y desmontar CDROMS y permisos para quemar CDs.
Para crear un DVD de FreeBSD desde GNU/Linux, por favor visite el enlace al final del artículo
Para empezar, se necesita tener instalado growisofs (ports/sysutils/dvd+rw-tools) y los dos ISOs.
Una vez que se tengan ambos ISOs, se debe montar cada uno de ellos como un memory disk usando el comando mdconfig:
># mdconfig -a -t vnode -f NombreDelISO.iso
Eso acoplará el archivo (f) como un vnode, lo que significa que el /dev/md# que aparezca, tendrá los contenidos del archivo especificado. El # corresponde al número de memory disk que haya sido acoplado; 0 si es el primer memory disk, pero se puede controlar con el parámetro -u.
Ahora se debe montar el memory disk como un CDROM normal, por lo que se usará el siguiente comando:
># mount_cd9660 /dev/md# /cdrom/
Ahora se copia el contenido del disco a algún directorio dentro de la computadora donde haya suficiente espacio (~1.5GB):
>$ mkdir /home/BSDDVD >$ cp -pRv /cdrom/ /home/BSDDVD
Cuando se terminen de copiar los contenidos del primer disco, se desmonta de /cdrom/ usando el siguiente comando:
># umount /cdrom/
y se desacopla el memory disk usando
># mdconfig -d -u #
donde # es la unidad que se desea desacoplar.
Ahora se monta el segundo ISO y se repite la operación, copiando los contenidos del segundo ISO al mismo lugar donde se copiaron los del primero.
Una vez que se terminen de copiar los archivos del segundo ISO, hay que hacer algunas modificaciones a un par de archivos. El primero de ellos es cdrom.inf, localizado en la parte raíz de lo que se convertirá en el BSD-DVD; hay que abrirlo y cambiar la línea que dice
CD_VOLUME = 2
por
CD_VOLUME = 1
También se debe cambiar el archivo INDEX dentro del subdirectorio packages de lo que se convertirá en el DVD; hay que reemplazar todos los |2s al final de casi todas las líneas por |1s.
Para ahorrarse las yemas de los dedos, se puede usar al gran aliado de los unixeros, sed y armado de expresiones regulares:
>$ sed 's/\|2$/\|1/' INDEX > INDEX_1.inf ; mv INDEX_1.inf INDEX
En el caso de FreeBSD 6.2, los DOCS están en un CD aparte. Pueden ser incluidos en el mismo DVD usando un procedimiento similar, aunque por el momento se ignora si sirve de algo...
Y finalmente sólo resta quemar el DVD usando growisofs:
># growisofs -dvd-compat -Z /dev/cd0 -V FreeBSD_6_2_RELEASE -r -J -no-emul-boot -b boot/cdboot -c boot.catalog /home/BSDDVD
De aquí, probablemente la opción más relevante sea -b, opción de mkisofs que establece qué bootloader utilizar, esta opción se especifica relativa a la raíz del DVD; y el proceso de booteo, especificado por -no-emul-boot.
Todos éstos pasos los puede realizar el script que se encuentra en esta página:
FreeBSD-DVD Howto
Para realizarlo desde GNU/Linux, por favor visite esta página:
Crear un DVD de instalación de FreeBSD (Laboratorio de ideas)
