mount [-F cdfs] [generic_options] -r [-ocdfs_options]
[special|mount_point]
mount [-F cdfs] [generic_options] -r [-ocdfs_options]
special mount_point
Description
The mount command attaches the cdfs filesystem to the
filesystem hierarchy at the location specified by mount_point,
which must already exist and must be a directory.
If mount_point already has contents prior to the mount operation,
the contents remain hidden until the cdfs filesystem is unmounted.
The generic_options are the options supported by the generic
mount command (see the generic
mount(1M)
command for information
about these options).
The cdfs-specific options affect the mode of operation of the CDROM
and are used to set default values.
The CDROM media may or may not have values set for items such as the
User ID (UID),
Group ID (GID), permissions, etc.
If a value is not recorded on the CDROM,
a default value is assigned by the software.
The default value is either taken from the
/etc/conf/pack.d/cdfs/space.c file,
or from the value specified with the -o
option of the mount command.
Once the media is mounted,
a default value can only be changed by using the
cddevsuppl(1M)
or
cdmntsuppl(1M)
commands, or by unmounting (or remounting)
the media and specifying
the desired values using the -o option.
cdfs-specific options
-F cdfs
Specify the cdfs FSType. If -F cdfs
is not specified heuristics similiar to those used
by
fstyp(1M)
are used to determine the file
system type.
NOTE:
This command executes faster if it is not required
to autodetect file system types. If possible, specify
the -F cdfs.
-r
Mounts the filesystem as read-only.
This option or the -o ro option is required.
-o
Specifies the cdfs-specific options in a comma-separated list of
options from the list below.
The following mount options are implicitly set when the CD is mounted
without specifing the -o option:
ro
suid
The extension related options susp, rrip,
and joliet
The values defined in the /etc/conf/pack.d/cdfs/space.c file.
The ISO-9660/High-Sierra extension Enabling/Disabling options
noextend
susp | nosusp (the System Use Sharing Protocol -- SUSP)
rrip | norrip the Rock Ridge Interchange Protocol -- RRIP)
joliet | nojoliet (the Joliet extension)
have the following interactions when explicitly specifying the
following options:
Explicitly specifying noextend has the effect of Implicitly
specifying all the extension Disabling options whose Disabling disposition
has not been Explicitly specified (currently this is equivalent to setting
susp, rrip, and joliet).
noextend takes precedence over all the other extension
Enabling/Disabling options and is is mutually exclusive with all
the extension Enabling options (i.e. susp, rrip,
and joliet).
Explicitly specifying the extension Enabling option susp has
the effect of Implicitly specifying the extension Enabling
option of all SUSP compliant extensions whose Enabling/Disabling
disposition has not been Explicitly specified (currently this applies
only to the RRIP extension) and Implicitly specifying the extension
Disabling option of all non-SUSP compliant extensions whose
Enabling/Disabling disposition has not been Explicitly specified
(currently this applies only to the Joliet extension).
Explicitly specifying the extension Disabling option nosusp
has the effect of Implicitly specifying the extension Disabling option
of all SUSP compliant extensions whose Enabling/Disabling disposition has
not been Explicitly specified (currently this applies only to the RRIP
extension) and Implicitly specifying the extension Enabling option of
all non-SUSP compliant extensions whose Enabling/Disabling disposition
has not been Explicitly specified (currently this applies only to the
Joliet extension).
Explicitly specifying an SUSP compliant extension Enabling option has
the effect of Implicitly specifying the extension Enabling option
susp (currently this applies only to the RRIP extension).
The ISO-9660/High-Sierra extension Enabling/Disabling options
rrip | norrip
joliet | nojoliet
have the following interactions with each other when they are Explicitly
specifyied:
Explicitly specifying an extension Enabling option has the effect of
and Implicitly specifying the extension Disabling option of those
extensions whose Enabling/Disabling disposition has not been Explicitly
specified.
Explicitly specifying an extension Disabling option has the effect of
and Implicitly specifying the extension Enabling option of those extensions
whose Enabling/Disabling disposition has not been Explicitly specified.
For example specifying the nojoliet mount option will have
the effect of specifying the susp,rrip mount option.
The following are the cdfs_options to -o:
ro
Mounts the resource read-only.
This option or the -r option are required.
suid | nosuid
Allows or disallows execution of Setuid programs.
The default is suid.
susp | nosusp
Enables/disables the processing of all System Use Sharing Protocol
(SUSP) compliant extensions to the ISO-9660/High-Sierra specification.
The SUSP defines a mechanism for which the System Use Area
of a Directory Record may be shared by multiple independent
organizations, for example,
Rock
Ridge Interchange Protocol (RRIP).
The nosusp flag prevents the processing of all SUSP-compliant extensions,
even if recorded on the media.
The default is susp.
rrip | norrip
Enables/disables the processing of all the Rock Ridge Interchange
Protocol (RRIP) extensions to the ISO-9660/High-Sierra specification.
The RRIP is a SUSP-compliant set of extensions that provide POSIX file
semantics within the context of an ISO-9660/High-Sierra file-system.
The rrip flag requires that the susp flag also be set.
The norrip flag prevents the processing of all RRIP extensions even if recorded on
the media.
The default is rrip.
joliet | nojoliet
Enables/Disables the processing of the Joliet extensions to the
ISO-9660/High-Sierra specification.
Joliet utilizes the Supplementary Volume Descriptor (SVD) feature of
the ISO-9660/High-Sierra specification to manage a Directory
Hierarchy and by doing so eliminates several ISO-9660/High-Sierra
restrictions such as File/Directory Identifiers lengths, character sets
(Identifiers are recored within the Unicode (i.e. ISO10646) character set),
and Directory Hierarch depth.
The default is joliet.
noextend
Disallows the processing of all extensions to the ISO-9660/High-Sierra
specification (SUSP and non-SUSP alike), even if recorded
on the media.
Currently, noextend is equivalent to
nosusp, norrip, nojoliet.
However, noextend will apply to future ISO-9660/High-Sierra extensions.
lsectsz=<value>
Defines the logical sector size of the media,
as defined by the ISO-9660 and/or the High Sierra specifications.
If not specified, the system will automatically determine the logical sector size of the media.
The user need not specify this option. However, if specified,
the value must exactly match the media being mounted.
uid=owner
Defines the default UID to be used for the files and/or directories
that do not have a UID recorded on the CDROM.
owner is a numeric UID value or a user name.
See the
cdmntsuppl(1M)
command for more information.
The default is defined by variable cdfs_InitialUID in
/etc/conf/pack.d/cdfs/space.c.
gid=group
Defines the default GID to be used for the files and/or directories
that do not have a GID recorded on the CDROM.
group is a numeric GID value or a group name.
See the
cdmntsuppl(1M)
command
in the X/Open
CD-ROM Support Component Preliminary Specification
for more information.
The default is defined by variable cdfs_InitialGID in
/etc/conf/pack.d/cdfs/space.c.
fperm=mode
Defines the default file permissions to be used for the files
that do not have permissions recorded on the CDROM.
The value mode is an absolute value (a 4-digit octal),
or symbolic value.
See the
chmod(1)
and
cdmntsuppl(1M)
commands.
The default is defined by variable cdfs_InitialFPerm in
/etc/conf/pack.d/cdfs/space.c.
dperm=mode
Defines the default directory permissions to be used for the directories
that do not have permissions recorded on the CDROM.
The value mode is an absolute value (a 4-digit octal), or symbolic value.
See the
chmod(1)
and
cdmntsuppl(1M)
commands.
The default is defined by variable cdfs_InitialDPerm in
/etc/conf/pack.d/cdfs/space.c.
uidmap=filename
Sets User ID mappings.
The UID and user names associated with a file
or directory on the CDROM might not be valid on the host system.
The uidmap function maps the CDROM UIDs to
valid host system UIDs.
Entries in filename are specified as
the value recorded on the CDROM, colon (:), followed by the
UID or user name as found in the user database.
Multiple entries are separated by new lines.
For example, filename may contain the entries:
1500:418
1006:stanley
The first entry maps the UID of 1500 (on the CDROM)
to a UID of 418.
The second entry maps
the UID of 1006 (on the CDROM) to the user named stanley.
See the
cdmntsuppl(1M)
command.
The maximum number of mappings allowed is defined in sys/cdrom.h.
gidmap=filename
Sets Group ID mappings.
The GID and group names associated with a file
or directory on the CDROM might not be valid on the host system.
The gidmap function maps the CDROM GIDs to
valid host system GIDs.
Entries in filename are specified as
the value recorded on CDROM, colon (:), followed by the
GID or group name as found in the group database.
Multiple entries are separated by new lines.
See the
cdmntsuppl(1M)
command.
The maximum number of mappings allowed is defined in sys/cdrom.h.
nmconv=a
Sets the filename conversion mode for the ISO-9660/High-Sierra file and directory names
recorded on the CDROM.
The nmconv option lets you specify how
the file and directory names are seen by the user on the host system.
Non-ISO-9660 and non-High-Sierra names are not converted.
The default is defined by variable cdfs_InitialNmConv in
/etc/conf/pack.d/cdfs/space.c.
a is some combination of the following:
c
Names are not converted; the names used are the ones recorded on the CDROM.
l
Converts upper case letters to lower case.
m
Suppresses the version number and the separator (;).
See the
cdmntsuppl(1M)
page for more information.
dsearch=b
Defines how the directory's search permissions (the execute bit) are to be determined.
b is one of the following:
x
Search permission is granted only if the user has execute permissions
(as recorded on the CDROM or using the dperm option above).
See the
cdmntsuppl(1M)
command for more information.
s
Search permission is granted only if the user has read or execute permissions
(as recorded on the CDROM or using the dperm option above).
See the
cdmntsuppl(1M)
command for more information.
The default is defined by variable cdfs_InitialDirSearch in
/etc/conf/pack.d/cdfs/space.c.
devmap=filename
Maps the CDROM major and minor numbers assigned to device nodes
to valid host system major and minor numbers.
The value for filename is a file that contains one entry for each device file
in the form:
device_file_pathnew_majornew_minor
Fields are separated by white space (tabs or spaces) and entries are separated by a
new line.
Anything beyond the third field in a line is treated as a comment.
See the
cddevsuppl(1M)
command for more information.
Usage
After cdfs mounts an ISO-9660/High-Sierra CD-ROM or image,
only one of the extensions (i.e. either RRIP, Joliet, or Pure
ISO-9660) will be Active.
How an extension becomes the Active Extension is determined by the following:
The set of extensions enabled for processing at mount time.
The set can be one of the following:
RRIP and/or Joliet
Pure ISO-9660/High-Sierra (i.e. no extensions)
The set of extensions that exist on the CD-ROM media or image.
The set at a minimum consists of Pure ISO-9660/High-Sierra and may
also include RRIP and Joliet.
(Actually the CD-ROM media or image may contain other extension types
but they are not considered in the set since this implementation
currently only supports the above mentioned extensions.)
Applying rules as illustrated by the following table to the set of
enabled and existing extensions:
Row Headings are
Extensions Enabled to
be Processed
Column Headings are Existing Extension on CD-ROM
Pure ISO-9660
Pure ISO-9660
RRIP
Pure ISO-9660
Joliet
Pure ISO-9660
RRIP
Joliet
noextend
Pure ISO-9660
Pure ISO-9660
Pure ISO-9660
Pure ISO-9660
rrip
Pure ISO-9660
RRIP
Pure ISO-9660
RRIP
joliet
Pure ISO-9660
Pure ISO-9660
Joliet
Joliet
rrip joliet
Pure ISO-9660
RRIP
Joliet
RRIP
Active Extension After Mount
In summary, if both rrip and joliet are enabled for
processing and both rrip and joliet exist on the
CD-ROM media or image, rrip takes precedence and will become
the Active Extension.
This was done for compatibility.
Exit codes
The mount command exits with one of the following values:
0
Successful completion.
1
The mount point or device file specified does not exist.
1
Device does not contain a CDROM filesystem.
1
Access is denied.
2
Only a privileged user can change any settings.
3
Too many user, group, or file mappings.
The sys/cdrom.h header file defines the
maximum number of mappings allowed.
(See the devmap, gidmap, and uidmap options.)
4
Parameter error.
4
Bad format in filename
(used when setting/resetting the UID, GID and major/minor numbers).
5
The filename specified with the devmap option is not a device file.
Examples
For example, the command line:
mount -F cdfs -r -o nosuid,dperm=544,nmconv=l
mounts cdfs read-only, disallows setuid,
sets the default directory permissions to 544 (read/execute for owner,
read for group and others),
and converts upper case filenames to lower case.