#LyX 1.2 created this file. For more info see http://www.lyx.org/ \lyxformat 220 \textclass amsart-plain \language english \inputencoding auto \fontscheme times \graphics default \paperfontsize default \spacing single \papersize letterpaper \paperpackage a4 \use_geometry 0 \use_amsmath 0 \use_natbib 0 \use_numerical_citations 0 \paperorientation portrait \secnumdepth 3 \tocdepth 3 \paragraph_separation skip \defskip medskip \quotes_language english \quotes_times 2 \papercolumns 1 \papersides 1 \paperpagestyle default \layout Section lctl \layout Subsection NAME \layout Description lctl Low level Lustre filesystem configuration utility. \layout Subsection SYNOPSIS \layout Standard \series bold lctl \layout Standard \series bold lctl\SpecialChar ~ --device\SpecialChar ~ \layout Standard \series bold lctl\SpecialChar ~ --threads\SpecialChar ~ \SpecialChar ~ \SpecialChar ~ \SpecialChar ~ \layout Subsection DESCRIPTION \layout Standard The program can be invoked in interactive mode by issuing \series bold lctl. \series default After that, commands are issued as below. The most common commands in lctl are (in matching pairs) \family typewriter \size small device \family default \size default and \family typewriter \size small attach \family default \size default , \family typewriter \size small detach \family default \size default and \family typewriter \size small setup \family default \size default , \family typewriter \size small cleanup \family default \size default and \family typewriter \size small connect \family default \size default , \family typewriter \size small disconnect \family default \size default and \family typewriter \size small help \family default \size default , and \family typewriter \size small quit \family default \size default . To get a complete listing of available commands, type \family typewriter \size small help \family default \size default at the lctl prompt. To get basic help on the meaning and syntax of a command, type \family typewriter \size small help command \family default \size default . Command completion is activated with the \family typewriter \size small TAB \family default \size default key, and command history is available via the up- and down-arrow keys. \layout Standard For non-interactive single threaded use, one uses the second invocation, which runs \emph on command \emph default after connecting to the device \emph on . \emph default \layout Description --device The device number to be used for the operation. The value of devno is an integer, normally found by calling \emph on lctl name2dev \emph default on a device name. \layout Description --threads How many threads should be forked doing the command specified. The numthreads variable is a strictly positive integer indicating how many threads should be started. The \emph on devno \emph default option is used as above. \layout Description --ignore_errors\SpecialChar ~ |\SpecialChar ~ ignore_errors Ignore errors during script processing \layout Description dump Save ioctls to a file \layout LyX-Code \layout Description Network\SpecialChar ~ Configuration \begin_deeper \layout Description network\SpecialChar ~ Indicate what kind of network applies for the configuration commands that follow. \layout Description connect\SpecialChar ~ [[\SpecialChar ~ ]\SpecialChar ~ |\SpecialChar ~ ] This will establish a connection to a remote network network \emph on id \emph default given by the hostname/port combination, or the elan \emph on id \emph default . \layout Description disconnect\SpecialChar ~ Disconnect from a remote \emph on nid \emph default . \layout Description mynid\SpecialChar ~ [nid] Informs the socknal of the local \emph on nid \emph default . It defaults to hostname for tcp networks and is automatically setup for elan/myrinet networks. \layout Description add_uuid\SpecialChar ~ \SpecialChar ~ Associate a given UUID with an \emph on nid. \layout Description close_uuid\SpecialChar ~ Disconnect a UUID. \layout Description del_uuid\SpecialChar ~ Delete a UUID association. \layout Description add_route\SpecialChar ~ \SpecialChar ~ \SpecialChar ~ [target] Add an entry to the routing table for the given target. \layout Description del_route\SpecialChar ~ Delete an entry for the target from the routing table. \layout Description route_list Print the complete routing table. \layout Description recv_mem\SpecialChar ~ [size] Set the socket \emph on receive \emph default buffer size; if the size is omitted, the default size for the buffer is printed. \layout Description send_mem\SpecialChar ~ [size] Set send buffer size for the socket; if size is omitted, the default size for the buffer is printed. \layout Description nagle\SpecialChar ~ [on/off] Enable/disable nagle; omitting the argument will cause the default value to be printed. \layout Description fail\SpecialChar ~ nid|all\SpecialChar ~ [count] Fail/restore communications. Ommiting tha count implies fail indefinitely, count of zero indicates that communication should be restored. A non-zero count indicates the number of portals messages to be dropped after which the communication is restored. \end_deeper \layout Description Device\SpecialChar ~ Selection \begin_deeper \layout Description newdev Create a new device. \layout Description name2dev This command can be used to determine a device number for the given device name. \layout Description device This will select the specified OBD device. All other commands depend on the device being set. \layout Description device_list Show all the devices. \layout Description lustre_build_version Print the Lustre build version. \end_deeper \layout Description Device\SpecialChar ~ Configuration \begin_deeper \layout Description attach\SpecialChar ~ type\SpecialChar ~ [name\SpecialChar ~ [uuid]] \shape italic \emph on Attach \shape default \emph default a type to the current device (which you need to set using the \family typewriter \size small device \family default \size default command) and give that device a name and UUID. This allows us to identify the device for use later, and also tells us what type of device we will have. \layout Description setup\SpecialChar ~ Type specific device setup commands. For obdfilter, a setup command tells the driver which block device it should use for storage and what type of filesystem is on that device. \layout Description cleanup Cleanup a previously setup device. \layout Description detach Remove driver (and name and UUID) from the current device. \layout Description lov_setconfig\SpecialChar ~ lov-uuid\SpecialChar ~ stripe-count\SpecialChar ~ default-stripe-size\SpecialChar ~ offset\SpecialChar ~ pattern\SpecialChar ~ UUID1\SpecialChar ~ [UUID2...] Write LOV configuration to an MDS device. \layout Description lov_getconfig\SpecialChar ~ lov-uuid Read LOV configuration from an MDS device. Returns default-stripe-count, default-stripe-size, offset, pattern, and a list of OST UUID's. \end_deeper \layout Description Device\SpecialChar ~ Operations \begin_deeper \layout Description probe\SpecialChar ~ [timeout] Build a connection handle to a device. This command is used to suspend configuration until the lctl command has ensured that the MDS and OSC services are available. This is to avoid mount failures in a rebooting cluster. \layout Description close \emph on \emph default Close the \emph on \emph default connection handle \layout Description getattr\SpecialChar ~ Get attributes for an OST object \emph on \emph default . \layout Description setattr\SpecialChar ~ \SpecialChar ~ Set mode attribute for OST object \emph on \emph default . \layout Description create\SpecialChar ~ [num\SpecialChar ~ [mode\SpecialChar ~ [verbose]]] Create the specified number \emph on \emph default of OST objects with the given \emph on \emph default . \layout Description destroy\SpecialChar ~ \SpecialChar ~ starting\SpecialChar ~ at\SpecialChar ~ Destroy < \emph on num \emph default > number of objects starting from the object with object id < \emph on objid \emph default >. \layout Description test_getattr\SpecialChar ~ \SpecialChar ~ [verbose\SpecialChar ~ [[t]objid]] Do \emph on \emph default \emph on getattrs \emph default on OST object \emph on \emph default ( \emph on objectid \emph default +1 on each thread). \layout Description test_brw\SpecialChar ~ [t]\SpecialChar ~ [write\SpecialChar ~ [verbose\SpecialChar ~ [npages\SpecialChar ~ [[t]objid]]]] Do \emph on \emph default bulk \emph on read \emph default / \emph on writes \emph default on OST object \emph on \emph default ( \emph on \emph default per I/O). \layout Description test_ldlm Perform lock manager test. \layout Description ldlm_regress_start\SpecialChar ~ %s\SpecialChar ~ [numthreads\SpecialChar ~ [refheld\SpecialChar ~ [numres\SpecialChar ~ [numext]]]] Start lock manager stress test. \layout Description ldlm_regress_stop Stop lock manager stress test. \layout Description dump_ldlm Dump all lock manager state, this is very useful for debugging \layout Description activate Activate an import \layout Description deacttivate De-activate an import \layout Description recover\SpecialChar ~ \layout Description lookup\SpecialChar ~ \SpecialChar ~ \layout Description notransno Disable sending of committed transnumber updates \layout Description readonly Disable writes to the underlying device \layout Description abort_recovery Abort recovery on MDS device \layout Description mount_option Dump mount options to a file \layout Description get_stripe show stripe info for an echo client object. \layout Description set_stripe\SpecialChar ~ [\SpecialChar ~ width!count[@offset]\SpecialChar ~ [:id:id....] set stripe info for an echo client \layout Description unset_stripe\SpecialChar ~ unset stripe info for an echo client object. \end_deeper \layout Description Debug \begin_deeper \layout Description debug_daemon debug daemon control and dump to a file \layout Description debug_kernel\SpecialChar ~ [file]\SpecialChar ~ [raw] Get debug buffer and dump to a \emph on fileusage \emph default . \layout Description debug_file\SpecialChar ~ \SpecialChar ~ [output]\SpecialChar ~ [raw] Read debug buffer from input and dump to \emph on outputusage \emph default . \layout Description clear Clear kernel debug buffer. \layout Description mark\SpecialChar ~ Insert marker text in kernel debug buffer. \layout Description filter\SpecialChar ~ Filter message type from the kernel debug buffer. \layout Description show\SpecialChar ~ Show specific type of messages. \layout Description debug_list\SpecialChar ~ List all the subsystem and debug types. \layout Description panic Force the kernel to panic. \end_deeper \layout Description Control \begin_deeper \layout Description help Show a complete list of commands; \emph on help \emph default can be used to get help on specific command. \layout Description exit Close the lctl session. \layout Description quit Close the lctl session. \end_deeper \layout Subsection EXAMPLES \layout Description attach \layout LyX-Code \size small # lctl \newline lctl > newdev \newline lctl > attach obdfilter OBDDEV OBDUUID \size default \newline \layout Description connect \layout LyX-Code \size small lctl > name2dev OSCDEV \newline 2 \newline lctl > device 2 \newline lctl > connect \size default \newline \layout Description getattr \layout LyX-Code \size small lctl > getattr 12 \newline id: 12 \newline grp: 0 \newline atime: 1002663714 \newline mtime: 1002663535 \newline ctime: 1002663535 \newline size: 10 \newline blocks: 8 \newline blksize: 4096 \newline mode: 100644 \newline uid: 0 \newline gid: 0 \newline flags: 0 \newline obdflags: 0 \newline nlink: 1 \newline valid: ffffffff \newline inline: \newline obdmd: \newline lctl > disconnect \newline Finished (success) \newline \layout Description setup \emph on \layout LyX-Code \size small lctl > setup /dev/loop0 extN \newline lctl > quit \size default \newline \layout LyX-Code \layout Subsection BUGS \layout Standard None are known. \the_end