Creative Commons License
Excepto donde se indique otra cosa, todo el contenido de este lugar está bajo una licencia de Creative Commons.
Taquiones > sysadmin > CD de contenido mixto

CD de contenido mixto

Pongamos que uno recibe un regalo, un CD original conteniendo una especie de programa educativo, antiguo en términos informáticos, y del que aseguran funciona tanto en Windows 3.11/95 como en MacOS 9. Dado que sé que los MacOS tenian un formato especial para los programas y para los almacenamientos, supongo que el contenido del CD puede ser interesante para integrar en una red GNU/Linux.

En Debian aparece un volumen ISO9660 corriente y moliente, con un juego de carpetas, programas windows y archivos varios, pero ni por asomo nada especial para MacOS. Se nos ocurre entonces emplear el programa disktype para comprobar el contenido y ver si él algo más que nosotros y sí, ve algo maś:

cimitarra:/home/victor# disktype /dev/hdc

--- /dev/hdc
Block device, size 417.2 MiB (437415936 bytes)
CD-ROM, 10 tracks, CDDB disk ID 6E0B1F0A
Track 1: Data track, 314.0 MiB (329226240 bytes)
Apple partition map, 2 entries
Partition 1: 1 KiB (1024 bytes, 2 sectors from 1)
    Type "Apple_partition_map"
Partition 2: 312.5 MiB (327680000 bytes, 640000 sectors from 621)
    Type "Apple_HFS"
    HFS file system
    Volume name "Harry"
    Volume size 312.5 MiB (327653376 bytes, 53329 blocks of 6 KiB)
ISO9660 file system
    Volume name "HARRY"
    Preparer    "OMI_QUICKTOPIX 1.02"
    Data size 310 KiB (317440 bytes, 155 blocks of 2 KiB)
Track 2: Audio track, 9.230 MiB (9678480 bytes),   0 min 54 sec
Track 3: Audio track, 11.74 MiB (12308016 bytes),   1 min 09 sec
Track 4: Audio track, 7.514 MiB (7879200 bytes),   0 min 44 sec
Track 5: Audio track, 8.277 MiB (8678880 bytes),   0 min 49 sec
Track 6: Audio track, 10.08 MiB (10567536 bytes),   0 min 59 sec
Track 7: Audio track, 16.97 MiB (17792880 bytes),   1 min 40 sec
Track 8: Audio track, 17.43 MiB (18275040 bytes),   1 min 43 sec
Track 9: Audio track, 13.18 MiB (13825056 bytes),   1 min 18 sec
Track 10: Audio track, 24.07 MiB (25244016 bytes),   2 min 23 sec

cimitarra:/home/victor#

Y entonces recordamos que sí, que existen los CD con contenido mixto como éste, con un pista de datos que a su vez contiene una tabla de particiones Apple que describe dos particiones más: una en formato HFS y otra en formato ISO 9660, más otras nueve particiones de Audio de las que, por cierto, no se hace mención en la carátula.

Una búsqueda en la red nos lleva directamente al hogar de cdfs y de allí a descubrir que es un módulo del núcleo, que existe un paquete en Debian llamado cdfs-src y que, una vez construído e instalado mediante module-assistant, basta con usarlo directamente sobre el dispositivo:

# mkdir /mnt/cdrom
# mount -o ro -t cdfs /dev/hdc /mnt/cdrom
# ls -la /mnt/cdrom
total 4
dr-xr-xr-x  1 root root         0 nov 17 15:58 .
drwxr-xr-x 22 root root      4096 sep  9 18:06 ..
-r--r-- r --  1 root root      1024 ene  1  1970 3.1.Apple_partition_map
-r--r-- r --  1 root root 327680000 ene  1  1970 3.2.Apple_HFS
-r--r-- r --  1 root root 329226240 ago  2  0024 sessions_1-1.iso
-r--r-- r --  1 root root   9678524 nov 17 15:58 track-02.wav
-r--r-- r --  1 root root  12308060 nov 17 15:58 track-03.wav
-r--r-- r --  1 root root   7879244 nov 17 15:58 track-04.wav
-r--r-- r --  1 root root   8678924 nov 17 15:58 track-05.wav
-r--r-- r --  1 root root  10567580 nov 17 15:58 track-06.wav
-r--r-- r --  1 root root  17792924 nov 17 15:58 track-07.wav
-r--r-- r --  1 root root  18275084 nov 17 15:58 track-08.wav
-r--r-- r --  1 root root  13825100 nov 17 15:58 track-09.wav
-r--r-- r --  1 root root  25244060 nov 17 15:58 track-10.wav

Ahora tendremos cada pista del CD accesible a través de un nombre de archivo, incluyendo aquellas particiones de datos contenidas en la primera pista, aunque no será posible montarlas directamente puesto que el dispositivo de bucle (loop device) no funciona sobre todos los sistemas de archivo. Desgraciadamente el error es un tanto confuso:

# mkdir /mnt/apple 
# mount -v -t hfs -o loop,ro  /mnt/cdrom/3.2.Apple_HFS /mnt/apple/
mount: se va a utilizar el dispositivo de bucle /dev/loop0
ioctl: LOOP_SET_FD: Argumento inválido
mount: error al configurar dispositivo de bucle
#

y nos vemos obligados a buscar ayuda sobre el mismo. Encontramos un hilo del año 2005 y una escueta pero estupenda explicación de David Drager que no nos deja otra opción que copiar la imagen fuera de la influencia de cdfs e intentar allí el montaje de antes:

# cp /mnt/cdrom/3.2.Apple_HFS /tmp/apple-fs 
# mount -o ro -o loop -t hfs /tmp/apple-fs /mnt/apple
# ls /mnt/apple
cimitarra:/tmp# ls -la /mnt/apple
total 296
drwxr-xr-x 1 root root     20 ago  1  1994 .
drwxr-xr-x 5 root root   4096 nov 17 16:04 ..
-rw-r--r-- 1 root root  73728 jul 18  1994 AppleShare PDS
-rw-r--r-- 1 root root   2066 jul 18  1994 BookOutline
drwxr-xr-x 1 root root      7 jul 18  1994 data
drwxr-xr-x 1 root root      9 jul 18  1994 DEMOS
-rw-r--r-- 1 root root      0 feb  6  2040 Desktop
-rw-r--r-- 1 root root  24576 ago  1  1994 Desktop DB
-rw-r--r-- 1 root root   7488 ago  1  1994 Desktop DF
drwxr-xr-x 1 root root      2 ago  1  1994 Desktop Folder
-rw-r--r-- 1 root root   6144 abr 12  1994 FILE.DLL
-rw-r--r-- 1 root root   2381 jul 18  1994 HARRY.512
-rw-r--r-- 1 root root      0 ago  1  1994 Harry and the Haunted House
-rw-r--r-- 1 root root  61952 may 27  1994 HARRY.EXE
-rw-r--r-- 1 root root      0 jul 18  1994 Icon?
-rw-r--r-- 1 root root 108032 jul 15  1994 INSTALL.EXE
-rw-r--r-- 1 root root    569 jul 18  1994 INSTALL.TXT
drwxr-xr-x 1 root root      7 jul 18  1994 MPCDATA
drwxr-xr-x 1 root root     12 ago  1  1994 Other Living Books
-rw-r--r-- 1 root root  10752 abr 12  1994 RSRC.DLL
#

Es decir, el archivo ISO que queremos montar debe estar situado sobre un sistema de archivos que tenga soporte de dispositivo bucle. Y no, no he conseguido hasta ahora un método diferente del prueba-error para saber si dicho soporte existe o no.

Y sí, todo esto muy bien ¿ pero me servirá de algo ? ¿ Podré emplear Mac on Linux en el ibook de mi hija para que use este programa ?

Información desde el núcleo

Se me olvidaba anotar que existe una forma más de obtener un resumen del contenido del disco sin emplear disktype. Se trata de consultar /proc/cdfs tras montar el CD:

# cat /proc/cdfs 
[cdfs   2.6.23]
CD (discid=6C000009) contains 12 tracks:
Track  1: data track (sessions_1-1.iso), [0-155/160754], length=313 MB
        type: 1 info: CD001 version: 1
        date: 02/08/1994 time: 11:20:10
        system:
        volume: HARRY
        publisher:
        preparer: OMI_QUICKTOPIX 1.02
        application:
        length: 0 MB / 313 MB / 0 MB / 313 MB
Track  2: audio track (track-02.wav), [  160755 -  164869], length= 0:54
Track  3: audio track (track-03.wav), [  164870 -  170102], length= 1:09
Track  4: audio track (track-04.wav), [  170103 -  173452], length= 0:44
Track  5: audio track (track-05.wav), [  173453 -  177142], length= 0:49
Track  6: audio track (track-06.wav), [  177143 -  181635], length= 0:59
Track  7: audio track (track-07.wav), [  181636 -  189200], length= 1:40
Track  8: audio track (track-08.wav), [  189201 -  196970], length= 1:43
Track  9: audio track (track-09.wav), [  196971 -  202848], length= 1:18
Track 10: audio track (track-10.wav), [  202849 -  213581], length= 2:23
Apple HFS (3.1.Apple_partition_map), [0-0], length=0 MB
        ID string:Quick TOPiX by OMI
Apple HFS (3.2.Apple_HFS), [155-160155], length=312 MB
        ID string:Harry

Referencias y enlaces

  • La wikipedia también menciona estos CD como híbridos.