fstab(4) fstab(4) NAME fstab - static information about filesystems DESCRIPTION The file /etc/fstab describes the filesystems and swapping partitions used by the local machine. The system administrator can modify it with a text editor. It is read by commands that mount, unmount, and check the consistency of filesystems. The file consists of a number of lines of the form: filesystem directory type options frequency pass For example: /dev/root / xfs rw 0 0 Fields are separated by white space; a `#' as the first non-white space character indicates a comment. The entries from this file are accessed using the routines in getmntent(3), which return a structure of the following form: struct mntent { char *mnt_fsname; /* filesystem name */ char *mnt_dir; /* filesystem path prefix */ char *mnt_type; /* e.g. xfs, nfs, proc, or ignore */ char *mnt_opts; /* rw, ro, hard, soft, etc. */ int mnt_freq; /* dump frequency, in days */ int mnt_passno; /* parallel fsck pass number */ }; This structure is defined in the <mntent.h> include file. To compile and link a program that calls getmntent(3), follow the procedures for section (3Y) routines as described in intro(3). The mnt_dir field is the full pathname of the directory to be mounted on. The mnt_type field determines how the mnt_fsname and mnt_opts fields are interpreted. Here is a list of the filesystem types currently supported, and the way each of them interprets these fields: xfs mnt_fsname must be a block special device (for example, /dev/root) or a logical volume. efs mnt_fsname must be a block special device (for example, /dev/root) or a logical volume. udf mnt_fsname must be a block special device (for example, /dev/dsk/dks0d4vol). To mount a DVD, the block device for the volume should be used. proc mnt_fsname should be the /proc directory. See proc(4). fd mnt_fsname should be the /dev/fd directory. See fd(4). hwgfs mnt_fsname should be the /hw directory. See hwgfs(4). nfs mnt_fsname is the path on the server of the directory to be served. (NFS option only). cdfs A synonym for type iso9660 (see below). This type is required for MIPS ABI compliance. iso9660 mnt_fsname formerly was a generic SCSI device. With 6.2 plus patches, or later releases, it is the volume partition of the raw disk (for example, /dev/rdsk/dks0d7vol). See ds(7M). This filesystem type is used to mount CD-ROM discs in ISO 9660 (with or without Rock Ridge extensions) and High Sierra formats. eoe.sw.cdrom must be installed in order to use the iso9660 filesystem type. dos mnt_fsname is normally a floppy device, or other removable media using the disk driver. These are located in the directory /dev/rdsk (for example, /dev/rdsk/fds0d2.3.5). See dksc(7M) and smfd(7M). hfs mnt_fsname must be either a floppy device or a raw disk device. Floppy devices are located in the directory /dev/rdsk (for example, /dev/rdsk/fds0d2.3.5hi). See smfd(7M). Raw disk devices are located in the directory /dev/rdsk (for example, /dev/rdsk/dks0d4vol). See ds(7M). swap mnt_fsname should be the full pathname to the file or block device to be used as a swap resource. cachefs mnt_fsname should be the filesystem name for the backing filesystem to be mounted as a cache filesystem. This will either be the special filename (for example, /dev/dsk/dks0d4s7) or host:path. rawdata mnt_fsname may be the block/char special device of the partition or logical volume to reserve (mnt_dir is ignored). This entry enables the system utilities (for example, mkfs, mount, and so on) to treat the raw partition or logical volume as 'mounted', preventing the partition from inadvertently being overwritten. Any packages that require dedicated raw partitions (databases and so on) should consider placing a rawdata entry in fstab(4). If the mnt_type is specified as ignore, then the entry is ignored. This is useful to show disk partitions not currently used. mnt_freq is not used in current IRIX systems. mnt_passno can be used to control the behavior of parallel filesystem checking on bootup, see fsck(1M). The mnt_opts field contains a list of comma-separated option words. Some mnt_opts are valid for all filesystem types, while others apply to a specific type only. Options valid on all filesystems (the default is rw) are: rw Read/write. ro Read-only. noauto Ignore this entry during a mount -a command, to allow the definition of fstab entries for commonly-used filesystems that should not be automatically mounted. grpid Causes a file created within the filesystem to have the group ID of its parent directory, not the creating process's group ID. nosuid Setuid execution not allowed for non-superusers. This option has no effect for the superuser. nodev Access to character and block special files is disallowed. Mandatory Access Control options can be specified using a list of colon- separated options: eag:option{:option ...} where option is one of the following: mac-default=label Use the specified label for all files on the specified file system that do not have a MAC label. mac-ip=label Use the specified label for communications to other systems regarding this file system. A number of filesystem types also support the debug option, but the meaning varies with the filesystem type. Options specific only to xfs, efs and nfs filesystems are: quota Disk quota accounting enabled, and limits enforced. Options specific to xfs filesystems are: attr2/noattr2 The attr2 option enables a more efficient extended attributes storage representation. It is supported from Irix 6.5.29 onward and is not enabled by default; kernel versions earlier than this will not mount filesystems that have had attr2 enabled. The noattr2 option, which is the default, can be used to prevent this updated representation from being used when extended attributes are set on an inode. See attr(1) for further details about extended attributes. biosize The biosize (buffered I/O size) option can be used to set the default preferred buffered I/O size for filesystem. The default preferred I/O size is 64K. The biosize option can be used to decrease the preferred I/O size. The size must be expressed as the log (base2) of the desired I/O size. Valid values for this option are 14 through 16, inclusive (e.g. 16K, 32K, and 64K bytes). On machines with 4K size pages, 13 (8 Kbytes) is also a valid size. The preferred buffered I/O size can also be altered on a per-file basis using the fcntl system call. See fcntl(2) for further details. inode64 The inode64 option is used to indicate that xfs is allowed to create inodes at any location in the filesystem, including those which will result in inode numbers occupying more than 32 bits. This is provided for backwards compatibility, but causes problems for backup applications like networker. dmi Enable the Data Management Interface event callouts. logbsize Set the size of the in memory log buffers. With version 1 logs, the size could be either 16K or 32K. With version 2 logs, the range of sizes include 16K, 32K, 64K, 128K and 256K. If no logbsize is specified then the default log buffer size is 16K for machines with 32Mb of physical memory or less or a log buffer size of 32K otherwise. Using a larger log buffer size may improve performance on some metadata intensive workloads. logbufs Set the number of in memory log buffers. Valid numbers range from 2-8 inclusive. The default value is 8 buffers for filesystems with a blocksize of 64K, 4 buffers for filesystems with a blocksize of 32K, 3 buffers for filesystems with a blocksize of 16K, and 2 buffers for all other configurations. Increasing the number of buffers may increase performance on some workloads at the cost of the memory used for the extra log buffers and their associated control structures. noalign Data allocations will not be aligned at stripe unit boundaries. noatime Access timestamps are not updated when a file is read. norecovery The filesystem will be mounted without running log recovery. If the filesystem was not cleanly unmounted, it is likely to be inconsistent when mounted in norecovery mode. Some files or directories may not be accessible because of this. Filesystems mounted norecovery must be mounted read-only or the mount will fail. osyncisdsync Make writes to files opened with the O_SYNC flag set behave as if the O_DSYNC flag had been used instead. This can result in better performance without compromising data safety. However if this option in effect, timestamp updates from O_SYNC writes can be lost if the system crashes. qnoenforce Disk quota accounting enabled, but limits are not enforced. pquota Project disk quota accounting enabled and limits enforced. pqnoenforce Project disk quota accounting enabled, but limits are not enforced. gquota Group disk quota accounting enabled and limits enforced. gqnoenforce Group disk quota accounting enabled, but limits are not enforced. sunit=value Used to specify the stripe unit for a RAID device or a xlv stripe volume. value has to be specified in 512-byte block units. If this option is not specified and the filesystem was made on a stripe volume or the stripe unit was specified for the RAID device at mkfs time, then the mount system call will restore the value from the superblock. For filesystems that are made directly on RAID devices, this option can be used to override the information in the superblock if the underlying disk layout changes after the filesystem has been mkfsed. If the filesystem is made on a xlv volume, then this will be done implicitly. swalloc If this option is specified, data allocations will be rounded up to stripe width boundaries when the current end of file is being extended and the file size is larger than the stripe width size. swidth=value Used to specify the stripe width for a RAID device or a xlv stripe volume. value has to be specified in 512-byte block units. If this option is not specified, and the filesystem was made on a stripe volume or the stripe width was specified for the RAID device at mkfs time, then the mount system call will restore the value from the superblock. For filesystems that are made directly on RAID devices, this option can be used to override the information in the superblock if the underlying disk layout changes after the filesystem has been mkfsed. If the filesystem is made on a xlv volume, then this will be done implicitly. This option is required if the -o sunit option has been specified. Also it has to be a multiple of the sunit option. wsync All operations that modify the filesystem are synchronous except for writes to user files (e.g. create, unlink, mv, truncate, etc.). This option can be used in conjunction with exporting a filesystem -wsync to obtain NFS write-synchronous semantics, if so desired. See exports(4) for further information. Options specific to efs filesystems (the default is fsck, noquota) are: raw=path The filesystem's raw device pathname (for example, /dev/rroot). fsck fsck(1M) invoked with no filesystem arguments should check this filesystem. nofsck fsck(1M) should not check this filesystem by default. noquota Disk quota accounting and limit enforcement disabled. lbsize=n The number of bytes transferred in each read or synchronous write operation. The value assigned to the lbsize option must be a power of two at least as large as the system page size. This value is returned by the getpagesize(2) system call and is normally either 4096 or 16384 depending on the system type. The current default for lbsize is the value in the fs_sectors field of the superblock of the filesystem. This was normally the number of "sectors per track" in the past, but that often fictitious value is no longer used. If not set on the mkfs command line, the maximum value of 128 sectors is used by IRIX 6.4 and later releases. An invalid size will cause the mount to fail with the error EINVAL. The maximum size is currently 65536. Note that less than lbsize bytes will be transferred if there are not lbsize contiguous bytes of the addressed portion of the file on disk. Options specific to dos filesystems. partition With a following number, as partition,#, where # is most often either 1 or 4, is used with type 5 (extended) filesystems to specify which partition to use. Otherwise type 5 filesystems are not supported. Options specific to iso9660 filesystems (the default is rw, which has no effect since CD-ROM discs are always read-only) are: setx Set execute permission on every file on the mounted filesystem. The default is to make an intelligent guess based on the first few bytes of the file. notranslate Don't translate ISO 9660 filenames to UNIX filenames. The default is to convert upper case to lower case and to truncate the part including and after the semicolon. cache=blocks Set the number of 2048 byte blocks to be used for caching directory contents. The default is to cache 128 blocks. noext Ignore Rock Ridge extensions. The default when the noext option is not specified is to use Rock Ridge extensions if present. susp Enable processing of System Use Sharing Protocol extensions to the ISO 9660 specification. This is the default. nosusp Disable processing of System Use Sharing Protocol extensions. This has the same effect as the noext option. rrip Enable processing of the Rock Ridge extensions. This is the default. norrip Disable processing of the Rock Ridge extensions. This is equivalent to the noext option. nmconv=[clm] This option is supplied for MIPS ABI compliance; some non-IRIX systems may implement it only for type cdfs, IRIX allows it with type iso9660 also. Only one of the three letters c, l, or m can be specified. This option controls filename translation. c has the same meaning as notranslate above. l requests translation to lower case (the IRIX default), and m suppresses the version number (also the IRIX default). vers=[2|3] Protocol version - version 2 supports filesystems upto 2GiB in size, version 3 support larger files and filesystems. Version 3 is available starting from Irix 6.5.28 and is the default where available. tsize=size Transfer size - affects the size of the internal buffer which is used by version 3 protocol to read data of the media. The default and the maximum is 48 KiB. The iso9660 filesystems can be mounted from a remote Irix host directly, i.e. bypassing the NFS server on the remote host, by specifying hostname:mountpoint for filesystem and iso9660 for type. The mountpoint must be exactly the same as the mountpoint where iso9660 filesystem is mounted on the remote host. If the remote host has more then one iso9660 filesystem mounted then only the first one can be accessed this way. In this case, the same options apply as with nfs (see below). Version 3 protocol is not supported if mounting iso9660 filesystems remotely. Options specific to hfs filesystems are: setx Set execute permission on every file on the mounted filesystem. The default is to set only read and write permission on files. If the NFS option is installed, the following options are valid for nfs filesystems: vers=n Use NFS protocol version n. (The default is to try version 3, falling back to version 2 if the version 3 mount fails.) bg If the first attempt fails, retry in the background. fg Retry in foreground. (Default) retry=n Set number of mount failure retries to n. (Default = 10000) rsize=n Set read transfer size to n bytes. This value will be rounded up to the nearest multiple of 512 bytes. The default is 8192 for NFS version 2. The default for NFS version 3 depends on the protocol used to communicate to the server: for the TCP protocol the default is always the same as set by nfs3_default_xfer system tunable, for the UDP the default is set to 16384 bytes if the route to the server is known to go through a router or when the Maximum Transmission Unit (MTU) of the interface used to get to the server is Ethernet-sized (about 1500 bytes) or less, otherwise the default is the same as for the TCP. The default value for the system tunable nfs3_default_xfer is 32768. The system tunable is used to adjust the default transfer size across all NFS mounts, for example, if 16384 is still too much for routers. setting it to 8192 gives the same default for version 3 as version 2. For NFS version 3, the read transfer size specified by the server will be used if it is smaller than either the default or what the user has specified. The upper limit for rsize and wsize depends on the protocol: for UDP it is 48 kilobytes, for TCP the recommended upper limit is 64 kilobytes. wsize=n Set write transfer size to n bytes. This value will be rounded up to the nearest multiple of 512 bytes. The default is the same as for the read size. For NFS version 3, the write transfer size specified by the server will be used if it is smaller than either the default or what the user has specified. timeo=n Set NFS timeout to n tenths of a second. (Default = 11) retrans=n Set number of NFS retransmissions to n. (Default = 5) port=n Set server UDP port number to n. (Default = 2049) hard Retry request until server responds. (Default) soft Return error if server doesn't respond. intr Allow requests to be interrupted by the following signals: SIGHUP, SIGINT, SIGQUIT, SIGKILL, SIGTERM, and SIGTSTP. This option is "on" by default and has been retained for backward compatibility. nointr Disallow requests to be interrupted by the following signals: SIGHUP, SIGINT, SIGQUIT, SIGKILL, SIGTERM, and SIGTSTP. (Requests are interruptible by these signals, by default.) acregmin=t Set the regular file minimum attribute cache timeout to t seconds. (Default = 3) acregmax=t Set the regular file maximum attribute cache timeout to t seconds. (Default = 60) acdirmin=t Set the directory minimum attribute cache timeout to t seconds. (Default = 30) acdirmax=t Set the directory maximum attribute cache timeout to t seconds. (Default = 60) actimeo=t Set regular and directory minimum and maximum attribute cache timeouts to t seconds. noac No attribute caching. proto=xyz Use the IP protocol xyz, where xyz is either udp, tcp, udp6 or tcp6. If the specified protocol is not supported by the server, then the mount will fail. The default protocol for Irix 6.5.23 or earlier is udp, starting from Irix 6.5.24 the default protocol is tcp. tcp6 and udp6 were introduced in Irix 6.5.27. Note that for Trusted IRIX (TRIX) servers, NFS over TCP is unsupported, and instead of tcp, udp protocol should be specified. private Do not flush delayed writes on last close of an open file, and use local file and record locking instead of a remote lock manager. shortuid Do not let users with userids or groupids larger than 65535 (see id(1M)) create or own files. Some versions of UNIX do not support large userids; trying to create a file with a large userid on such an NFS server can produce undefined and surprising results. symttl=t Set the time-to-live for symbolic links cached by NFS to t seconds. symttl=0 turns off NFS symlink caching. The maximum value for t is 3600. (Default = 3600) asyncnlm Use asynchronous NLM RPC calls. The default is to use synchronous NLM. Using this option requires that lockd(1M) be running. defxattr Use default values for system-defined extended attributes, rather than asking the NFS server for their values. This option does not work when noac is also specified. nodefxattr Always ask the server for extended attributes (required for Trusted Irix). doxattr Tell the NFS server that this client can be trusted to properly handle extended attributes. This is necessary only when the remote filesystem is exported with the noxattr option. The NFS version 2 does not support doxattr option. sec=mode Set the security mode for NFS transactions. List of modes is defined in nfssec.conf(4). The default mode is AUTH_UNIX, any mode which uses RPC authentication flavour AUTH_NONE will be silently converted to AUTH_UNIX. AUTH_DES and AUTH_KERB are not supported. For NFS version 3 the mode is checked against the list of modes, supported by the server, and if the server does not support the specified mode, the mount will fail. For NFS version 2, the mode is accepted on faith and not checked until the first NFS transaction which means that an NFS version 2 mount may succeed but no access to files will be allowed. The bg option causes mount to run in the background if the server's mountd(1M) does not respond. mount attempts each request retry=n times before giving up. Once the filesystem is mounted, each NFS request waits timeo=n tenths of a second for a response. If no response arrives, the time-out is multiplied by 2, up to a maximum of MAXTIMO (900), and the request is retransmitted. When retrans=n retransmissions have been sent with no reply a soft mounted filesystem returns an error on the request and a hard mounted filesystem retries the request. Filesystems that are mounted rw (read-write) should use the hard option. The number of bytes in a read or write request can be set with the rsize and wsize options. In the absence of client activity that would invalidate recently acquired file attributes, NFS holds attributes cached for an interval between acregmin and acregmax for regular files, and between acdirmin and acdirmax for directories. The actimeo option sets all attribute timeout constraints to a given number of seconds. The noac option disables attribute caching altogether. The private option greatly improves write performance by caching data and delaying writes on the assumption that only this client modifies files in the remote filesystem. It should be used only if the greater risk of lost delayed-write data in the event of a crash is acceptable given better performance. EFS uses caching strategies similar to private NFS The system reduces the risk of data loss for all filesystems by automatically executing a partial sync(2) at regular intervals. If the BDS option is installed, the following options are valid for nfs filesystems that have BDS service enabled: bds Turn on bulk data service for this file system. bdsauto=size For all read/write requests that are sized greater or equal to size, do BDS I/O instead of NFS I/O. bdswindow=size Set the TCP protocol send and receive windows to size instead of the default of 4Mbytes. bdsbuffer=size Specify the size of data buffers within the server, instead of allowing the server to determine the best size. bdsproto=[stp|tcp] Specify the transmission protocol to use. stp is the Scheduled Transfer Protocol. tcp is the Transmission Control Protocol. The stp option is available only on the Origin and the Octane platforms currently. Not specifying this option at all will cause BDS by default to use the tcp transmission protocol. bdsvccontrol=circuitNumber Specify the virtual circuit to use, over the ST protocol, for BDS command packets. This option is only applicable to BDS over ST protocol (see bdsproto above). See also ST_OUT_VCNUM in the STP(7P) man page for more information. Options specific to swap resources are: pri=t Set the priority of the swap device to t. The legal values are from 0 to 7 inclusive. swplo=t Set the first 512 byte block to use to t (default is 0). length=t Set the number of 512 byte blocks to use to t (default is entire file/partition). maxlength=t Set the maximum number of 512 byte blocks to grow the swap area to t (default is to use length). vlength=t Set the number of virtual 512 byte blocks to claim this swap file has to t (default is to use length). All other options except for noauto are ignored for swap files. If the CacheFS option is installed, the following options are valid for cachefs filesystems: backfstype=file_system_type The filesystem type of the back filesystem (for example, nfs). Any of the following filesystem types may be used as the back filesystem: nfs, nfs3, iso9660, dos, cdfs, kfs, or hfs. If this option is not specified, the back filesystem type is determined from the filesystem name. Filesystem names of the form hostname:path will be assumed to be type nfs. backpath=path Specifies where the back filesystem is already mounted. If this argument is not supplied, CacheFS determines a mount point for the back filesystem. cachedir=directory The name of the cache directory. cacheid=ID ID is a string specifying a particular instance of a cache. If you do not specify a cache ID, CacheFS will construct one. write-around | non-shared Write modes for CacheFS. In the write-around mode, writes are made to the back filesystem, and the affected file is purged from the cache. Also in this mode, file and record locking is performed through the back filesystem. You can use the non- shared mode (the default) when you are sure that no one else will be writing to the cached filesystem. In this mode, all writes are made to both the front and the back filesystem, and the file remains in the cache. noconst By default, consistency checking is performed. Disable consistency checking by specifying noconst only if you mount the filesystem read-only. private Causes file and record locking to be performed locally. In addition, files remain cached when file and record locking is performed. By default, files are not cached when file and record locking is performed and all file and record locking is handled by the back filesystem. local-access Causes the front filesystem to interpret the mode bits used for access checking instead or having the back filesystem verify access permissions. suid | nosuid Allow (default) or disallow set-uid execution. acregmin=n Specifies that cached attributes are held for at least n seconds after file modification. After n seconds, CacheFS checks to see if the file modification time on the back filesystem has changed. If it has, all information about the file is purged from the cache and new data is retrieved from the back filesystem. The default value is 30 seconds. acregmax=n Specifies that cached attributes are held for no more than n seconds after file modification. After n seconds, all file information is purged from the cache. The default value is 30 seconds. acdirmin=n Specifies that cached attributes are held for at least n seconds after directory update. After n seconds, CacheFS checks to see if the directory modification time on the back filesystem has changed. If it has, all information about the directory is purged from the cache and new data is retrieved from the back filesystem. The default value is 30 seconds. acdirmax=n Specifies that cached attributes are held for no more than n seconds after directory update. After n seconds, all directory information is purged from the cache. The default value is 30 seconds. actimeo=n Sets acregmin, acregmax, acdirmin, and acdirmax to n. bg This option causes mount to run in the background if the back filesystem mount times out. disconnect Causes the cache filesystem to operate in disconnected mode when the back filesystem fails to respond. This causes read accesses to files already cached to be fulfilled from the front filesystem even when the back filesystem does not respond. NOTES The filesystem types nfs2, nfs3, and nfs3pref are accepted for compatibility with earlier releases. nfs2 is equivalent to vers=2. nfs3 is equivalent to vers=3. nfs3pref is equivalent to nfs with no vers= option. Options used by the mount(1M) command on normal filesystems are ignored when applied to the root filesystem, since the fstab file cannot be read before mounting the root filesystem. These options include rw and ro (the root filesystem cannot be mounted read-only), grpid, quota and qnoenforce (see quotaon(1M), dmi, wsync, noatime, noalign, sunit, swidth, noquota, and lbsize. FILES /etc/fstab SEE ALSO cfsadmin(1M), fsck(1M), mount(1M), quotacheck(1M), quotaon(1M), swap(1M), getmntent(3), efs(4), exports(4), fd(4), filesystems(4), mtab(4), nfssec.conf(4), proc(4), xfs(4). Page 14