Crear ISO desde consola

De Wiki de BandaAncha.eu
Saltar a: navegación, buscar
Sobre este documento
Tipo Manual (How To)
Categoria Linux
Plataforma All GNU/Linux
Dificultad Tux

Bien, algunas veces podemos necesitar crear un archivo ISO desde consola, ya sea porque queremos tenerlo disponible cuando lleguemos a casa (en caso de hacerlo de forma remota), o porque somos tan vagos que no queremos iniciar las X, o porque nuestras X han cascado y no podemos iniciarlas...

En este breve documento explicaremos como crear la ISO, montarla, y grabarla usando cdrecord o dd (disponible en la mayoria de distribuciones GNU/Linux)

¿Qué necesitamos?[editar]

Pues además del mencionado cdrecord (paquete cdrtools) necesitaremos también las siguientes aplicaciones: mount (si me decis que no lo teneis, os mato), mkisofs (actualmente incluido en el paquete cdrtools) en caso de no tenerlos, os los podeis descargar todo (menos mount ¬¬) desde la siguiente dirección: ftp://ftp.berlios.de/pub/cdrecord/

Crear imagen ISO (Desde HD)[editar]

Una imagen ISO no es más que un espejo de la información contenida en un disco, independientemente de su estructura. No importa si es audio, datos, un híbrido, o algo que no se pueda leer en un ordenador normal, puedes crear una imagen de ese disco. Además es un formato multi-programa ya que es el formato de imagen más normal y extendido, por lo que la mayoria de programas de grabación siempre la tienen encuenta entre sus opciones.

La aplicación mkisofs, crea un archivo de sistema híbrido iso9660/joliet/hfs/Rock Ridge. Esto le permite combinar dos sistemas en un mismo CD, para que el mismo sea portable entre los sistemas operativos que utilizen uno u otro manteniendo los nombres largos. Para crear la imagen ISO solamente usaremos un comando

mkisofs [opciones] -o [fichero.iso] -V "TITULO" [carpeta a "isar"] 

podeis mirar las demás opciones, pero sinceramente con esto os llegará:

dummie@crash:~$ mkisofs -r -o /home/dummie/backup.iso -V "Mis videos porno" /home/dummie/Porno/*.*

Siempre es bueno guardar el porno ;). Con la opción -r generaremos un sistema de archivos con extensión Rock Ridge pero reseteará los permisos de modo tal que todos los usuarios puedan acceder al CD por completo. La opción -V es para darle una etiqueta a la ISO, que será el titulo del CD en el momento que lo grabemos.

Crear imagen ISO (Desde CD-ROM)[editar]

Para este caso usaremos el socorrido dd, el comando será el siguiente:

dummie@crash:~$ dd if=/dev/cdrom of=/ruta/imagen.iso


Montar una imagen ISO[editar]

Para quien no lo supiera, mount permite montar imagenes ISO usando loopback... el comando para montarla es casí como el de un CD-ROM/DVD normal, pero agregando el lookback: mount -t iso9660 -o ro,loop=/dev/loop0 archivo.iso /media/cdrom

dummie@crash:~$ mount -t iso9660 -o ro,loop=/dev/loop0 /home/dummie/backup.iso /media/cdrom

Uso como punto de montaje /media/cdrom puesto que es lo más normal (al menos para mi). Desde este momento podremos acceder al contenido de la imagen sin ningún tipo de problema.


Grabarla[editar]

Para grabar usaremos el ya más que mencionado cdrecord, lo primero que necesitamos saber es qué dispositivo de grabación usaremos, para ello tenemos el siguiente comando:

dummie@crash:~$ cdrecord -scanbus
Cdrecord 2.0 (i686-pc-linux-gnu) Copyright (C) 1995-2002 Jörg Schilling
"Bla, bla bla"
scsibus0:
        0,0,0     0) 'HL-DT-ST' 'CD-RW GCE-8400B ' '1.02' Removable CD-ROM
        0,1,0     1) *
        0,2,0     2) *
        0,3,0     3) *
        0,4,0     4) *
        0,5,0     5) *
        0,6,0     6) *
        0,7,0     7) *

Tenemos lo que nos interesa... nuestro dispositivo es el 0,0,0... ahora procederemos a grabarla con el siguiente comando:

dummie@crash:~$ cdrecord dev=0,0,0 speed=8 -v -eject /donde/sea/imagen.iso

Donde dev es el dispositivo que vimos antes, speed es la velocidad de grabación, -v es para que muestre mensajes durante la ejecución y el -eject es para expulsar el disco una vez terminada la grabación.

Bien, con esto termina este cutre manual de como usar la consola para algo más que mirar el arranque antes de entrar en las X, o realizar las tareas de gestión ... para los muy vagos que se quieran ahorrar todos estos pasos, he visto un script en la siguiente web http://www.laespiral.org/recetas/1-100/receta16.html que paso a reproducir:

nebula:/usr/local/bin# cat tostar_al_vuelo.sh
#Uso: tostar_al_vuelo directorio etiqueta
#
#
#
IMG_SIZE=`mkisofs -J -V $2 -q -print-size $1 2>&1 | sed -e "s/.* = //"`
echo $IMG_SIZE [ "0$IMG_SIZE" -ne 0 ] && mkisofs -J -V $2 $1 | cdrecord
-v speed=6 dev=0,4,0 fs=30m tsize=${IMG_SIZE}s -data -
#
don't forget the s --^         ^-- read data from STDIN
nebula:/usr/local/bin#