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