#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 Standard lctl - low level Lustre file system 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 device \family default , \family typewriter attach \family default and \family typewriter detach \family default , \family typewriter setup \family default and \family typewriter cleanup \family default , \family typewriter connect \family default and \family typewriter disconnect \family default , \family typewriter help \family default , and \family typewriter quit \family default . To get a complete listing of available commands, type \family typewriter help \family default at the lctl prompt. To get basic help on the meaning and syntax of a command, type \family typewriter help command \family default . Command completion is activated with the \family typewriter TAB \family 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 \emph on device. \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 positivie integer indicating how many threads should be started. Verbose can take values , \emph on devno \emph default is used as above. \layout LyX-Code \layout LyX-Code \layout Description network\SpecialChar ~ config \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 id given by the hostname/port combination or the elan id \layout Description disconnect\SpecialChar ~ Disconnect from a remote nid \layout Description mynid\SpecialChar ~ [nid] Informs the socknal of the local nid. 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 \emph default \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 receive buffer size, if the size is omited the default size for the buffer is printed \layout Description send_mem\SpecialChar ~ [size] Set send buffer size for the socket, if size is omited the default size for the buffer is printed \layout Description nagle\SpecialChar ~ [on/off] Enable/disable nagle, omiting the arguement will cause the default value to be printed \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 \end_deeper \layout Description device\SpecialChar ~ config \begin_deeper \layout Description attach\SpecialChar ~ type\SpecialChar ~ [name\SpecialChar ~ [uuid]] \shape italic Attach \shape default a type to the current device (which you need to set using the \family typewriter device \family 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 ~ default-stripe-count\SpecialChar ~ default-stripe-size\SpecialChar ~ offset\SpecialChar ~ pattern\SpecialChar ~ UUID1\SpecialChar ~ [U UID2...] 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 UUIDs. \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 till the lctl command has ensured that the mds and osc services are available. This is to avoid mount failures in a reebooting cluster \layout Description close \layout Description getattr\SpecialChar ~ Get attributes for an OST object \layout Description setattr\SpecialChar ~ \SpecialChar ~ Set mode attribute for OST object \layout Description create\SpecialChar ~ [num\SpecialChar ~ [mode\SpecialChar ~ [verbose]]] Create the specified number of OST objects with the given \layout Description destroy\SpecialChar ~ Destroy an OST object \layout Description test_getattr\SpecialChar ~ \SpecialChar ~ [verbose\SpecialChar ~ [[t]objid]] Do getattrs on OST object (objectid+1 on each thread) \layout Description test_brw\SpecialChar ~ [t]\SpecialChar ~ [write\SpecialChar ~ [verbose\SpecialChar ~ [npages\SpecialChar ~ [[t]objid]]]] Do bulk read/writes on OST object ( 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 newconn\SpecialChar ~ \SpecialChar ~ [newuuid] \end_deeper \layout Description debug \begin_deeper \layout Description debug_kernel\SpecialChar ~ [file]\SpecialChar ~ [raw] Get debug buffer and dump to a fileusage \layout Description debug_file\SpecialChar ~ \SpecialChar ~ [output]\SpecialChar ~ [raw] Read debug buffer from input and dump to outputusage \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, help 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 # lctl \newline lctl > newdev \newline lctl > attach obdfilter OBDDEV OBDUUID \layout Description connect \layout LyX-Code lctl > name2dev OSCDEV \newline 2 \newline lctl > device 2 \newline lctl > connect \newline \layout Description getattr \layout LyX-Code 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) \layout Description setup \layout LyX-Code lctl > setup /dev/loop0 extN \newline lctl > quit \layout LyX-Code \layout Subsection BUGS \layout Standard None are known. \layout Subsection AUTHOR \layout Standard Cluster File Systems, Inc. 2002 - created \the_end