In (overly) simplistic script form, the making of an ISO9660 image goes like this.
#!/bin/bash contents="path/to/files" isodir="path/to/empty/dir" isoimage="my-image.iso" mkdir $isodir cp -a $contents $isodir mkisofs -R -J -T \ -V "VOLUME_ID" \ -A "Description of the contents" \ -publisher "The Company, Inc" \ -p "Another Company, Inc" \ -o $isoimage $isodir
The Rock Ridge protocol (-R) and Joliet fileystem (-J) options specify extensions to the ISO9660 standard that help with OS compatibility. Rock Ridge adds POSIX file capabilites for Unix-compatible systems, and Joliet improves Windows compatibility.
The -T option adds a translation table to each directory, which further enhances compatibility on both Windows and Linux systems.
The remaining options are fairly obvious. The volume ID (-V) can be up to 32 characters. You might want to avoid whitespace for easier use on Unix systems, but it's not a requirement.
The other strings for application ID (-A), publisher, preparer (-p), are descriptive strings that can be up to 128 characters.
If you don't specify an output file or device (-o), the output will be written to stdout.
If you choose to write to a file, you can use cdrecord (a symlink to wodim on newer versions of Linux) to burn a CD. You'll need to know the name of the device file for the optical writer on your system. It's usually /dev/cdrom, /dev/dvdwriter, or something similar.
The command I use to burn CD's and DVD's is
cdrecord dev=/dev/cdrom my-image.iso.
No comments:
Post a Comment