mount_acfs(1) mount_acfs(1)
NAME
mount_acfs- mount an Xsan volume
SYNOPSIS
mount_acfs [options] <volume> <dir>
DESCRIPTION
mount_acfs is a mount helper utility that mounts an Xsan volume on
client machines. This command is normally executed by mount(8m) when
the -t acfs option is used.
Each client file system must communicate with a File System Manager
(FSM) running either locally or on a remote host. The FSM manages all
the activity for the client in terms of storage allocation and meta-
data. Data transfers go directly between disks and the client.
OPTIONS
Options supported by the mount command:
-f LINUX ONLY
Fakes the mount process but updates the /etc/mtab file. The
mount call will fail if the mtab entry already exists.
-n LINUX ONLY
Mounts the filesystem without updating the /etc/mtab file.
-v Verbose mode.
Additional options may be specified in the /etc/fstab file or on the
mount(8) command line via the -o parameter. The -o parameter should be
specified only once. If multiple options are needed, they should fol-
low the -o in a comma-separated list.
ro Default: rw
Mount the file system read-only.
rw Default: rw
Mount the file system read/write.
noexec Default: off
Do not allow the execution of programs resident on this file
system.
nosuid Default: off
When executing programs resident on this file system, do not
honor the set-user-ID and set-group-ID bits.
threads=<n>
Default: 12
Determines the number of kernel threads that are created.
threads will show up as cvfsiod processes in the output of ps.
Each client file system dedicates one thread to managing a
socket used to communicate with the FSM. The other threads han-
dle unsolicited messages.
This setting does not affect other kernel threads, for example,
cvfsd, cvfsbufiod, cvfsflusher, cvfs_dputter.
The minimum value allowed is 12.
stripeclusters=<n>
Default: 8
In certain cases, such as with using JBOD devices it may be pos-
sible to over-load their command queues using Xsan. If this
occurs, the I/O concurrency can be reduced by reducing the num-
ber of concurrent stripeclusters the file system uses. The
reduction is at the cost of performance.
buffers=<yes/no>
Default: yes
When set to yes, the file system will use buffer caching for
unaligned I/O.
diskless=<yes/no>
Default: no
If the diskless option is set to yes then the mount will suc-
ceed, even if the volume's disks are unavailable. Any subsequent
I/O will fail until the volume's disks are visible through the
Xsan portmapper.
atimedelay=<yes/no>
Default: no
Perform lazy atime updates. This option improves performance by
waiting until closing a file before updating the atime value of
the file. This reduces extra network traffic and latency linked
to atime updates.
nrtiotokenhold=<n>
Default: 60
The QOS Token Hold Time (nrtiotokenhold) parameter is only
applicable when using the Xsan Quality of Service (QOS) feature
for real-time I/O. The parameter determines the number of sec-
onds that a client storage pool will hold on to a non-realtime
I/O token during periods of inactivity. If no I/O is performed
on a storage pool within the specified number of seconds, the
token will be released back to the FSM.
The parameter should be specified in five second increments; if
the parameter is not a multiple of five, it will be rounded up
automatically.
auto_concwrite=<yes/no>
Default: no
When set to yes, allows multiple threads to write to files con-
currently.
Note: setting auto_concwrite=yes requires that sparse=no also be
specified. Also, protect_alloc=yes is disallowed with auto_con-
cwrite=yes.
verbose=<yes/no>
Default: no
When set to yes, mount_acfs will display configuration
information about the volume being mounted.
debug=<yes/no>
Default: no
When set to yes, mount_acfs will display debugging infor-
mation. This can be useful in diagnosing configuration or
disk problems.
mnt_retrans=<n>
Default: 1
Indicates the number of retransmission attempts the file
system will make during the execution of the mount(2)
system call. Until the volume is mounted, the kernel will
only retransmit messages to the FSM mnt_retrans times.
This parameter works in conjunction with the IBmnt_recon
parameter. This can help reduce the amount of time a
mount command will hang during boot; see the mnt_type
option.
mnt_recon=<hard/soft>
Default: soft
Controls whether after mnt_retrans attempts at contacting
the FSS during the mounting and unmounting of a volume,
the kernel will either give up or continue retrying for-
ever. It is advisable to leave this option at soft so
that an unresponsive FSS does not hang the client during
boot.
mnt_type=<bg/fg>
Default: fg (foreground)
Setting mnt_type to bg will cause the mount to run in the
background if the mount of the indicated volume fails.
mount_acfs will retry the mount mnt_retry number of times
before giving up. Without this option, an unresponsive
FSM could cause a machine to hang during boot while
attempting to mount Xsan volumes.
During background mounts, all output is re-directed to
/var/adm/SYSLOG.
mnt_retry=<n>
Default: 100
If a mount attempt fails, retry the connection up to <n>
times.
retrans=<n>
Default: 5
Indicates the number of attempts that the kernel will
make to transmit a message to the FSM. If no response to
a transmitted message arrives in the amount of time indi-
cated by the timeout parameter, the request will be
retransmitted. If the volume was mounted with the
recon=soft parameter, the file system will give up after
retrans attempts at sending the message to the FSM and
will return an error to the user.
recon=<hard/soft>
Default: hard
This option controls whether after retrans attempts at
sending a message to the FSM, the file system will give
up or continue retrying forever. For hard mounted vol-
umes, the kernel will retry the connection attempt for-
ever, regardless of the value of the retrans field. For
soft mounted volumes, the kernel will only try retrans
number of times before giving up and returning an error
of ETIME (62).
timeout=<n>
Default: 100 (ten seconds)
The timeout value, in tenths of a second (0.1 seconds) to
use when sending message to the FSM. If no response is
received from the FSM in the indicated period the request
is tried again. On heavily loaded systems, you may want
to adjust the timeout value higher.
syslog=<none/notice/info/debug>
Default: notice During normal operations, certain mes-
sages will be logged to the system console using the sys-
log facility. debug is the most verbose, with notice
being reserved for critical information. It is important
to note that the syslog level is global per system, not
unique to each volume. Changing the level for one volume
will affect all other Xsan volumes.
blkbufsize=<n>
Default: 64 K
This option sets the maximum buffer size, in bytes, for
the unaligned I/O transition buffer. Use caution when
setting this option since values that are too small may
degrade performance or produce errors when performing
large unaligned I/O.
dircachesize=<n>
Default: 10 MB
This option sets the size of the directory cache. Direc-
tory entries are cached on the client to reduce client-
FSM communications during directory reads. Note: the
directory cache on a client is shared across all mounted
Xsan volumes. If different values of dircachesize are
specified for multiple file systems, the maximum is used.
When applying this setting, ensure that the system has
sufficient kernel memory.
Can be specified in bytes (e.g. 2097152), kilobytes (e.g.
2048k), or megabytes (e.g. 2m).
auto_dma_read_length=<n>
Default: 1048577 Bytes (1MB + 1)
The minimum transfer size used for performing direct DMA
I/O instead of using the buffer cache for well-formed
reads.
The minimum value is the cachebufsize. By default, well-
formed reads of greater than 1 Megabyte will be trans-
ferred with DMA; smaller reads will use the buffer cache.
Auto_dma_read_length can be specified in bytes (e.g.
2097152), kilobytes (e.g. 2048k), or megabytes (e.g. 2m).
auto_dma_write_length=<n>
Default: 1048577 Bytes (1MB + 1)
The minimum transfer size used for performing direct DMA
I/O instead of using the buffer cache for well-formed
writes. All well-formed writes equal to, or larger than
this value will be transferred with DMA. All write trans-
fers of a smaller size use the buffer cache.
The minimum value is the cachebufsize. By default, well-
formed writes of greater than 1 Megabyte will be trans-
ferred with DMA; smaller writes will use the buffer
cache. Writes larger than this value, that are not well-
formed will use a temporary memory buffer, separate from
the buffer cache.
Auto_dma_write_length can be specified in bytes (e.g.
2097152), kilobytes (e.g. 2048k), or megabytes (e.g. 2m).
cvnode_max=<n>
Default: varies by platform.
This option sets the maximum number of cvnode entries
cached on the client. Caching cvnode entries improves
performance by reducing Client-FSM communication. How-
ever, each cached cvnode entry must be maintained by the
FSM as well. In environments with many Xsan clients the
FSM may be overloaded with cvnode references. In this
case reducing the size of the client cvnode cache will
alleviate this issue.
max_dma=<n>
AIX AND LINUX ONLY
Default: varies by platform.
This option tells the kernel the maximum DMA size a user
process can issue. This can impact the number of concur-
rent I/Os the file system issues to the driver for a user
I/O. There are other factors that can also limit the num-
ber of concurrent I/Os. The default is 256m on AIX and
32m on Linux. WARNING: Incorrectly setting this value
may degrade performance or cause a crash/hang.
max_dev=<n>
AIX ONLY
Default: I/O driver IOCINFO max_transfer
This option tells the kernel the maximum I/O size to use
when issuing I/Os to the underlying disk driver handling
a LUN. The file system attempts to get the maximum I/O
size using the IOCINFO ioctl. Since the ioctl is not
always reliable, this mount option exists to override the
ioctl return value. Example usage max_dev=1m or
max_dev=256k. WARNING: Incorrectly setting this value
may result in I/O failures or cause a crash/hang.
sparse=<yes/no>
Default: yes.
Some utilities detect "holes" in a file and assume the
file system will fill the hole with zeroes. To ensure
that Xsan writes zeroes to allocated, but uninitialized
areas on the disk, set sparse=yes.
DISK DEVICES
mount_acfs will query the local portmapper for the list
of all accessible Xsan disk devices. Xsan disks are rec-
ognized by their label. This list is matched with the
list of devices for each storage pool in the volume. If
any disk is missing, I/O will be prohibited, and you will
receive I/O errors.
RECONNECT
A socket is maintained for each unique Xsan client file system
for sending and receiving commands to and from the FSM. If the
socket connection is lost for any reason, it must be recon-
nected.
There are two daemons involved in re-establishing the connection
between an Xsan client and the FSM. The first is the socket
input daemon, which is a dedicated daemon that handles all input
from the FSM. The second is the reconnect daemon, which handles
the work of re-establishing the logical connection with the FSM.
Both of these daemons appear as cvfsd in the output from ps.
Messages will be printed on the system console and to syslog
during reconnect processing; the verbosity of the messages dis-
played can be controlled via the syslog= parameter and cvdb(1).
When the socket input daemon detects that the connection has
been lost, it will attempt to first connect to the fsm portmap-
per process, fsmpm(8). Once it has succeeded and has the port
number of the fsm(8)
to use, it attempts to create a new socket to the FSM using the
port number returned by fsmportmapper.
If no response is received from either the Xsan portmapper or
the FSM, the daemon will pend for the amount of time specified
by the timeout= parameter. The socket input daemon will attempt
to reconnect to the FSM forever.
If any of the configuration parameters in the FSM configuration
file changed, then the connection will be terminated, and no
further I/O will be allowed. The only recourse will be to
unmount and remount the volumes. See snfs_config(5) (part of
the cvfs_server product) for more information on configuring the
FSM.
INTERRUPTIBLE SLEEPS
Whenever a process must go to sleep in the Xsan file system, the
sleep is interruptible, meaning that the process can be sent a
signal and the operation will fail with an error (usually
EINTR). The only exceptions are when a process is executing the
exit(2) system call and is closing out all open files; due to
Unix limitations, processes are immune to signals at that point.
EXAMPLES
To mount a volume that is described by the FSS configuration
file myvolume.cfg on that host:
mount -t acfs myvolume /usr/tmp/foo
SEE ALSO
cvfsd(8), cvdb(1), mount(1m), chkconfig(1m)
Xsan File System September 2009 mount_acfs(1)
Mac OS X 10.9.1 - Generated Sun Jan 5 14:00:48 CST 2014
