mkisofs -help
Usage: mkisofs [options] [-find] file... [find expression]
Options:
-find file... [find expr.] Option separator: Use find command line
to the rig
ht
-posix-H Follow symbolic links encountered on
command line
-posix-L Follow all symbolic links
-posix-P Do not follow symbolic links (default)
-abstract FILE Set Abstract filename
-A ID, -appid ID Set Application ID
-biblio FILE Set Bibliographic filename
-cache-inodes Cache inodes (needed to detect hard
links)
-no-cache-inodes Do not cache inodes (if filesystem has no
unique i
nodes)
-rrip110 Create old Rock Ridge V 1.10
-rrip112 Create new Rock Ridge V 1.12 (default)
-check-oldnames Check all imported ISO9660 names from old
session
-check-session FILE Check all ISO9660 names from previous
session
-copyright FILE Set Copyright filename
-debug Set debug flag
-b FILE, -eltorito-boot FILE
Set El Torito boot image name
-eltorito-alt-boot Start specifying alternative El Torito
boot parame
ters
-eltorito-platform ID Set El Torito platform id for the next
boot entry
-B FILES, -sparc-boot FILES Set sparc boot image names
-sunx86-boot FILES Set sunx86 boot image names
-G FILE, -generic-boot FILE Set generic boot image name
-sparc-label label text Set sparc boot disk label
-sunx86-label label text Set sunx86 boot disk label
-c FILE, -eltorito-catalog FILE
Set El Torito boot catalog name
-C PARAMS, -cdrecord-params PARAMS
Magic paramters from cdrecord
-d, -omit-period Omit trailing periods from filenames
(violates ISO
9660)
-data-change-warn Treat data/size changes as warning only
-dir-mode mode Make the mode of all directories this
mode.
-D, -disable-deep-relocation
Disable deep directory relocation
(violates ISO966
0)
-file-mode mode Make the mode of all plain files this
mode.
-errctl name Read error control defs from file or
inline.
-f, -follow-links Follow symbolic links
-gid gid Make the group owner of all files this
gid.
-graft-points Allow to use graft points for filenames
-root DIR Set root directory for all new files and
directori
es
-old-root DIR Set root directory in previous session
that is sea
rched for files
-help Print option help
-hide GLOBFILE Hide ISO9660/RR file
-hide-list FILE File with list of ISO9660/RR files to
hide
-hidden GLOBFILE Set hidden attribute on ISO9660 file
-hidden-list FILE File with list of ISO9660 files with
hidden attrib
ute
-hide-joliet GLOBFILE Hide Joliet file
-hide-joliet-list FILE File with list of Joliet files to hide
-hide-udf GLOBFILE Hide UDF file
-hide-udf-list FILE File with list of UDF files to hide
-hide-joliet-trans-tbl Hide TRANS.TBL from Joliet tree
-hide-rr-moved Rename RR_MOVED to .rr_moved in Rock
Ridge tree
-gui Switch behaviour for GUI
-input-charset CHARSET Local input charset for file name
conversion
-output-charset CHARSET Output charset for file name conversion
-iso-level LEVEL Set ISO9660 conformance level (1..3) or 4
for ISO9
660 version 2
-J, -joliet Generate Joliet directory information
-joliet-long Allow Joliet file names to be 103 Unicode
characte
rs
-jcharset CHARSET Local charset for Joliet directory
information
-l, -full-iso9660-filenames Allow full 31 character filenames for
ISO9660 name
s
-max-iso9660-filenames Allow 37 character filenames for ISO9660
names (vi
olates ISO9660)
-allow-leading-dots Allow ISO9660 filenames to start with '.'
(violate
s ISO9660)
-ldots Allow ISO9660 filenames to start with '.'
(violate
s ISO9660)
-log-file LOG_FILE Re-direct messages to LOG_FILE
-long-rr-time Use long Rock Ridge time format
-m GLOBFILE, -exclude GLOBFILE
Exclude file name
-exclude-list FILE File with list of file names to exclude
-modification-date DATE Set the modification date field of the
PVD
-nobak Do not include backup files
-no-bak Do not include backup files
-pad Pad output to a multiple of 32k (default)
-no-pad Do not pad output to a multiple of 32k
-no-limit-pathtables Allow more than 65535 parent directories
(violates
ISO9660)
-no-long-rr-time Use short Rock Ridge time format
-M FILE, -prev-session FILE Set path to previous session to merge
-dev SCSIdev Set path to previous session to merge
-N, -omit-version-number Omit version number from ISO9660 filename
(violate
s ISO9660)
-new-dir-mode mode Mode used when creating new directories.
-force-rr Inhibit automatic Rock Ridge detection
for previou
s session
-no-rr Inhibit reading of Rock Ridge attributes
from prev
ious session
-no-split-symlink-components
Inhibit splitting symlink components
-no-split-symlink-fields Inhibit splitting symlink fields
-o FILE, -output FILE Set output file name
-path-list FILE File with list of pathnames to process
-p PREP, -preparer PREP Set Volume preparer
-print-size Print estimated filesystem size and exit
-publisher PUB Set Volume publisher
-quiet Run quietly
-r, -rational-rock Generate rationalized Rock Ridge
directory informa
tion
-R, -rock Generate Rock Ridge directory information
-s TYPE, -sectype TYPE Set output sector type to e.g.
data/xa1/raw
-short-rr-time Use short Rock Ridge time format
-sort FILE Sort file content locations according to
rules in
FILE
-split-output Split output into files of approx. 1GB
size
-stream-file-name FILE_NAME Set the stream file ISO9660 name (incl.
version)
-stream-media-size # Set the size of your CD media in sectors
-sysid ID Set System ID
-T, -translation-table Generate translation tables for systems
that don't
understand long filenames
-table-name TABLE_NAME Translation table file name
-ucs-level LEVEL Set Joliet UCS level (1..3)
-udf Generate rationalized UDF file system
-UDF Generate UDF file system
-udf-symlinks Create symbolic links on UDF image
(default)
-no-udf-symlinks Do not reate symbolic links on UDF image
-dvd-video Generate DVD-Video compliant UDF file
system
-uid uid Make the owner of all files this uid.
-U, -untranslated-filenames Allow Untranslated filenames (for HPUX &
AIX - vio
lates ISO9660). Forces -l, -d, -N, -allow-leading-dots, -relaxed-
filenames, -all
ow-lowercase, -allow-multidot
-relaxed-filenames Allow 7 bit ASCII except lower case
characters (vi
olates ISO9660)
-no-iso-translate Do not translate illegal ISO characters
'~', '-' a
nd '#' (violates ISO9660)
-allow-lowercase Allow lower case characters in addition
to the cur
rent character set (violates ISO9660)
-allow-multidot Allow more than one dot in filenames
(e.g. .tar.gz
) (violates ISO9660)
-use-fileversion LEVEL Use file version # from filesystem
-v, -verbose Verbose
-version Print the current version
-V ID, -volid ID Set Volume ID
-volset ID Set Volume set ID
-volset-size # Set Volume set size
-volset-seqno # Set Volume set sequence number
-x FILE, -old-exclude FILE Exclude file name(depreciated)
-hard-disk-boot Boot image is a hard disk image
-no-emul-boot Boot image is 'no emulation' image
-no-boot Boot image is not bootable
-boot-load-seg # Set load segment for boot image
-boot-load-size # Set numbers of load sectors
-boot-info-table Patch boot image with info table
-XA Generate XA directory attributes
-xa Generate rationalized XA directory
attributes
-z, -transparent-compression
Enable transparent compression of files
-hfs-type TYPE Set HFS default TYPE
-hfs-creator CREATOR Set HFS default CREATOR
-g, -apple Add Apple ISO9660 extensions
-h, -hfs Create ISO9660/HFS hybrid
-map MAPPING_FILE Map file extensions to HFS TYPE/CREATOR
-magic FILE Magic file for HFS TYPE/CREATOR
-probe Probe all files for Apple/Unix file types
-mac-name Use Macintosh name for
ISO9660/Joliet/RockRidge fi
le name
-no-mac-files Do not look for Unix/Mac files
(depreciated)
-boot-hfs-file FILE Set HFS boot image name
-part Generate HFS partition table
-cluster-size SIZE Cluster size for PC Exchange Macintosh
files
-auto FILE Set HFS AutoStart file name
-no-desktop Do not create the HFS (empty) Desktop
files
-hide-hfs GLOBFILE Hide HFS file
-hide-hfs-list FILE List of HFS files to hide
-hfs-volid HFS_VOLID Volume name for the HFS partition
-icon-position Keep HFS icon position
-root-info FILE finderinfo for root folder
-input-hfs-charset CHARSET Local input charset for HFS file name
conversion
-output-hfs-charset CHARSET Output charset for HFS file name
conversion
-hfs-unlock Leave HFS Volume unlocked
-hfs-bless FOLDER_NAME Name of Folder to be blessed
-hfs-parms PARAMETERS Comma separated list of HFS parameters
-prep-boot FILE PReP boot image file -- up to 4 are
allowed
-chrp-boot Add CHRP boot header
--cap Look for AUFS CAP Macintosh files
--netatalk Look for NETATALK Macintosh files
--double Look for AppleDouble Macintosh files
--ethershare Look for Helios EtherShare Macintosh
files
--exchange Look for PC Exchange Macintosh files
--sgi Look for SGI Macintosh files
--macbin Look for MacBinary Macintosh files
--single Look for AppleSingle Macintosh files
--ushare Look for IPT UShare Macintosh files
--xinet Look for XINET Macintosh files
--dave Look for DAVE Macintosh files
--sfm Look for SFM Macintosh files
--osx-double Look for MacOS X AppleDouble Macintosh
files
--osx-hfs Look for MacOS X HFS Macintosh files
-no-hfs Do not create ISO9660/HFS hybrid
[ 本帖最后由 wang6610 于 2012-1-7 20:41 编辑 ]作者: wang6610 时间: 2012-1-7 19:01
Please have a look at the German open Source Center BerliOS at www.berlios.de
BerliOS will continue to support free hosting of cryptography projects even
when US laws change and don't allow to host cryptography projects in the USA.
Also look at sourcewell.berlios.de, the first Open Source announcement service
that itself is implemented as Open Source project.
***************** Important news ****************************
For the 'Slottable Source Plugin Module' SSPM Features read README.SSPM
***************** Please Test *********************************
NEW features of cdrtools-3.01a06:
This is the first localization step for cdrtools. All programs now (hopefully)
call gettext() for all strings that need localization.
- The next step will include dgettext() calls for the libraries.
- The following step will include the extracted strings
- The last step will include German translations and install support
for the resulting binary message object files.
----------> Please test and report compilation problems! <---------
***** NOTE: As mentioned since 2004, frontends to cdrtools should *****
***** call all programs from cdrtools in the "C" locale *****
***** by e.g. calling: LC_ALL=C cdrecord .... *****
***** unless these frontends support localized strings *****
***** used by the cdrtools with NLS support. *****
This version compiles on Win-DOS using the Microsoft compiler cl.exe but
warning: due to missing POSIX compliance with basic features (e.g. stat()
does not return inode numbers), there are many problems with the resulting
code and thus it is recommended to better use a POSIX layer on top of
WIN-DOS.
All:
- A new rule RULES/profiled.lnk allows to call:
smake COPTX=-pg LDOPTX=-pg LINKMODE=profiled
to create binaries that use gprof.
- The Makefile System is now able to switch gmake-3.82 into a more POSIX
compliant mode to tell the shell to report problems back to gmake.
- New autocof tests on whether printf supoorts %lld and %jd
- Fixed the vc9-setup files to make VC9 work.
- Newer Cygwin "tail" versions do no longer support UNIX syntax.
change tail +2 to tail -n +2 in RULES/cc-mcs.rul to allow to use
the Microsoft compiler again
- A new environment variable MKLINKS_COPY allows to tell all
MKLINS scripts to generate file copies rather than symlinks.
Call:
MKLINKS_COPY=true
export MKLINKS_COPY
to enable this feature
- Run an additional test -h command in MKLNKS to verify whether mingw
supports symlinks
- MKLINKS now creates copies instead of symlink when we use MSC
as MSC does not support to read symlinks files
- Fixed a typo in include/schily/libport.h (group functions have been
defined to return struct passwd* instead of struct group*
- Fixed wrong bracketing for C++ in include/schily/stdlib.h
- Fixed wrong bracketing for C++ in include/schily/utypes.h
- Added a workaround for MSC to include/schily/utypes.h
MSC believes that a 32 bit int and a 32 bit long are incompatible
and cannot even be casted, so we need to make uint32_t a n unsigned long
- Let include/schily/archdefs.h define the standard processor #defines
when compiling with MSC.
- New include file include/schily/windows.h works around the oddities
from the MSC include file windows.h
- include/schily/stdio.h now defines popen()/pclose() to _popen()/_pclose()
if on WIN-DOS
- include/schily/limits.h now defines PIPE_BUF
- include/schily/utsname.h now defines struct utsname for our MSC uname()
emulation.
- The setup for the PATHs needed by Visual Studio 9 has been
corrected.
- autoconf has been modified to avoid optimizing away code that
is intended for testing. This help to work against a problem
with detecting mbrtowc() on MinGW
- autoconf now tests for mbtowc() and wctomb()
- RULES/i*86-mingw32_nt-gcc.rul now link against -lmingw32 instead
of -lmgw32.
- include/schily/stat.h now defines S_IREAD/S_IWRITE/S_IEXEC
These macros are available on typical UNIX systems but not
on Android. The definition comes from UNIX V7 and is not in
POSIX. Needed by SCCS and the Bourne Shell
- include/schily/wait.h now defines WIFCONTINUED() if needed
- include/schily/wchar.h now defines mbtowc() to mbrtowc() if
needed (e.g. on Android)
- include/schily/ccomdefs.h now correctly knows about the GCC
release that introduced __attribute__ (used).
- Android is not POSIX (by not defining various functions as functions
in libc as required by POSIX) because it tries to define many
functions that are part of the standard as inline macros in
include files only. This breaks autoconf, so we needed to rewrite
some tests (e.g for getpagesize, tcgetpgrp, tcsetpgrp)
- The Schily autoconf system has been enhanced to support cross
compilation. Schily autoconf is based on GNU autoconf and
GNU autoconf does not support cross compilation because it needs
to run scripts on the target system for some of the tests.
The "configure" script that is delivered with the Schily makefile
system runs 718 tests and 68 of them need to be run on the target
system.
The Schily autoconf system now supports a method to run these 65
tests natively on a target system. You either need a machine with
remote login features or you need an emulator with a method to
copy files into the emulated system and to run binaries on the
emulated system as e.g. the Android emulator.
We currently deliver three scripts for "remote" execution of
programs on the target system:
runrmt_ssh runs the commands remove via ssh
runrmt_rsh runs the commands remove via rsh
runrmt_android runs the commands remove via the debug bridge
If you need to remotely run programs on a system that is not
supported by one of there three scripts, you need to modify one
of them to match your needs.
To enable Cross Compilation use the following environment variables:
CONFIG_RMTCALL= Set up to point to a script that does
the remote execution, e.g.:
CONFIG_RMTCALL=`pwd`/conf/runrmt_ssh
CONFIG_RMTHOST= Set up to point to your remote host, e.g.:
CONFIG_RMTHOST=hostname
or
CONFIG_RMTHOST=user@hostname
use a dummy if you like to use something
like to the Android emulator.
CONFIG_RMTDEBUG= Set to something non-null in order to
let the remote execution script mark
remote comands. This will result in
configure messages like:
checking bits in minor device number... REMOTE 8
Note that smake includes automake features that automatically
retrieve system ID information. For this reason, you need to overwrite
related macros from the command line if you like to do a
cross compilation.
Related make macros:
K_ARCH= # (sun4v) Kernel ARCH filled from uname -m / arch -k
M_ARCH= # (sun4) Machine filled from arch
P_ARCH= # (sparc) CPU ARCH filled from uname -p / mach
OSNAME= # sunos, linux, ....
OSREL= # 5.11
OSVERSION= # snv_130
CCOM= # generic compiler name (e.g. "gcc")
CC_COM= # compiler to call (name + basic args)
ARCH= overwrites M_ARCH and P_ARCH
It is usually suffucient to set ARCH and OSNAME.
In order to use a cross compiler environment instead of a native compiler,
set the make macro CC_COM to something different than "cc".
If you are on Linux and like to compile for Android, do the following:
1) set up CC acording to the instructions from the cross compiler
tool chain
- Several programs no longer test for HAVE_DEV_* but for HAVE__DEV_*
as we did switch from hand written tests for /dev/tty, /dev/null
and similar to AC_CHECK_FILES(/dev/tty /dev/null /dev/zero)
- The Makefile system now links dynamic libraries on Mac OS X against
libgcc_s.1 instead of libgcc.
Libschily:
- New function permtostr() in libschily allows to convert a
mode_t like stat.st_mode into a chmod compliant string like:
u=rw,g=r,o=r
that is accepted by libschily::getperm() to allow a conversion
back to a mode_t variable.
- libschily::rename() now uses mktemp() to temorarily save the
rename target file.
- comerr() now maps exit codes that would fold to '0' to EX_CLASH
which is -64
- New functions zerobytes() and cmpmbytes() added to libschily.
- New functions strstr() and wcsstr() added to libschily.
- libschily/fexec.c moved the workaround against the Mac OS X linker
for "environ" upwards to cover the new code also.
- Fixed libschily/gettimeofday.c to compile with MSC
- Fixed libschily/sleep.c to compile with MSC
- Fixed libschily/usleep.c to be empty with MSC as sleep.c includes
a working usleep()
- libschily/gethostname.c enhanced to support Win-DOS with cl.exe
- libschily/uname.c New function to support Win-DOS with cl.exe
- libschily/dirent.c New functions: opendir()/closedir()/readdir()
to support Win-DOS with cl.exe
- libschily/kill.c New function to support Win-DOS with cl.exe
- libschily/stdio/fgetline.c 64 bit speedup by calling fgets() in
case that getc() is not a macro.
- libschily/stdio/fgetstr.c 64 bit speedup by calling fgets() in
case that getc() is not a macro.
- libschily/chown.c new to support Win-DOS with cl.exe
Libparanoia (Ported/enhanced by J鰎g Schilling, originated by Monty xiphmont@mit.edu):
Libedc (Optimized by J鰎g Schilling, originated by Heiko Ei遞eldt heiko@hexco.de):
Libcdrdeflt:
Libdeflt:
Libfind:
- libfind/find.c disables -exec in case there is no fork().
This is in order to support MINGW
Libfile:
Libhfs_iso:
Libsiconv:
Libscg:
- libscg::scsi-aix.c was updated with some experimental code to support
two new SCSI kernel interfaces on AIX.
- Allow to disable the SCSI low level transport adoption layer
from libscg by adding -DNO_SCSI_IMPL
- libscg/scsihack.c now supports the MSC compiler
- Several small changes to work around oddoties fount in MS include files
- Trying to better support AIX again.
Libscgcmd:
Libmdigest:
Rscsi:
Cdrecord:
- Several changes to support mingw and MSC
Cdda2wav (Maintained/enhanced by J鰎g Schilling, originated by Heiko Ei遞eldt heiko@hexco.de):
- Several changes to support mingw and MSC
Readcd:
- Better algorithm for -edc-corr
Scgcheck:
- Several changes to support mingw and MSC
Scgskeleton:
Btcflash:
Mkisofs (Maintained/enhanced by J鰎g Schilling since 1997, originated by Eric Youngdale):
- The mkisofs diagnostic tools now support MSC that does not support
POSIX terminal handling.
HELIOS TODO:
- Add the HELIOS UNICODE mapping code. This needs to be done
at UCS-2 level for Joliet and UDF (instead of UTF-8) and only
for Rock Ridge (in case of a UTF-8 based target locale) using
UTF-8 based translations.
- Make the Apple extensions work again with "mkisofs -find"
TODO:
- Support correct inode numbers for UDF hardlinks
- Support sockets, pipes, char/blk-dev specials with UDF
- read Joliet filenames with multi-session if no TRANS.TBL
or RR is present. I am looking for a volunteer for this task!
Note that this can never be 100% correct as there is no relation
between the names on the master (UNIX) filesystem, the ISO-9660
names and the Joliet names. Only the Rock Ridge names are
untranslated with respect to the original files on the
master (UNIX) filesystem.
- add libecc/edc for CDI and similar.
CYGWIN NT-4.0 NOTES:
To compile on Cygwin32, get Cygwin and install it.
For more information read README.win32
NOTE: These tar archives are 100% POSIX compatible. GNU tar may get some
minor trouble. If you like a 100% POSIX compliant tar, get star from ftp://ftp.berlios.de/pub/star/
WARNING: Do not use 'winzip' to extract the tar file!
Winzip cannot extract symbolic links correctly.