-.TH LSHOWMOUNT 8 Lustre LLNL LSHOWMOUNT
+.TH LSHOWMOUNT 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
lshowmount \- show lustre exports
.SH SYNOPSIS
-.B "lshowmount [-ehlv]"
-.br
+.SY lshowmount
+.RB [ -ehlv ]
+.YS
.SH DESCRIPTION
.B lshowmount
Utility to show the hosts that have lustre currently mounted to a server.
.B lshowmount
accepts the following options:
.TP
-.I "-e | --enumerate"
+.BR -e ", " --enumerate
causes
.B lshowmount
to list each client mounted on a separate line instead of trying
to compress the list of clients into a hostrange string.
.TP
-.I "-h | --help"
+.BR -h ", " --help
causes
.B lshowmount
to print out a usage message.
.TP
-.I "-l | --lookup"
+.BR -l ", " --lookup
causes
.B lshowmount
to try to lookup the hostname for nids that look like IP addresses.
.TP
-.I "-v | --verbose"
+.BR -v ", " --verbose
causes
.B lshowmount
to output export information for each service instead of only displaying
the aggregate information for all Lustre services on the server.
.SH FILES
+.EX
/proc/fs/lustre/mgs/<server>/exports/<uuid>/nid
-.br
/proc/fs/lustre/mds/<server>/exports/<uuid>/nid
-.br
/proc/fs/lustre/obdfilter/<server>/exports/<uuid>/nid
-.SH AUTHOR
+.EE
+.SH AUTHORS
Herb Wartens
+.SH AVAILABILITY
+.B lshowmount
+is part of the
+.BR lustre (7)
+filesystem package since release 1.7.0
+.\" Added in commit 1.6.1-2377-g2177e48c99
+.SH SEE ALSO
.\"
.\" Copyright (c) 2015, 2016, Intel Corporation.
.\"
-.TH LUSTRE 7 "2021 Nov 08" Lustre "A high-performance cluster file system"
+.TH LUSTRE 7 2024-08-28 Lustre "A high-performance cluster file system"
.SH NAME
Lustre
.SH SYNOPSIS
.B Lustre
is a high-performance, massively-scalable, POSIX-compliant GPL network file
system that runs on the world's largest high-performance compute clusters.
-
+.PP
Lustre filesystems are made up of multiple services typically distributed
across multiple server nodes. Lustre clients can contact these server nodes
over multiple high-speed network fabrics via LNet, the Lustre Network
system. Clients then present the filesystem at a mount point to userspace.
-
+.PP
A Lustre filesystem is comprised of one or more
.IR MDTs ,
MetaData Targets, which store directory and file meta-information such as
layout, that can be managed with the
.BR lfs-setstripe (1)
command.
-
+.PP
Lustre and LNet are implemented as a series of Linux kernel modules, for both
servers and clients. LNet networks are defined in the modprobe.conf file on
all nodes. Lustre is started on the clients and servers using the
.BR mount (8)
command.
-
.SH COMMANDS
.TP
.BR mkfs.lustre (8)
Please report all bugs https://jira.whamcloud.com/
.SH AVAILABILITY
.B The
-.BR Lustre (7)
+.BR lustre (7)
filesystem packages are available for download at:
.br
https://downloads.whamcloud.com/
.br
https://git.whamcloud.com/
.SH SEE ALSO
-.BR mkfs.lustre (8),
-.BR tunefs.lustre (8),
-.BR mount.lustre (8),
-.BR lctl (8),
.BR lfs (1),
+.BR lustreapi (7),
+.BR lnet (7),
+.BR lctl (8),
.BR llobdstat (8),
.BR llstat (8),
.BR llverdev (8),
.BR llog_reader (8),
.BR lshowmount (8),
-.BR lustreapi (7),
.BR lustre_rsync (8),
-.BR lnet (7)
+.BR mkfs.lustre (8),
+.BR mount.lustre (8),
+.BR tunefs.lustre (8)
-.TH lustre_routes_config 8 "Apr 23, 2013" Lustre "utilities"
+.TH LUSTRE_ROUTES_CONFIG 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
lustre_routes_config \- Configure routes dynamically
.SH SYNOPSIS
-.B "lustre_routes_config"
+.SY lustre_routes_config
+.RB [ --setup | --cleanup | --dry-run | --verbose ]
+.I CONFIG_FILE
+.YS
.SH DESCRIPTION
lustre_routes_config sets or cleans up LNET routes from the specified config
-file. /etc/lnet_routes.conf file can be used to automatically
+file. /etc/lnet_routes.conf file can be used to automatically
configure routes on LNET startup.
-.LP
+.PP
The format of the config file is:
-.br
-<network>: { gateway: <gateway>@<exit network> [hop: <hop>]
- [priority: <priority>] }
-.LP
-Usage:
-.br
-lustre_routes_config [--setup|--cleanup|--dry-run|--verbose] <config_file>
+.SY "NETWORK: {"
+.BR gateway :
+.IR GATEWAY @ EXIT_NETWORK
+.RB [ hop :
+.IR HOP ]
+.RB [ priority :
+.IR PRIOIRTY ]
+}
+.YS
+.SH OPTIONS
.TP
-.I "\-\-setup"
+.B --setup
Configure routes listed in config_file
.TP
-.I "\-\-cleanup"
+.B --cleanup
Unconfigure routes listed in config_file
.TP
-.I "\-\-dry-run"
+.B --dry-run
Echo commands to be run, but do not execute them
.TP
-.I "\-\-verbose"
+.B --verbose
Echo commands before they are executed
-.LP
-NOTE: An LNET router is identified when its local NID appears within the
-list of routes. However, this can not be achieved by the use of this
+.SH FILES
+/etc/lnet_routes.conf
+.SH NOTES
+An LNET router is identified when its local NID appears within the
+list of routes. However, this can not be achieved by the use of this
script, since the script only adds extra routes after the role of the
-router is determined. To ensure that a router is identified correctly,
+router is determined. To ensure that a router is identified correctly,
make sure to add its local NID in the routes parameter in the modprobe
lustre configuration file.
-.SH EXAMPLE
+.SH EXAMPLES
An example of a config file that the script expects:
-.LP
+.RS
+.EX
tcp1: { gateway: 10.1.1.2@tcp0, priority: 3 }
-.br
tcp4: { gateway: 10.3.3.4@tcp }
-.br
tcp6: { gateway: 10.3.3.6@tcp, hop: 2, priority: 5 }
-.br
tcp7: { gateway: 10.3.3.[6-12]@tcp, priority: 20, hop: 8 }
-.LP
+.EE
+.RE
+.PP
An example of script execution:
-.LP
+.RS
+.EX
lustre_routes_config --setup <path/to/routes_config_file>
-.br
lustre_routes_config --cleanup <path/to/routes_config_file>
-.SH SEE ALSO
+.EE
+.RE
+.SH AUTHORS
+Amir Shehata
+.SH AVAILABILITY
+.B lustre_routes_config
+is part of the
.BR lustre (7)
-.BR nids (5)
-.BR lctl (8)
+filesystem package since release 2.4.0
+.\" Added in commit v2_3_64_0-85-g56e322f722
+.SH SEE ALSO
+.BR nids (5),
+.BR lustre (7),
+.BR lctl (8),
.BR lustre_routes_conversion (8)
-.SH FILES
-/etc/lnet_routes.conf
-.SH AUTHOR
-Amir Shehata
-.TH lustre_rsync 8 "2009 Apr 08" Lustre "Lustre Filesystem replication utility"
+.TH LUSTRE_RSYNC 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
lustre_rsync \- Utility to replicate a Lustre Filesystem
.SH SYNOPSIS
-.br
-.B lustre_rsync --source|-s <src> --target|-t <tgt>
-.br
-.B\t\t\t --mdt|-m <mdt> [--user|-u <user id>]
-.br
-.B\t\t\t [--xattr|-x <yes|no>] [--verbose|-v]
-.br
-.B\t\t\t [--statuslog|-l <log>] [--dry-run] [--abort-on-err]
-.br
-
-.br
-.B lustre_rsync --statuslog|-l <log>
-.br
-
-.br
-.B lustre_rsync --statuslog|-l <log> --source|-s <source>
-.br
-.br
-.B\t\t\t --target|-t <tgt> --mdt|-m <mdt>
+.SY lustre_rsync
+.RB { --source | -s
+.IR SRC }
+.RB { --target | -t
+.IR TGT }
+.RB { --mdt | -m
+.IR MDT }
+.RB [ --user | -u
+.IR USER ID ]
+.RB [ --xattr | -x " {" yes | no }]
+.RB [ --verbose | -v ]
+.RB [ --statuslog | -l
+.IR LOG ]
+.RB [ --dry-run ]
+.RB [ --abort-on-err ]
+.SY lustre_rsync
+.RB { --statuslog | -l
+.IR LOG }
+.SY lustre_rsync
+.RB { --statuslog | -l
+.IR LOG }
+.RB { --source | -s
+.IR SOURCE }
+.RB { --target | -t
+.IR TGT }
+.RB { --mdt | -m
+.IR MDT }
+.YS
.SH DESCRIPTION
.B lustre_rsync
is designed to replicate a Lustre filesystem (source filesystem) to
another target filesystem (any filesystem type) efficiently by
using Lustre MDT changelogs. A changelog user must be registered
(see lctl (8) changelog_register) before using this tool.
-
+.PP
The source and the target filesystems must be identical before
the changelog user is registered. If the filesystems are discrepant,
a utility like rsync may be used to make them identical.
-
.SH OPTIONS
-.B --source=<src>
-.br
+.TP
+.BR -s ", " --source= \fISRC
The path to the root of the Lustre filesystem which will be replicated.
Mandatory if a valid statuslog created during an previous replication operation
(--statuslog) is not specified.
-
-.B --target=<tgt>
-.br
-The path to the root where the filesystem will be replicated. Mandatory
+.TP
+.BR -t ", " --target= \fITGT
+The path to the root where the filesystem we be replicated. Mandatory
if a valid statuslog created during an previous replication operation
(--statuslog) is not specified. This option can be repeated if
multiple replication targets are desired.
-
-.B --mdt=<mdt>
-.br
+.TP
+.BR -m ", " --mdt= \fIMDT
The metadata device which is to be replicated. A changelog user must be
registered for this device. Mandatory if a valid statuslog created
during an previous replication operation (--statuslog) is not
specified.
-
-.B --user=<user id>
-.br
+.TP
+.BR -u ", " --user= \fIUSER_ID
The changelog user id for the above MDT device. See lctl(8) changelog_register.
Mandatory if a valid statuslog created during an previous replication operation
(--statuslog) is not specified.
-
-.B --statuslog=<log>
-.br
-A status log file to which the status of replication is saved.
+.TP
+.BR -l ", " --statuslog= \fILOG
+A status log file to which the status of replication is saved.
When lustre_rsync is started, the state from a previous replication
will be read from here.
-
+.IP
If a statuslog from a previous replication operation is specified, the
otherwise mandatory options like --source, --target and --mdt may be
skipped.
-
+.IP
By specifying the options like --source, --target and --mdt in
addition to the --statuslog option, the parameters in the statuslog
can be overridden. The command line options take precedence over the
ones from the statuslog.
-
-.B --xattr <yes|no>
-.br
+.TP
+.BR -x ", " --xattr " {" yes | no }
Specify whether extended attributes are replicated or not. The default
is to replicate extended attributes. Disabling xattrs will mean that
Lustre striping information will not be replicated.
-
-.B --verbose
-.br
+.TP
+.BR -v ", " --verbose
Produce a verbose output.
-
+.TP
.B --dry-run
-.br
Shows what the program would do without actually replicating data.
-
+.TP
.B --abort-on-err
-.br
Stop processing upon first error. Default is to continue processing.
-
.SH EXAMPLES
-
-.TP
-Register a changelog consumer for MDT lustre-MDT0000
-$ ssh $MDS lctl changelog_register \\
-.br
- --device lustre-MDT0000 -n
-.br
+Register a changelog consumer for MDT lustre-MDT0000:
+.RS
+.EX
+.B # ssh $MDS lctl changelog_register --device lustre-MDT0000 -n
cl1
-
-.TP
-Replicate the lustre filesystem /mnt/lustre to /mnt/target.
-$ lustre_rsync --source=/mnt/lustre --target=/mnt/target \\
-.br
- --mdt=lustre-MDT0000 --user=cl1 \\
-.br
- --statuslog replicate.log --verbose
-.br
+.EE
+.RE
+.PP
+Replicate the lustre filesystem /mnt/lustre to /mnt/target:
+.RS
+.EX
+.B # lustre_rsync --source=/mnt/lustre --target=/mnt/target \
+--mdt=lustre-MDT0000 --user=cl1 --statuslog replicate.log --verbose
Lustre filesystem: lustre
-.br
MDT device: lustre-MDT0000
-.br
Source: /mnt/lustre
-.br
Target: /mnt/target
-.br
Statuslog: replicate.log
-.br
Changelog registration: cl1
-.br
Starting changelog record: 0
-.br
Errors: 0
-.br
lustre_rsync took 1 seconds
-.br
Changelog records consumed: 22
-.br
-
-
-.TP
-After the filesystem undergoes some changes, replicate the \
-changes. Only the statuslog needs to be specified as it has all the \
-parameters passed earlier.
-.br
-$ lustre_rsync --statuslog replicate.log --verbose
-.br
+.EE
+.RE
+.PP
+After the filesystem undergoes some changes, replicate the changes.
+Only the statuslog needs to be specified as it has all the
+parameters passed earlier:
+.RS
+.EX
+.B # lustre_rsync --statuslog replicate.log --verbose
Replicating Lustre filesystem: lustre
-.br
MDT device: lustre-MDT0000
-.br
Source: /mnt/lustre
-.br
Target: /mnt/target
-.br
Statuslog: replicate.log
-.br
Changelog registration: cl1
-.br
Starting changelog record: 22
-.br
Errors: 0
-.br
lustre_rsync took 2 seconds
-.br
Changelog records consumed: 42
-.br
-
-.TP
-To replicate the lustre filesystem /mnt/lustre to /mnt/target1 and /mnt/target2.
-$ lustre_rsync --source=/mnt/lustre \\
-.br
- --target=/mnt/target1 --target=/mnt/target2 \\
-.br
- --mdt=lustre-MDT0000 --user=cl1
-.br
- --statuslog replicate.log
-.br
-
-
-.SH AUTHOR
-The lustre_rsync command is part of the Lustre filesystem.
-
+.EE
+.RE
+.PP
+To replicate the lustre filesystem /mnt/lustre to /mnt/target1 and /mnt/target2:
+.RS
+.EX
+.B # lustre_rsync --source=/mnt/lustre --target=/mnt/target1 \
+--target=/mnt/target2 --mdt=lustre-MDT0000 --user=cl1 --statuslog replicate.log
+.EE
+.RE
+.SH AVAILABILITY
+The
+.B lustre_rsync
+command is part of the
+.BR lustre (7)
+filesystem package since release 1.7.0
+.\" Added in commit 1.6.1-3324-gb53302d92d
.SH SEE ALSO
+.BR lfs (1),
.BR lustre (7),
-.BR lctl (8),
-.BR lfs (1)
+.BR lctl (8)
-.TH LUSTREAPI 7 "2014-09-21" "" "The Lustre API library"
+.TH LUSTREAPI 7 2024-08-28 Lustre "The Lustre API library"
.SH NAME
lustreapi \- The Lustre API library
.SH SYNOPSIS
-.sp
-\fB#include <lustre/lustreapi.h>\fP
+.nf
+.B #include <lustre/lustreapi.h>
+.fi
.SH DESCRIPTION
-.sp
The lustreapi library provides functions to access and/or modify
settings specific to the Lustre filesystem (allocation policies,
quotas, file layouts, etc). See the referenced man pages for details.
+.SH AUTHORS
+Lustre contributors
+.SH AVAILABILITY
+.B lustreapi
+is part of the
+.B lustre (8)
+filesystem package since release 0.10.0
+.\" Added in release 0.9.1
.SH SEE ALSO
-.sp
-.BR llapi_changelog_clear (3)
-.BR llapi_changelog_fini (3)
-.BR llapi_changelog_free (3)
-.BR llapi_changelog_get_fd (3)
-.BR llapi_changelog_in_buf (3)
-.BR llapi_changelog_recv (3)
-.BR llapi_changelog_set_xflags (3)
-.BR llapi_changelog_start (3)
+.BR llapi_changelog_clear (3),
+.BR llapi_changelog_fini (3),
+.BR llapi_changelog_free (3),
+.BR llapi_changelog_get_fd (3),
+.BR llapi_changelog_in_buf (3),
+.BR llapi_changelog_recv (3),
+.BR llapi_changelog_set_xflags (3),
+.BR llapi_changelog_start (3),
.BR llapi_create_volatile_param (3),
.BR llapi_fd2parent (3),
-.BR llapi_fid2path (3),
.BR llapi_fid_parse (3),
+.BR llapi_fid2path (3),
.BR llapi_file_create (3),
.BR llapi_file_get_stripe (3),
.BR llapi_file_open (3),
.BR llapi_rmfid (3),
.BR llapi_rmfid_at (3),
.BR llapi_root_path_open (3),
-.BR llapi_search_tgt (3),
.BR llapi_search_rootpath (3),
.BR llapi_search_rootpath_by_dev (3),
+.BR llapi_search_tgt (3),
.BR lustre (7)
-.SH AUTHOR
-Lustre contributors
-.
.\"
.\" This file may be copied under the terms of the GNU Public License.
.\"
-.TH mkfs.lustre 8 "2014 Jun 10" Lustre "configuration utilities"
+.TH MKFS.LUSTRE 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
mkfs.lustre \- format a disk for a Lustre service
.SH SYNOPSIS
-.br
-.B mkfs.lustre
+.SY mkfs.lustre
.RB { --ost | --mdt | --mgs }
-.BR --fsname= <\fIname\fR>
-.RI [ options ]
-.I device
-.br
-.B mkfs.lustre
+.BR --fsname=\c
+.I NAME
+.RI [ OPTIONS ]
+.I DEVICE
+.SY mkfs.lustre
.RB { --ost | --mdt | --mgs }
.B --backfstype=zfs
-.BR --fsname= <\fIname\fR>
-.RI [ options "] <" pool_name >/< dataset_name "> [<" zpool_specification >]
-
+.BR --fsname=\c
+.I NAME
+.RI [ OPTIONS ]
+.IR POOL_NAME / DATASET_NAME
+.RI [ ZPOOL_SPECIFICATION ]
+.YS
.SH DESCRIPTION
.B mkfs.lustre
is used to format a disk device for use as part of a Lustre
filesystem. After formatting, a disk can be mounted with
.B mount -t lustre ...
to start the Lustre service defined by this command.
-
.SH OPTIONS
.TP
-.BI \--ost
+.B --ost
object storage target
.TP
-.BI \--mdt
+.B --mdt
metadata storage target
.TP
-.BI \--mgs
+.B --mgs
configuration management service, one per site or filesystem. This service can
be combined with one
-.BI \--mdt
+.B --mdt
service by specifying both types.
.TP
-.BI \--backfstype= fstype
+.BI --backfstype= FSTYPE
Force a particular format for the backing fs (ldiskfs, zfs).
+.TP
+.I ZPOOL_SPECIFICATION
+Specify the zpool specifications with the following form:
.br
-.IR zpool_specification " = [[<" vdev_type ">] <" device "> [<" device "> ...] [<" vdev_type ">] ...]"
+.RI [[ VDEV_TYPE ] " DEVICE " [DEVICE " ...] [" VDEV_TYPE "] ...]"
+.TP
+.I VDEV_TYPE
+Can be one of the following:
.br
-.IR vdev_type " ="
.RB { mirror , raidz , raidz2 , raidz3 , cache }
-.br
-.IR device " = { " "Linux block device" " }"
-
+.TP
+.IR DEVICE
+The linux block device.
+.IP
If no vdev_type is given, then the devices are used in a round-robin
(striped) manner. See
.BR zpool (8)
for more details.
.TP
-.BI \--comment= comment
+.BI --comment= COMMENT
Set user comment about this disk, ignored by Lustre.
.TP
-.BI \--device-size= KB
+.BI --device-size= KB
Set device size for loop devices
.TP
-.BI \--dryrun
+.BI --dryrun
Only print what would be done; does not affect the disk
.TP
-.BI \--failnode= nid,...
+.BI --failnode= NID \fR,...
Set the NID(s) of a failover partner. This option can be repeated as desired.
Cannot be used with --servicenode.
.TP
-.BI \--servicenode= nid,....
+.BI --servicenode= NID\fR,...
Set the NID(s) of all service partner. This option treats all nodes as equal
-service nodes. Cannot be used with --failnode.
+service nodes. Cannot be used with
+.BR --failnode .
.TP
-.BI \--fsname= filesystem_name
+.BI --fsname= FILESYSTEM_NAME
The Lustre filesystem this target will be part of. Valid
.IR filesystem_name s
are between 1 and 8 characters long and must only use upper- and lower-case
and "lustre" as the literal string that must be used in places for the
.BR filesystem_type .
The
-.B \--fsname
+.B --fsname
option is not valid for the MGS, since it may be used for multiple filesystems.
.TP
-.BI \--index= index
+.BI --index= INDEX
Specify a particular OST or MDT index. Required for all targets other than
the MGS, and must be unique for all targets in the same filesystem. Typically
sequential values starting from 0 are used. The index parameter may either
be a decimal number, or a hexadecimal number starting with '0x'.
.TP
-.BI \--mkfsoptions= opts
+.BI --mkfsoptions= OPTS
Additional formatting options passed through to the backing filesystem. For
example, options for
.B mke2fs
.B zpool
could be set here.
.TP
-.BI \--mountfsoptions= opts
+.BI --mountfsoptions= OPTS
Set persistent mount options that will be used when mounting Lustre targets.
-WARNING: unlike earlier versions of \fBmkfs.lustre\fR, this version completely
-replaces the default mount options with those specified on the command line,
+WARNING: unlike earlier versions of
+.BR mkfs.lustre ,
+this version completely replaces the default mount options
+with those specified on the command line,
issuing a warning on stderr if any of the default mount options are omitted.
-The defaults for \fIldiskfs\fR are
-OST: \fIerrors=remount-ro,mballoc,extents\fR;
-MGS/MDT: \fIerrors=remount-ro,user_xattr\fR.
-\fBDO NOT\fR alter the default mount options unless you know what you are doing.
-.TP
-.BI \--backfs-mount-opts=opts
+The defaults for
+.I LDISKFS
+are:
+.TP 10
+.B OST:
+.I errors=remount-ro,mballoc,extents
+.TP
+.B MGS/MDT:
+.I errors=remount-ro,user_xattr
+.PP
+.B DO NOT
+alter the default mount options unless you know what you are doing.
+.TP
+.BI --backfs-mount-opts= OPTS
Use these options for mounting backing fs while mkfs.lustre is working.
.TP
-.BI \--network= net,...
+.BI --network= NET,...
Network(s) to restrict this OST/MDT to. This option can be repeated as desired.
.TP
-.BI \--mgsnode= nid,...
+.BI --mgsnode= NID,...
Set the NID(s) of the MGS node, required for all targets other than the MGS.
.TP
-.BI \--param " key=value"
+.BI --param " KEY" = VALUE
Set permanent parameter
-.I key
+.I KEY
to value
-.IR value .
+.IR VALUE .
This option can be repeated as desired. Typical options might include:
.RS
-.I \--param sys.timeout=40
+.I --param sys.timeout=40
.RS
System obd timeout
.RE
.RS
Default stripe count
.RE
-.I \--param failover.mode=failout
+.I --param failover.mode=failout
.RS
Return errors instead of waiting for recovery
.RE
.RE
.TP
-.BI \--quiet
+.B --quiet
Print less information.
.TP
-.BI \--reformat
+.B --reformat
Reformat an existing Lustre disk as a new target
.TP
-.BI \--replace
+.B --replace
Used to initialize a target with the same
-.I --index
+.B --index
as a previously used target if the old target was permanently lost for
some reason (e.g. multiple disk failure or massive corruption). This
avoids having the target try to register as a new target with the MGS.
.TP
-.BI \--stripe-count-hint= stripes
+.BI --stripe-count-hint= STRIPES
Specify the expected common number of stripes on a file so that the MDT
inode size can be optimized for the typical use case.
.TP
-.BI \--force-nohostid
+.BI --force-nohostid
Ignore unset hostid for ZFS import protection. To set hostid either set
spl_hostid parameter for spl.ko or set /etc/hostid, see zgenhostid(8). To
populate the spl_hostid parameter, spl.ko must be (re)loaded after /etc/hostid
is created.
-
.TP
-.BI \--verbose
+.BI --verbose
Print more information.
.TP
-.B \-V, \-\-version
+.BR -V ", " --version
Output build version of the mkfs.lustre utility.
-
-.SH NID
+.SS NID
A Lustre network identifier (NID) is used to uniquely identify a Lustre network
endpoint by node ID and network type. The format of the NID is:
-\fInetwork_id@network_type\fR.
+.IR network_id@network_type .
If a node has multiple network interfaces, it may have multiple NIDs, which must
all be identified so other nodes can choose the NID that is appropriate for
their network interfaces. Typically, NIDs are specified in a list delimited by
commas (,). However, when failover nodes are specified, the NIDs are delimited
-by a colon (:) or by repeating a keyword such as \fI--mgsnode=\fR or
-\fI--servicenode=\fR.
-
+by a colon (:) or by repeating a keyword such as
+.B --mgsnode=
+or
+.BR --servicenode= .
.SH EXAMPLES
-.TP
-.B mkfs.lustre --fsname=testfs --index=0 --mdt --mgs /dev/sda1
-Combined MGS and MDT for filesystem 'testfs' on node e.g. cfs21
-.TP
-.B mkfs.lustre --fsname=testfs --index=0 --ost --mgsnode=cfs21@tcp0 /dev/sdb
-OST for filesystem 'testfs' on any node using the above MGS.
-.TP
-.B mkfs.lustre --fsname=testfs --index=0 --mdt --mgs --servicenode=cfs21@tcp0,cfs21ib@o2ib0 --servicenode=cfs22@tcp0,cfs22ib@o2ib0 /dev/sda1
-Combined MGS and MDT for filesystem 'testfs' on failover pair cfs21 and cfs22.
-.TP
-.B mkfs.lustre --fsname=testfs --index=1 --ost --mgsnode=cfs21@tcp0,cfs21ib@o2ib0:cfs22@tcp0,cfs22ib@o2ib0 --failnode=cfs24@tcp0,cfs24ib@o2ib0 /dev/sdb
+Combined MGS and MDT for filesystem 'testfs' on node e.g. cfs21:
+.RS
+.EX
+.B # mkfs.lustre --fsname=testfs --index=0 --mdt --mgs /dev/sda1
+.EE
+.RE
+.PP
+OST for filesystem 'testfs' on any node using the above MGS:
+.RS
+.EX
+.B # mkfs.lustre --fsname=testfs --index=0 --ost --mgsnode=cfs21@tcp0 /dev/sdb
+.EE
+.RE
+.PP
+Combined MGS and MDT for filesystem 'testfs' on failover pair cfs21 and cfs22:
+.RS
+.EX
+.B # mkfs.lustre --fsname=testfs --index=0 --mdt --mgs \
+--servicenode=cfs21@tcp0,cfs21ib@o2ib0 \
+--servicenode=cfs22@tcp0,cfs22ib@o2ib0 /dev/sda1
+.EE
+.RE
+.PP
OST for filesystem 'testfs' using the above MGS and having a failover partner
-cfs24.
-.TP
-.B mkfs.lustre --mgs /dev/sda1
-Standalone MGS on e.g. node cfs22
-.TP
-.B mkfs.lustre --fsname=myfs1 --index=0 --mdt --mgsnode=cfs22@tcp0 /dev/sda2
-MDT for filesystem 'myfs1' on any node, using the above MGS
-.TP
-.B mkfs.lustre --fsname=testfs --index=0 --mdt --mgs zfspool/mdt1 mirror /dev/sdb /dev/sdc mirror /dev/sdd /dev/sde
+cfs24:
+.RS
+.EX
+.B # mkfs.lustre --fsname=testfs --index=1 --ost \
+--mgsnode=cfs21@tcp0,cfs21ib@o2ib0:cfs22@tcp0,cfs22ib@o2ib0 \
+--failnode=cfs24@tcp0,cfs24ib@o2ib0 /dev/sdb
+.EE
+.RE
+.PP
+Standalone MGS on e.g. node cfs22:
+.RS
+.EX
+.B # mkfs.lustre --mgs /dev/sda1
+.EE
+.RE
+.PP
+MDT for filesystem 'myfs1' on any node, using the above MGS:
+.RS
+.EX
+.B # mkfs.lustre --fsname=myfs1 --index=0 --mdt --mgsnode=cfs22@tcp0 /dev/sda2
+.EE
+.RE
+.PP
Create zfs pool 'zfspool' on two root vdevs each a mirror of two disks and
-create mdt/mgs on filesystem 'zfspool/mdt1'.
-.TP
-.B mkfs.lustre --version
-Output build version of the mkfs.lustre utility e.g. 2.15.52_175_ge7aa83d
-
+create mdt/mgs on filesystem 'zfspool/mdt1':
+.RS
+.EX
+.B # mkfs.lustre --fsname=testfs --index=0 --mdt --mgs zfspool/mdt1 mirror \
+/dev/sdb /dev/sdc mirror /dev/sdd /dev/sde
+.EE
+.RE
+.PP
+Output build version of the mkfs.lustre utiltiy e.g. 2.15.52_175_ge7aa83d:
+.RS
+.EX
+.B # mkfs.lustre --version
+.EE
+.RE
.SH AVAILABILITY
.B mkfs.lustre
is part of the
.BR lustre (7)
-filesystem package.
+filesystem package since release 1.4.0
+.\" Added in commit 1.3.4-1130-g113303973e
.SH SEE ALSO
-.BR lctl (8),
.BR lfs (1),
.BR lustre (7),
+.BR lctl (8),
.BR mke2fs (8),
.BR mount.lustre (8),
.BR tunefs.lustre (8),
.\"
.\" This file may be copied under the terms of the GNU Public License v2.
.\"
-.TH mount.lustre 8 "2019 Jul 30" Lustre "configuration utilities"
+.TH MOUNT.LUSTRE 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
-mount.lustre \- mount helper for Lustre client
-mount.lustre_tgt \- mount helper for Lustre target service
+mount.lustre, mount.lustre_tgt \- mount helper for Lustre client/target service
.SH SYNOPSIS
-.br
-.BI "mount -t lustre [-o " options "] " "<mgsname>:/<fsname> <client_mountpoint>"
-.br
-.BI "mount -t lustre_tgt [-o " options "] " "<block_device> <server_mountpoint>"
+.SY "mount -t lustre"
+.BR [ -o
+.IR OPTIONS ]
+.IR MGSNAME :/ FSNAME
+.I CLIENT_MOUNTPOINT
+.SY "mount -t lustre_tgt"
+.BR [ -o
+.IR OPTIONS ]
+.I BLOCK_DEVICE
+.I SERVER_MOUNTPOINT
+.YS
.SH DESCRIPTION
.B mount.lustre
and
.B mount.lustre_tgt
-are used to start a Lustre client or target service, respectively. They
+are used to start a Lustre client or target service, respectively. They
should not be called directly; rather they are helper programs invoked through
.BR mount (8)
as above when the
.B lustre
or
.B lustre_tgt
-filesystem type is used. Lustre clients and targets are stopped by using the
+filesystem type is used. Lustre clients and targets are stopped by using the
.BR umount (8)
command.
-.br
-
+.PP
There are two forms for the device option passed to the
.I mount
command, depending on whether a client or a target service is started:
.TP
-.IR <mgsname> :/ <fsname>[/<subdir>]
+.IR MGSNAME :/ FSNAME [/ SUBDIR ]
mounts the Lustre client filesystem named
-.I fsname
+.I FSNAME
(optionally starting at subdirectory
-.I subdir
+.I SUBDIR
within the filesystem, if specified) on the client at the directory
-.IR client_mountpoint ,
+.IR CLIENT_MOUNTPOINT ,
by contacting the Management Service at
-.IR mgsname .
+.IR MGSNAME .
The format for
-.I mgsname
-is defined below. A client filesystem will typically be listed in
+.I MGSNAME
+is defined below. A client filesystem will typically be listed in
.BR fstab (5)
for automatic mount at boot time, is usable like any local filesystem, and
provides a full POSIX-compilant interface.
.TP
-.I block_device
+.I BLOCK_DEVICE
specifies the physical disk or ZFS dataset uses to start the target service
formatted by the
-.IR mkfs.lustre (8)
-command. The
-.I block_device
+.BR mkfs.lustre (8)
+command. The
+.I BLOCK_DEVICE
may be specified using
-.BI -L label
+.BI -L LABEL
to find the first block device with that label (e.g.
.BR testfs-MDT0000 ),
or by UUID using the
-.BI -U uuid
+.BI -U UUID
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
.BR tune2fs (8)
-or similar. The mounted target service filesystem at
-.I mountpoint
+or similar. The mounted target service filesystem at
+.I MOUNTPOINT
is only useful for
.BR df (1)
operations to show the current space usage, and appears in
to show the device is in use.
.SH OPTIONS
.TP
-.BI <mgsname>:= <mgsnode>[:<mgsnode>]
+.IB MGSNAME := MGSNODE [: MGSNODE ]
The
-.I mgsname
+.I MGSNAME
may be a colon-separated list of
-.I mgsnode
-names where the MGS service may run. Multiple
-.I mgsnode
+.I MGSNODE
+names where the MGS service may run. Multiple
+.I MGSNODE
values can be specified if the MGS service is configures for HA failover
and may be running on any one of the nodes.
.TP
-.BI <mgsnode>:= <mgsnid>[,<mgsnid>]
+.IB MGSNODE := MGSNID [, MGSNID ]
Each
-.I mgsnode
+.I MGSNODE
may specify a comma-separated list of NIDs, if there are different
LNet interfaces for the same
-.IR mgsnode .
+.IR MGSNODE .
.TP
-.BI mgssec= flavor
+.BI mgssec= FLAVOR
Specifies the encryption flavour for the initial network RPC connection to
-the MGS node. Non-security flavors are:
+the MGS node.
+.IP
+Non-security flavors are:
.BR null ,
.BR plain ,
and
.BR gssnull ,
which respectively disable, or have no encryption or integrity features for
-testing purposes. Kerberos flavors are:
+testing purposes.
+.IP
+Kerberos flavors are:
.BR krb5n ,
.BR krb5a ,
.BR krb5i ,
and
.BR krb5p .
+.IP
Shared-secret key flavors are:
.BR skn ,
.BR ska ,
.BR ski ,
and
-.BR skpi ,
-see
+.BR skpi .
+.IP
+See
.BR lgss_sk (8)
-for more details. The security flavour for client-to-server connections is
+for more details. The security flavour for client-to-server connections is
specified in the filesystem configuration that the client fetches from the MGS.
.TP
-.BI skpath= file|directory
+.BI skpath= FILE \fR| 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.
.TP
-.BI exclude= ostlist
+.BI exclude= OSTLIST
Start a client or MDT with a (colon-separated) list of known inactive OSTs.
-.SH CLIENT OPTIONS
+.SS CLIENT OPTIONS
In addition to the standard options listed in
.BR mount (8),
Lustre understands the following
.B client-specific
options:
.TP
-.BI flock
+.B flock
Enable full distributed
.BR flock (2)
-support, coherent across all client nodes also using this mount option. This
+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, has no measurable performance impact in modern (2.x) versions of
Lustre, is therefore the recommended mode, and is enabled by default in Lustre
2.12.3 and newer.
.TP
-.BI localflock
+.B localflock
Enable local
.BR flock (2)
-support, using only client-local file locking. This is faster than mounting
+support, using only client-local file locking. This is faster than mounting
with the
.B flock
option, and can be used for applications that depend on functioning
.BR flock (2)
but run only on a single node.
.TP
-.BI noflock
+.B noflock
Disables
.BR flock (2)
-support entirely. Applications calling
+support entirely. Applications calling
.BR flock (2)
will get an
.B ENOSYS
-error. It is possible to mount clients
-with different options, and only those mounted with
+error. It is possible to mount clients with different options,
+and only those mounted with
.B flock
will be coherent amongst each other.
.TP
-.BI lazystatfs
+.B lazystatfs
Allows
.BR statfs (2)
(as used by
and
.BR 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.
+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.
.TP
-.BI nolazystatfs
+.B nolazystatfs
Requires that
.BR statfs (2)
block until all OSTs and MDTs are available and have returned space usage.
.TP
-.BI user_xattr
-Enable get/set of extended attributes by regular users. See the
+.B user_xattr
+Enable get/set of extended attributes by regular users. See the
.BR attr (5)
manual page.
.TP
-.BI nouser_xattr
-Disable use of extended attributes by regular users. Root and system processes can still use extended attributes.
+.B nouser_xattr
+Disable use of extended attributes by regular users.
+Root and system processes can still use extended attributes.
.TP
-.BI always_ping
+.B always_ping
Force a client to keep pinging even if servers have enabled suppress_pings.
.TP
-.BI verbose
+.B verbose
Enable mount/remount/umount console messages.
.TP
-.BI noverbose
+.B noverbose
Disable mount/remount/umount console messages.
.TP
-.BI user_fid2path
+.B user_fid2path
Enable FID to path translation by regular users via
.BR "lfs fid2path" .
.TP
-.BI nouser_fid2path
-Disable FID to path translation by regular users. Root and process with
+.B 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.
.TP
-.BI network= net
+.BI 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.
-.PP
-.RS
+.IP
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.
-.RE
.TP
-.BI test_dummy_encryption
+.B test_dummy_encryption
Enable test dummy encryption mode.
.RE
.TP
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
-.SH SERVER OPTIONS
+.SS SERVER OPTIONS
In addition to the standard mount options and backing disk type
(e.g. ldiskfs) options listed in
.BR mount (8),
options:
.TP
.BI acl
-Enable POSIX Access Control List support for all clients. See the
+Enable POSIX Access Control List support for all clients. See the
.BR acl (5)
manual page.
.TP
.BI no_create
Do not allow objects to be created on an OST, or new directories
-on an MDT after mounting. This allows a (potentially newly-formatted)
+on an MDT after mounting. This allows a (potentially newly-formatted)
MDT or OST to be started without clients starting to use it immediately.
To allow the new target to be used for allocation, unmount and mount the
target again without this option, or run
on the server node.
.BR NOTE :
this does not start the OST or MDT read-only, it only disables the
-creation of new objects there. This means existing objects can be
-be read, modified, or deleted. If the OST or MDT is new then
+creation of new objects there. This means existing objects can be
+be read, modified, or deleted. If the OST or MDT is new then
it will not have any objects on it yet.
.TP
.BI nosvc
.TP
.BI 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
+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).
.TP
.BI 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).
+maximum of 'timeout' seconds.
+The default hard recovery timeout is set to 900 seconds (15 minutes).
+.SH BUGS
+Not very many mount options can be changed with
+.BR "-o remount" .
.SH EXAMPLES
-.TP
-.B mount -t lustre cfs21@tcp0:/testfs /mnt/myfilesystem
Start a client for the Lustre filesystem
.B testfs
at the mount point
.BR /mnt/myfilesystem .
The Management Service is running on a node reachable via NID
-.BR cfs21@tcp0 .
-.TP
-.B mount -t lustre cfs21@tcp0:/testfs/dir /mnt/myfilesystem
+.BR cfs21@tcp0 :
+.RS
+.EX
+.B # mount -t lustre cfs21@tcp0:/testfs /mnt/myfilesystem
+.EE
+.RE
+.PP
Like above example, but mount subdirectory
.B dir
-as fileset.
-.TP
-.B mount -t lustre mgs1@tcp0,mgs1ib@o2ib0:mgs2@tcp0,mgs2ib@o2ib0:/testfs /mnt/fs
+as fileset:
+.RS
+.EX
+.B # mount -t lustre cfs21@tcp0:/testfs/dir /mnt/myfilesystem
+.EE
+.RE
+.PP
Like above example, but the Management Service is running on one of the service
nodes
.B mgs1
and
-.B mgs2, which are two different hosts separated by a colon and
+.BR 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.
-.TP
-.B mount -t lustre_tgt /dev/sda1 /mnt/test/mdt
+one for communication based on which network interfaces are available locally:
+.RS
+.EX
+.B # mount -t lustre mgs1@tcp0,mgs1ib@o2ib0:mgs2@tcp0,mgs2ib@o2ib0:/testfs /mnt/fs
+.EE
+.RE
+.PP
Start the Lustre metadata target service from
.B /dev/sda1
on mountpoint
-.BR /mnt/test/mdt .
-.TP
-.B mount -t lustre_tgt -L testfs-MDT0000 -o abort_recov /mnt/test/mdt
+.BR /mnt/test/mdt :
+.RS
+.EX
+.B # mount -t lustre_tgt /dev/sda1 /mnt/test/mdt
+.EE
+.RE
+.PP
Start the
.B 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.
-.SH BUGS
-Not very many mount options can be changed with
-.BR "-o remount" .
+process for the case that clients are known to be unavailable:
+.RS
+.EX
+.B # mount -t lustre_tgt -L testfs-MDT0000 -o abort_recov /mnt/test/mdt
+.EE
+.RE
.SH AVAILABILITY
.B mount.lustre
-is part of the
-.BR Lustre (7)
+and
+.B mount.lustre_tgt
+are part of the
+.BR lustre (7)
filesystem package.
+.B mount.lustre
+was added in release 0.10.0
+.\" Added in commit 0.9.1
+.B mount.lustre_tgt
+was added in release 2.13.0
+.\" Added in commit v2_12_58-71-g510aea4a37
.SH SEE ALSO
+.BR lfs (1),
.BR lustre (7),
-.BR mount (8),
-.BR mkfs.lustre (8),
-.BR tunefs.lustre (8),
.BR lctl (8),
-.BR lfs (1)
+.BR mkfs.lustre (8),
+.BR mount (8),
+.BR tunefs.lustre (8)
-.TH nids 5 Lustre nids /etc/nids
+.TH NIDS 5 2024-08-28 Lustre "Lustre File Formats"
.SH NAME
/etc/nids \- The static lookup table for Lustre NIDs
+.SH SYNOPSIS
+The static lookup table for Lustre NIDs
.SH DESCRIPTION
The nids file maps host names to NIDs and vice-versa.
.SH FORMAT
-Comments beginning with a hash (#) are ignored. Each line represents one
+Comments beginning with a hash (#) are ignored. Each line represents one
host and includes the following information separated by white space:
.TP
-.I "hostname"
-The primary hostname of the node, e.g. \fIuname -n\fR.
+.I HOSTNAME
+The primary hostname of the node, e.g.
+.IR "uname -n" .
.TP
-.I "primary nid"
+.I PRIMARY_NID
The primary NID of the node.
.TP
-.I "other nid ..."
+.IR OTHER_NID " ..."
Any additional NIDs.
-.SH EXAMPLE
-.nf
-## Tycho
+.SH FILES
+/etc/nids
+.SH EXAMPLES
+.EX
+\&## Tycho
tycho-mds1 172.16.2.200@tcp 172.16.10.200@tcp
tycho1 172.16.2.1@tcp 172.16.10.1@tcp
tycho2 172.16.2.2@tcp 172.16.10.2@tcp
tycho6 172.16.2.6@tcp 172.16.10.6@tcp
tycho7 172.16.2.7@tcp 172.16.10.7@tcp
tycho8 172.16.2.8@tcp 172.16.10.8@tcp
-.fi
-
-.SH FILES
-/etc/nids
+.EE
+.SH AVAILABILITY
+.B /etc/nids
+is part of the
+.BR lustre (7)
+filesystem package since release 2.3.0
+.\" Added in commit 2.2.90-9-g04a38ba7cd
+.SH SEE ALSO
-.TH plot-llstat 1 "Jul 7, 2008" Lustre "utilities"
+.TH PLOT-LLSTAT 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
plot-llstat \- plot Lustre statistics
.SH SYNOPSIS
-.B "plot-llstat results_filename [parameter_index]"
-.br
+.SY plot-llstat
+.I RESULTS_FILENAME
+.RI [ PARAMETER_INDEX ]
+.YS
.SH DESCRIPTION
The
.B plot-llstat
script is used to generate csv file and instructions files for gnuplot
from the output of
-.B llstat.
+.BR llstat .
Since
.B llstat
is generic in nature,
.B plot-llstat
is also a generic script.
-.LP
+.PP
.I parameter_index
can be 1 for count per interval, 2 for count per second (default),
or 3 for total count.
-.LP
+.PP
plot-llstat script creates dat(csv) file using number of operations
specified by the user. Number of operations equals to number of columns in csv
file. And values in those columns are equals to the corresponding value of
the
-.I "parameter_index"
+.I PARAMETER_INDEX
parameter from the output file.
-.LP
+.PP
.B plot-llstat
also creates .scr file that contains instructions for gnuplot to plot
the graph. After generating .dat and .scr files
invokes
.B gnuplot
to display graph.
-.SH EXAMPLE
-.nf
+.SH EXAMPLES
+.EX
llstat -i2 -g -c lustre-OST0000 > log
plot-llstat log 3
-.fi
+.EE
+.SH AVAILABILITY
+.B plot-llstat
+is part of the
+.BR lustre (7)
+filesystem package since release 1.4.0
+.\" Added in commit 1.3.4-1213-g373ad7359d
.SH SEE ALSO
-llstat(8)
+.BR llstat (8)
-.TH routerstat 1 "Aug 6, 2014" Lustre "utilities"
+.TH ROUTERSTAT 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
routerstat \- print Lustre router statistics
.SH SYNOPSIS
-.B "routerstat [interval]
-.br
+.SY routerstat
+.RI [ INTERVAL ]
+.YS
.SH DESCRIPTION
.B routerstat
-displays LNET router statistics. If no
-.I interval
+displays LNET router statistics. If no
+.I INTERVAL
is specified, the statistics are sampled and printed only once;
otherwise, statistics are sampled and printed every
.I interval
seconds. Type Control-C to stop statistics printing.
-.LP
+.PP
Output includes the following fields:
-.LP
-.nf
-M - Number of messages currently being processed by LNET
- (The maximum number of messages ever processed by LNET concurrently)
-E - Number of LNET errors
-S - Total size (length) of messages sent in bytes/
- Number of messages sent
-R - Total size (length) of messages received in bytes/
- Number of messages received
-F - Total size (length) of messages routed in bytes/
- Number of messages routed
-D - Total size (length) of messages dropped in bytes/
- Number of messages dropped
-.fi
-.LP
+.TP 4
+.BR M " -"
+Number of messages currently being processed by LNET
+(The maximum number of messages ever processed by LNET concurrently)
+.TP
+.BR E " -"
+Number of LNET errors
+.TP
+.BR S " -"
+Total size (length) of messages sent in bytes. Number of messages sent
+.TP
+.BR R " -"
+Total size (length) of messages received in bytes. Number of messages received
+.TP
+.BR F " -"
+Total size (length) of messages routed in bytes. Number of messages routed
+.TP
+.BR D " -"
+Total size (length) of messages dropped in bytes. Number of messages dropped
+.PP
When an
.I interval
-is specified, additional lines of statistics are printed including the following fields:
-.LP
-.nf
-M - Number of messages currently being processed by LNET
- (The maximum number of messages ever processed by LNET concurrently)
-E - Number of LNET errors per second
-S - Rate of data sent in Mbytes per second/
- Count of messages sent per second
-R - Rate of data received in Mbytes per second/
- Count of messages received per second
-F - Rate of data routed in Mbytes per second/
- Count of messages routed per second
-D - Rate of data dropped in Mbytes per second/
- Count of messages dropped per second
-.SH EXAMPLE
-.nf
-# routerstat 1
+is specified,
+additional lines of statistics are printed including the following fields:
+.PP
+.TP 4
+.BR M " -"
+Number of messages currently being processed by LNET
+(The maximum number of messages ever processed by LNET concurrently)
+.TP
+.BR E " -"
+Number of LNET errors per second
+.TP
+.BR S " -"
+Rate of data sent in Mbytes per second. Count of messages sent per second
+.TP
+.BR R " -"
+Rate of data received in Mbytes per second.
+Count of messages received per second
+.TP
+.BR F " -"
+Rate of data routed in Mbytes per second. Count of messages routed per second
+.TP
+.BR D " -"
+Rate of data dropped in Mbytes per second. Count of messages dropped per second
+.SH FILES
+/proc/sys/lnet/stats
+.SH EXAMPLES
+.EX
+.B # routerstat 1
M 0(13) E 0 S 117379184/4250 R 878480/4356 F 0/0 D 0/0
M 0( 13) E 0 S 7.00/ 7 R 0.00/ 14 F 0.00/ 0 D 0.00/0
M 0( 13) E 0 S 7.00/ 7 R 0.00/ 14 F 0.00/ 0 D 0.00/0
M 0( 13) E 0 S 7.00/ 7 R 0.00/ 14 F 0.00/ 0 D 0.00/0
M 0( 13) E 0 S 8.00/ 8 R 0.00/ 16 F 0.00/ 0 D 0.00/0
M 0( 13) E 0 S 7.00/ 7 R 0.00/ 14 F 0.00/ 0 D 0.00/0
-...
-.fi
-.SH FILES
-/proc/sys/lnet/stats
+\&...
+.EE
+.SH AVAILABILITY
+.B routerstat
+is part of the
+.BR lustre (7)
+filesystem package since release 0.7.0
+.\" Added in commit 0.7.0
+.SH SEE ALSO
.\"
.\" This file may be copied under the terms of the GNU Public License, v2.
.\"
-.TH tunefs.lustre 8 "2008 Mar 15" Lustre "configuration utilities"
+.TH TUNEFS.LUSTRE 8 2024-08-28 Lustre "Lustre Configuration Utilities"
.SH NAME
tunefs.lustre \- modify the Lustre configuration information on a disk
.SH SYNOPSIS
-.br
-.B tunefs.lustre
-[options]
-.I device
-.br
+.SY tunefs.lustre
+.RI [ OPTIONS ]
+.I DEVICE
+.YS
.SH DESCRIPTION
.B tunefs.lustre
is used to modify the configuration information on a Lustre target
-disk. This includes upgrading old (pre-Lustre 1.6) disks. This does not
+disk. This includes upgrading old (pre-Lustre 1.6) disks. This does not
reformat the disk or erase the target information, but modifying the
-configuration information can result in an unusable filesystem. You have
+configuration information can result in an unusable filesystem. You have
been warned.
-.br
+.P
Changes made here will affect a filesystem only when the target is next
mounted.
-
.SH OPTIONS
.TP
-.BI \--comment= comment
+.BI --comment= COMMENT
Set user comment about this disk, ignored by Lustre.
.TP
-.BI \--dryrun
+.B --dryrun
Only print what would be done; does not affect the disk.
.TP
-.BI \--erase-param " param"
-Remove all previously stored instances of the parameter \fIparam\fR. Attempts
-to remove a non-existing parameter appear as successful ones.
+.BI --erase-param " PARAM"
+Remove all previously stored instances of the parameter
+.IR param .
+Attempts to remove a non-existing parameter appear as successful ones.
.TP
-.BI \--erase-params
+.B --erase-params
Remove all previously stored parameter info.
.TP
-.BI \--failnode= nid,...
+.BI --failnode= NID\fR,...
Set the NID(s) of a failover partner. This option can be repeated as desired.
-Cannot be used with --servicenode.
+Cannot be used with
+.BR --servicenode .
.TP
-.BI \--servicenode= nid,....
+.BI --servicenode= NID\fR,....
Set the NID(s) of all service partner. This option treats all nodes as equal
-service nodes. Cannot be used with --failnode.
+service nodes. Cannot be used with
+.BR --failnode .
.TP
-.BI \--fsname= filesystem_name
-The Lustre filesystem this service will be part of. Default is 'lustre'.
+.BI --fsname= FILESYSTEM_NAME
+The Lustre filesystem this service will be part of. Default is 'lustre'.
.TP
-.BI \--index= index
+.BI --index= INDEX
Force a particular OST or MDT index.
.TP
-.BI \--mountfsoptions= opts
-Set the persistent mount options that will be used when Lustre fs.
-WARNING: unlike earlier versions of \fBtunefs.lustre\fR, this version
-completely replaces the existing mount options with those specified on
-the command line, issuing a warning on stderr if any of the default
-mount options are omitted. The defaults for ldiskfs are
-OST: \fIerrors=remount-ro,mballoc,extents\fR;
-MGS/MDT: \fIerrors=remount-ro,user_xattr\fR.
-\fBDO NOT\fR alter the default mount options unless you know what you are doing.
-.TP
-.BI \--backfs-mount-opts=opts
+.BI --mountfsoptions= OPTS
+Set the persistent mount options that will be used when Lustre fs.
+WARNING: unlike earlier versions of
+.BR tunefs.lustre ,
+this version completely replaces the existing mount options with those
+specified on the command line, issuing a warning on stderr if any of the default
+mount options are omitted. The defaults for ldiskfs are
+.TP
+.B OST :
+.I errors=remount-ro,mballoc,extents
+.TP
+.BR MGS/MDT :
+.I errors=remount-ro,user_xattr
+.PP
+.B DO NOT
+alter the default mount options unless you know what you are doing.
+.TP
+.BI --backfs-mount-opts= OPTS
Use these options for mounting backing fs while tunefs.lustre is working.
.TP
-.BI \--network= net,...
+.BI --network= NET\fR,...
Network(s) to restrict this ost/mdt to. This option can be repeated as desired.
.TP
-.BI \--mgs
+.B --mgs
Add a configuration management service to this target.
.TP
-.BI \--mgsnode= nid,...
+.BI --mgsnode= NID\fR,...
Set the NID(s) of the MGS node, required for all targets other than the MGS.
.TP
-.BI \--nomgs
+.B --nomgs
Remove a configuration management service to this target.
.TP
-.BI \--param " key=value"
+.BI --param " KEY" = VALUE
Set permanent parameter
-.I key
+.I KEY
to value
-.IR value .
+.IR VALUE .
This option can be repeated as desired. All previously stored instances of
-.IR key
+.I KEY
are removed, and new instances specified in the command line are added.
Typical options might include:
.RS
-.I \--param sys.timeout=40
+.I --param sys.timeout=40
.RS
System obd timeout
.RE
-.I \--param lov.stripesize=2M
+.I --param lov.stripesize=2M
.RS
Default stripe size
.RE
-.I \--param lov.stripecount=2
+.I --param lov.stripecount=2
.RS
Default stripe count
.RE
-.I \--param failover.mode=failout
+.I --param failover.mode=failout
.RS
Return errors instead of waiting for recovery
.RE
.RE
.TP
-.BI \--force-nohostid
+.B --force-nohostid
Ignore unset hostid for ZFS import protection. To set hostid either set
spl_hostid option for spl.ko or set /etc/hostid, see zgenhostid(8).
.TP
-.BI \--quiet
+.B --quiet
Print less information.
.TP
-.BI \--verbose
+.B --verbose
Print more information.
.TP
-.BI \--writeconf
-Erase the configuration logs for the filesystem that this server is part of, and regenerate them. This is very dangerous. All clients must be unmounted and servers for this filesystem should be stopped.
-All targets (OSTs/MDTs) must then be restarted to regenerate the logs.
+.B --writeconf
+Erase the configuration logs for the filesystem that this server is part of,
+and regenerate them. This is very dangerous.
+All clients must be unmounted and servers for this filesystem should be stopped.
+All targets (OSTs/MDTs) must then be restarted to regenerate the logs.
No clients should be started until all targets have restarted.
-.br
+.P
Correct order of operations is:
-.br
+.EX
* Unmount all clients of this filesystem.
-.br
* Unmount MDT and all OSTs of this filesystem.
-.br
-* Run \fBtunefs.lustre --writeconf <device>\fR on every server.
-.br
+.BR "* Run " "tunefs.lustre --writeconf <device>" " on every server."
* Mount MDT and OSTs.
-.br
* Mount clients
+.EE
.TP
-.BI \--nolocallogs
+.B --nolocallogs
Use configuration logs from the MGS, not local ones.
-.br
+.P
There is feature that starts a target with a local copy of
the config log in order to avoid a delay in communicating with
the MGS and to load MGS log updates later on.
However, that feature is not always useful.
-.br
-replace_nids changes config logs on the server side and local copies
-become invalid. --nolocallogs sets the nolocallogs mount flag,
+.P
+.B replace_nids
+changes config logs on the server side and local copies
+become invalid.
+.B --nolocallogs
+sets the
+.B nolocallogs
+mount flag,
which causes the local copy of the config log to be ignored.
The flag is reset once new logs are downloaded from MGS.
.TP
-.BI \--quota
+.B --quota
Enable space accounting on old 2.x devices.
-
.SH EXAMPLES
-.TP
-.B tunefs.lustre --erase-params --mgsnode=<new_nid> --writeconf /dev/sda
Change the MGS NID address. (This should be done on every target disk,
-since they should all be contacting the same MGS.)
-.TP
-.B tunefs.lustre --param "failover.node=192.168.0.13@tcp0" /dev/sda
-+Remove all previous failover NID locations for this target, and add a new
-+failover NID location for this target.
-+.TP
-+.B tunefs.lustre --erase-param failover.node /dev/sda
-+Remove all failover NID locations for this target.
-.TP
-.B tunefs.lustre --mgs --mdt --fsname=testfs /dev/sda
-Upgrade an old 1.4.X Lustre MDT to 1.6. The new filesystem name is "testfs".
-.TP
-.B tunefs.lustre --writeconf --mgs --mdt --fsname=testfs /dev/sda1
+since they should all be contacting the same MGS.):
+.RS
+.EX
+.B # tunefs.lustre --erase-params --mgsnode=NEW_NID --writeconf /dev/sda
+.EE
+.RE
+.PP
+Remove all previous failover NID locations for this target, and add a new
+failover NID location for this target:
+.RS
+.EX
+.B # tunefs.lustre --param "failover.node=192.168.0.13@tcp0" /dev/sda
+.EE
+.RE
+.PP
+Remove all failover NID locations for this target:
+.RS
+.EX
+.B # tunefs.lustre --erase-param failover.node /dev/sda
+.EE
+.RE
+.PP
+Upgrade an old 1.4.X Lustre MDT to 1.6. The new filesystem name is "testfs":
+.RS
+.EX
+.B # tunefs.lustre --mgs --mdt --fsname=testfs /dev/sda
+.EE
+.RE
+.PP
Upgrade an old 1.4.X Lustre MDT to 1.6, and start with brand-new 1.6
-configuration logs. All old servers and clients must be stopped.
-
+configuration logs. All old servers and clients must be stopped:
+.RS
+.EX
+.B tunefs.lustre --writeconf --mgs --mdt --fsname=testfs /dev/sda1
+.EE
+.RE
.SH AVAILABILITY
.B tunefs.lustre
-is part of the
-.BR Lustre (7)
-filesystem package.
+is part of the
+.BR lustre (7)
+filesystem package since release 1.4.0
+.\" Added in commit 1.3.4-1130-g113303973e
.SH SEE ALSO
+.BR lfs (1),
.BR lustre (7),
-.BR mkfs.lustre (8),
-.BR mount.lustre (8),
.BR lctl (8),
-.BR lfs (1)
+.BR mkfs.lustre (8),
+.BR mount.lustre (8)