AML ViSLaB AML Home
Howto record multiple session iso files on a CD or DVD
CDs will be readable in Unix, Linux, Windows, and MacOS with original file names
-
CDs recorded with the following options will be readable on all OS systems (Unix, Linux, Windows. MacOS) and
have correct long file names in every OS.
-
The following procedures use cdrtools (mkisofs & cdrecord).
-
The procedures below work for single and multiple recording of
iso images onto a single CD or DVD.
-
This note explains the procedures on Linux, Unix, Cygwin in Windows, and
MacOSX systems.
Table of Contents
- Information Common to the different systems
- Linux, Unix, Windows/Cygwin Instructions
- Apple MacOSX Instructions
Information common to the different systems
-
Directories to be backed-up should be placed in a common top directory.
This directory's name will not appear on the recorded CD.
- CDs can contain a maximum of 600-700 Megabytes
DVDs can contain 4.5 GigaBytes of information
- mkisofs options for the recording
- The recording will be readable on Linux., Unix, Windows,
Apple systems with original long file names
if the following options are used: -rJTV vol_name
eg: /usr/bin/mkisofs -rJTV data0303 ./data > data.iso
- r - is for rockridge extensions - long file names
- T - sets up Translation Table - r & T for Unix/Linux systems
- J - Joliet extensions - for Windows systems
- V - creates a volume title which will appear on Windows/Mac/Solaris systems
Keep the same title when recording multiple sessions - otherwise only the last title recorded will be used (on some operating systems).
- Other useful options
-a: Include all files - "~" "#" files
-l: if very many files are in the directory, you might need this one
- but it may cause problems on Windows
Read the man page
- You need a machine with a CD writer to find the information for the next mkisofs session (for a multi-session CD).
- Use CD-R recording material instead of CD-RW. A CD-RW will be readable only on machines with a
CD writer. This excludes all the CIMS Suns and SGIs.
- On a CD-R, a multi-session recording will obscure older versions of the same file and add new files and directories to the disk.
Linux, Unix, Windows/Cygwin Instructions
- In the following commands, I use "Data0303" for the volume name,
and "data" for the top directory containing the directories to be recorded.
- mkisofs can be used on any system having this command (Suns, SGIs)
cdrecord has to be used on a system with a CD writer.
- cdrecord -scanbus
This only has to be done once on a system to obtain the device numbers
On the Dell linux system in the AML lab the results of this command is:
0,1,0 1) 'SAMSUNG ' 'CDRW/DVD SM-308B' 'xp01' Removable CD-ROM
This means: dev=0,1,0 or dev=ATA:0,1,0 will be used in subsequent commands.
Some systems need the device to be specified with ATA: before the
device numbers. (The reference to the CD/DVD player can
be seen in the boot messages.)
- create a top directory and move directories to be recorded into this directory on the machine where mkisofs is being used:
mkdir data
mv dataA dataB data
- run mkisofs the first time
/usr/bin/mkisofs -rJTV Data0303 ./data > data1.iso
- Move directories dataA dataB back to their original places
- cdrecord -v -eject dev=0,1,0 -multi speed=8 data1.iso
(or if necessary: cdrecord -v -eject dev=ATA:0,1,0 -multi speed=8 data1.iso)
speed is the speed of the CD recorder - in the ViSLab it's 8x
- All subsequent times mkisofs has to know where the free space begins.
This is obtained with the CD
inserted in the CD writer and the
cdrecord command
cdrecord -msinfo dev=0,1,0
or cdrecord -msinfo dev=ATA:0,1,0
The results of this command is then used with the -C option
in mkisofs
- If mkisofs is on different machine than the CD writer and cdrecord
copy the info from: cdrecord -msinfo dev=0,1,0 and put it
after the -C option in mkisofs
/usr/bin/mkisofs -rJTV Data0303 -C {cdrecord info} -M /dev/cdrom ./data >data2.iso
- If the mkisofs command is on the same machine as the cdrecord
- either
bash shell: NEXT_SESSION =`cdrecord -msinfo dev=0,1,0`
tcsh or csh shell: set NEXT_SESSION =`cdrecord -msinfo dev=0,1,0`
/usr/bin/mkisofs -rJTV Data0303 -C $NEXT_SESSION -M /dev/cdrom ./data >data2.iso
- or combine these 2 commands
/usr/bin/mkisofs -rJTV Data0303 -C `cdrecord -msinfo dev=0,1,0` -M /dev/cdrom ./data >data2.iso
- Then record the iso file
cdrecord -v -eject dev=0,1,0 -multi speed=8 data2.iso
- When finished recording, eject the disk: eject or press the button on CD drive.
- Re-insert the CDROM and check it
- On a Linux system
ls -F /mnt/cdrom
dataA/ dataB/ dataC/ dataD/ .... TRANS.TBL
- On a Sun: the disk is in /cdrom
- on an SGI: the disk is in /CDROM
- For further information on this and other types of CD burning,
see the Linux:CD writing HowTo
Apple MacOSX instructions
- Pre-Instructions and Comments
- the MacOSX instructions are slightly different from those for the other OSs
- the procedure has one peculiarity in that you have to use the command
disktool -u disk1 0
from time to time to disassociate the device with MacOSX without ejecting it.
Below you'll find this command listed each time I needed it during the test
writing session on the G4 in the AML ViSLab.
If you have any trouble issuing a command, use disktool first.
- The G4 in the AML ViSLab is a SuperDrive and thus the device is called
"IODVDServices" in the following instructions.
- In the following, I will call the common top directory with the data to be recorded: data
and the name of the CD: Data0303
- Put your data directories to be recorded in the common top directory data
- Create the first iso image
mkisofs -rJTV Data0303 ./data >data1.iso
- burn this first image
cdrecord -v -multi -data dev=IODVDServices data1.iso
- disktool -u disk1 0
- Find the information locating the free space on the CD
set NEXT_SESSION=`cdrecord -msinfo dev=IODVDServices`
- disktool -u disk1 0
- create next ( and subsequent) iso image
mkisofs -rJTV Data0303 -M IODVDServices -C $NEXT_SESSION ./data >data2.iso
- disktool -u disk1 0
- burn the next( and subsequent) iso image
cdrecord -v -multi -data dev=IODVDServices data2.iso
- when finished eject the disk
hdiutil eject disk1 or press the "triangle" button key at the top right.
- Re-Insert the disk and type:
ls /Volumes to see the results
- For further information see Create single-volume multi session CD-Rs
Estarose Wolfson, March 2003 (updated July 2006)