mount.lustre(8)

NAME
mount.lustre - mount helper for Lustre client mount.lustre_tgt - mount helper for Lustre target service

SYNOPSIS
mount -t lustre [-o options] <mgsname>:/<fsname> <client_mountpoint>
mount -t lustre_tgt [-o options] <block_device> <server_mountpoint>

DESCRIPTION
mount.lustre and mount.lustre_tgt are used to start a Lustre client or target service, respectively. They should not be called directly; rather they are helper programs invoked through mount(8) as above when the lustre or lustre_tgt filesystem type is used. Lustre clients and targets are stopped by using the umount(8) command.
There are two forms for the device option passed to the mount command, depending on whether a client or a target service is started:

<mgsname>:/<fsname>[/<subdir>]
    mounts the Lustre client filesystem named fsname (optionally starting at subdirectory subdir within the filesystem, if specified) on the client at the directory client_mountpoint, by contacting the Management Service at mgsname. The format for mgsname is defined below. A client filesystem will typically be listed in fstab(5) for automatic mount at boot time, is usable like any local filesystem, and provides a full POSIX-compilant interface.

block_device
    specifies the phyisical disk or ZFS dataset uses to start the target service formatted by the mkfs.lustre(8) command. The block_device may be specified using -Llabel to find the first block device with that label (e.g. testfs-MDT0000), or by UUID using the -Uuuid option. Care should be taken if there is a device-level backup of the target filesystem, which would have a duplicate label and UUID if it is not changed with tune2fs(8) or similar. The mounted target service filesystem at mountpoint is only useful for df(1) operations to show the current space usage, and appears in /proc/mounts to show the device is in use.

OPTIONS

<mgsname>:=<mgsnode>[:<mgsnode>]
    The mgsname may be a colon-separated list of mgsnode names where the MGS service may run. Multiple mgsnode values can be specified if the MGS service is configures for HA failover and may be running on any one of the nodes.

<mgsnode>:=<mgsnid>[,<mgsnid>]
    Each mgsnode may specify a comma-separated list of NIDs, if there are different LNet interfaces for the same mgsnode.

mgssec=flavor
    Specifies the encryption flavour for the initial network RPC connection to the MGS node. Non-security flavors are: null, plain, and gssnull, which respectively disable, or have no encryption or integrity features for testing purposes. Kerberos flavors are: krb5n, krb5a, krb5i, and krb5p. Shared-secret key flavors are: skn, ska, ski, and skpi, see lgss_sk(8) for more details. The security flavour for client-to-server connections is specified in the filesystem configuration that the client fetches from the MGS.

skpath=file|directory
    Path to a file or directory with the keyfile(s) to load for this mount command. Keys are inserted into the KEY_SPEC_SESSION_KEYRING keyring with a description containing "lustre:" and a suffix which depends on whether the context of the mount command is for an MGS, MDT/OST, or client. This option is only available when built with --enable-gss.

exclude=ostlist
    Start a client or MDT with a (colon-separated) list of known inactive OSTs.

CLIENT OPTIONS
In addition to the standard options listed in mount(8), Lustre understands the following client-specific options:

flock
    Enable full distributed flock(2) support, coherent across all client nodes also using this mount option. This is useful if applications need coherent userspace file locking across multiple client nodes, but also imposes communications overhead in order to maintain locking consistency between client nodes.

localflock
    Enable local flock(2) support, using only client-local file locking. This is faster than mounting with the flock option, and can be used for applications that depend on functioning flock(2) but run only on a single node.

noflock
    Disables flock(2) support entirely, and is the default option. Applications calling flock(2) will get an ENOSYS error. It is up to the administrator to choose either the localflock or flock mount option based on their requirements. It is possible to mount clients with different options, and only those mounted with flock will be coherent amongst each other.

lazystatfs
    Allows statfs(2) (as used by df(1) and lfs-df(1)) to return even if some OST or MDT is unresponsive or has been temporarily or permanently disabled in the configuration. This avoids blocking until all of the targets are available. This is the default since Lustre 2.9.0.

nolazystatfs
    Requires that statfs(2) block until all OSTs and MDTs are available and have returned space usage.

user_xattr
    Enable get/set of extended attributes by regular users. See the attr(5) manual page.

nouser_xattr
    Disable use of extended attributes by regular users. Root and system processes can still use extended attributes.

always_ping
    Force a client to keep pinging even if servers have enabled suppress_pings.

verbose
    Enable mount/remount/umount console messages.

noverbose
    Disable mount/remount/umount console messages.

user_fid2path
    Enable FID to path translation by regular users via lfs fid2path.

nouser_fid2path
    Disable FID to path translation by regular users. Root and process with CAP_DAC_READ_SEARCH can still perform FID to path translation.

network=net
    Limit connections from the client to be on the network NID specified by 'net'. 'net' designates a single network NID, like 'o2ib2' or 'tcp1'. This option can be useful in case of several Lustre client mount points on the same node, with each mount point using a different network. It is also interesting when running Lustre clients from containers, by restricting each container to a specific network.

    Warning! 'network' option is incompatible with LNet Dynamic Peer Discovery. If you want to restrict client NID, please make sure LNet Dynamic Peer Discovery is disabled.

test_dummy_encryption
    Enable test dummy encryption mode.

noencrypt
    Disable Lustre client-side encryption. By default, Lustre client-side encryption is enabled, letting users define encryption policies on a per-directory basis. fscrypt userspace tool can be used for that purpose, see https://github.com/google/fscrypt

SERVER OPTIONS
In addition to the standard mount options and backing disk type (e.g. ldiskfs) options listed in mount(8), Lustre understands the following server-specific options:

acl Enable POSIX Access Control List support for all clients. See the acl(5) manual page.

no_precreate
    Do not allow objects to be created on the OST after mounting. This allows a (potentially newly-formatted) OST to be started without clients starting to use it immediately. To allow the MDS to create objects on the OST mount without this option, or run lctl set_param obdfilter.fsname-OSTnnnn.no_precreate=0 on the OSS to re-enable object creation. NOTE: this does not start the OST read-only, it only disables the creation of new objects on the OST. This means existing objects can be read, modified, or deleted, but if the OST is new then it will not have any such objects.

nosvc
    Only start the MGC (and MGS, if co-located) for a target service, and not the actual MDS or OSS service.

nomgs
    Start an MDT with a co-located MGS without starting the MGS service.

noscrub
    Do not trigger OI scrub automatically when an inconsistency is detected. It is still possible to start explicitly using the lctl lfsck_start.

skip_lfsck
    Do not resume the former paused/crashed LFSCK automatically when mounting.

abort_recov
    Abort client recovery and start the target service immediately.

md_stripe_cache_size
    Sets the stripe cache size for server side disk with a striped raid configuration.

max_sectors_kb
    Automatically Sets the block device parameter of 'max_sectors_kb' for the MDT or OST target. When max_sectors_kb isn't specified, that parameter for block device will be set to same as it's own 'max_hw_sectors_kb' (up to a maximum of 16M), this is default behavior suited for most users. When max_sectors_kb is specified as zero, the old parameter value will be kept. When max_sectors_kb is specified as a positive number, the parameter will be set to this number arbitrarily.

recovery_time_soft=timeout
    Allow 'timeout' seconds for clients to reconnect for recovery after a server crash. This timeout will be incrementally extended if it is about to expire and the server is still handling new connections from recoverable clients. The default soft recovery timeout is set to 300 seconds (5 minutes).

recovery_time_hard=timeout
    The server will be allowed to incrementally extend its timeout up to a hard maximum of 'timeout' seconds. The default hard recovery timeout is set to 900 seconds (15 minutes).

EXAMPLES

mount -t lustre cfs21@tcp0:/testfs /mnt/myfilesystem
    Start a client for the Lustre filesystem testfs at the mount point /mnt/myfilesystem. The Management Service is running on a node reachable via NID cfs21@tcp0.

mount -t lustre cfs21@tcp0:/testfs/dir /mnt/myfilesystem
    Like above example, but mount subdirectory dir as fileset.

mount -t lustre mgs1@tcp0,mgs1ib@o2ib0:mgs2@tcp0,mgs2ib@o2ib0:/testfs /mnt/fs
    Like above example, but the Management Service is running on one of the service nodes mgs1 and mgs2, which are two different hosts separated by a colon and served as a failover pair. Lustre tries the first one, and if that fails, it tries the second one. On each service node, the comma-separated NIDs refer to different interfaces on the same host, and the Lustre client chooses the best one for communication based on which network interfaces are available locally.

mount -t lustre_tgt /dev/sda1 /mnt/test/mdt
    Start the Lustre metadata target service from /dev/sda1 on mountpoint /mnt/test/mdt.

mount -t lustre_tgt -L testfs-MDT0000 -o abort_recov /mnt/test/mdt
    Start the testfs-MDT0000 service (by using the disk label), but aborts the Lustre client recovery process for the case that clients are known to be unavailable.

BUGS
Not very many mount options can be changed with -o remount.

AVAILABILITY
mount.lustre is part of the Lustre(7) filesystem package.

SEE ALSO
lustre(7), mount(8), mkfs.lustre(8), tunefs.lustre(8), lctl(8), lfs(1)