The Multi-Module System Controller (MMSC) is used to control a single Origin2000 rack system. When multiple Origin2000 racks are attached to form a single system, each rack has its own MMSC; these MMSC's are then attached to each other over a private ethernet. Each MMSC can accept commands from a number of different sources, including consoles connected via direct serial connection or modem, individual modules (or "bays") in a rack via their module system controllers (MSC), and other MMSC's via the private ethernet. In addition, one rack in a Origin2000 rack system will have a display with several buttons that can also be used to generate commands.
The commands that are issued to an MMSC may directly affect the operation of the MMSC itself or may be passed along to individual bays, either in the same rack as the MMSC or perhaps in a different rack. This document describes the syntax and contents of these MMSC commands. The MMSC may also be used to pass MSC commands through to one or more bays. For more information on the MSC and MSC commands, see the IP27 PROM Technical Reference Manual .
When referring to a Origin2000 system, the term module is sometimes understood to mean any particular module in a system, and sometimes just means one of the two modules in a specific rack in a system. To avoid ambiguity, this document will use the word module when the "logical" definition (i.e. any module in a system) is intended, and will use the term bay when the "physical" definition (i.e. a module in a specific rack) is intended.
Originally, the MMSC was referred to as the "FFSC" (Full Feature System Controller), and the MSC was referred to as the "ELSC" (Entry Level System Controller). The old and new terms may still be used interchangably in some places.
Many commands are intended for delivery to specific racks (MMSCs) and/or bays (MSCs), so it is important to have a way to specify particular destinations.
At the lowest level, racks are addressed with small integers starting with 1, and MSCs within a rack (bays) are addressed with letters representing their position (U and L for Origin2000).
Modules are also addressed with small integers. They are generally written in hexadecimal and may be in the range of 1-ff. The mapping of a module number to its physical (rack and bay) location is arbitrary, and is handled by the IO6 PROM (for more information on module numbers, see The IP27prom Technical Reference Manual ). The MMSC obtains this mapping when either the MMSC or the MSC is reset. It can also rebuild the current mappings using the scan command.
A partition is a collection of modules that is treated as a single logical system. They are not yet supported by the MMSC, but will be eventually.
One or more addresses can be combined into a list. A list of rack or module addresses is made up of one or more addresses or ranges separated by commas with no intervening white space. A range, in turn, is a series of contiguous values specified as two addresses separated by a hyphen, again with no intervening white space. Thus, the following are valid lists of module addresses:
A list of bay addresses is also formed by one or more individual addresses separated by commas with no intervening white space. For bay addresses, comma separators are optional. However, ranges are not meaningful for lists of bay addresses, and so are not allowed.
A physical destination is used to refer to one or more specific bays without regard to any logical module or partition designations. These are typically used for maintenance commands, such as powering a single bay off to replace a board. A complete physical destination specfication consists of one or more "rack/bay pairs":
The keywords rack and bay can be abbreviated as r and b, respectively.
A rack/bay pair selects each of the bays in blist on each of the racks in rlist (think of it as a "product"). Specifying more than one pair extends the selection accordingly (think of it as a "sum"). Thus, the long destination:
is equivalent to:
Instead of specifying a list of addresses for rlist or blist, it is also possible one of several keywords. These include:
If the rack portion of a physical destination is omitted but the bay portion is not, then rack local is implied. If the bay portion is omitted but the rack portion is not, then bay all is implied.
Therefore, the following are all equivalent physical addresses in a four-rack system with two bays per rack.
A logical destination is used to refer to individual modules by their module numbers, rather than their physical position in a system. These are used more commonly that physical destinations, since these are the types of addresses used by IRIX and the various PROMs. A logical destination is formed by the keyword module followed by a module list:
The keyword module can be abbreviated as m if desired.
As with physical destinations, mlist can be replaced with the keyword all to specify all known modules. There is a special case when no modules happen to be defined (this might occur, for example, if none of the modules have been powered on). In this case, module all is equivalent to rack all bay all.
Many MMSC commands pertain only to a particular rack and not a specific bay within it. If a logical address is used with such a command, the bay address that is implied by the module number is ignored.
Both physical and logical destinations may be specified for the same command, as long as one is not embedded in the middle of another. Thus, the following are valid:
But these are not, or at least may not give the expected results:
When the MMSC executes a command, logical destinations are converted internally to physical destinations using the module number mappings known to the MMSC at the time the command is executed. If the MMSC's mappings are no longer valid (for example, if a module has been powered off or is otherwise unavailable), then commands may time out or be directed to the wrong module. The scan command can be used to update the MMSC's mappings manually if necessary.
Although it is possible to indicate a specific destination for any given command, this can be cumbersome in some cases, such as when there are several commands that need to go to the same complicated list of destinations. Therefore, the MMSC allows specifying a default destination by entering a destination with no additional command, or by using the dest command. Any subsequent commands that expect a destination will use this default value if no other destination is specified.
The initial default destination is module all.
The general syntax for MMSC commands is fairly simple, other than the destination.
In general, an MMSC command looks like this:
where:
If an MMSC-escape character is entered in the middle of an MMSC command, all characters between it and the last MMSC-escape character are discarded. This can be useful if the current state of a console or other MMSC connection is currently unknown. In addition, the kill character (Control-U by default) will do the same thing.
The following is a description of the valid MMSC commands. If a command other than one of these is specified, it is assumed to be an MSC command and is passed along to the addressed MSC. Many commands accept an optional destination specification, while others do not. Those commands marked with "[*]" will honor destination specifications. Unless otherwise specified, each of these commands can be executed by a user at the basic authority level.
If level is not specified, then the authority level associated with the console from which the command was entered is displayed.
Otherwise, the authority level of the console from which the command was entered is changed to level. The valid authority levels are basic, supervisor and service. For more information on these, see Security on the Origin2000 Multi-Module System Controller .
If the supervisor or service level is selected and has a password associated with it, then pw, the appropriate password, must be specified after level. If the password is not correct, an error message will be printed and the current authority level will be unchanged.
Set the backspace character of the console on which the command is entered to char, which may be either a single literal character, an integer value representing a single ASCII character, or a control sequence consisting of a carat followed by a single character (e.g. "^H"). Note that this only affects the backspace character used when typing MMSC or MSC commands. It does not affect the backspace character used in normal passthrough operation. The default backspace character is Control-H.
If bs ? is specified, then the current backspace will be printed. This implies that in order to use the "?" character as the actual backspace character, it is necessary to specify it using its numeric ASCII code.
cecho controls the echoing of characters when an MMSC command is being typed in the CONSOLE input mode. It only affects the console on which it was entered. When command echo is off, any characters that are received after an MMSC-escape character are buffered internally by the MMSC but not echoed back to the input source. When command echo is on, then once an MMSC-escape character has been received, an MMSC prompt and the character following the escape character will be echoed to the input source. All additional input characters up to the terminating carriage-return will be echoed as well. Once the carriage-return has been received, input processing returns to its original state.
If cecho is entered without arguments, the current cecho mode is toggled.
The default setting for cecho is on.
port is a number from 1 to 6 corresponding to a particular serial port on the addressed MMSC:
| port | label | default function |
|---|---|---|
| 1 | CONSOLE | TERMINAL |
| 2 | UPPER BAY | UPPER |
| 3 | LOWER BAY | LOWER |
| 4 | BASEIO TTY1 | SYSTEM |
| 5 | ALTERNATE CONSOLE | ALTCONS |
| 6 | TEST | DEBUG |
If no other arguments are specified, then the current communication settings for the selected port are displayed.
The cmd subcommand is used to indicate whether or not MMSC and MSC commands are accepted from a port. If off is specified, then MMSC and MSC commands are not accepted from the port. For ports associated with a terminal (namely ports with functions TERMINAL or ALTCONS), this has the effect of causing the MMSC-escape character to be ignored when the port is in the CONSOLE input mode. This can be useful if a particular console is in an insecure location, for example. For ports associated with the system (e.g. functions SYSTEM or DAEMON), this disables the Out Of Band function FFSC_COMMAND. If on is specified, then MMSC and MSC commands are accepted from the port. The only way to place a port that has specified cmd off into some other input mode is to "steal" the console from a different port (see steal). Thus, be very careful that at least one console has specified cmd on. The default setting for ports 1 and 5 is cmd on, and for ports 2, 3, 4 and 6 is cmd off.
The function subcommand is used to set the function associated with the selected port to func. Valid functions include:
| func | Function of associated port |
|---|---|
| TERMINAL | Communication with the user terminal device. |
| UPPER | Communication with the MSC in the upper bay of the rack. |
| LOWER | Communication with the MSC in the lower bay of the rack. |
| SYSTEM | Communication with the operating system. This is the port through which both the user and the MMSC communicate with IRIX. It is typically connected to the TTY1 port on the master BASEIO card. |
| ALTCONS | Remote service port. This would typically be connected to a modem that is used for communication with an SGI service center. |
| DAEMON | Communication with a system controller daemon on IRIX, such as ffscd. Such a daemon would ordinarily be used for generating bar graph data on the MMSC display. This port would typically be connected to a second serial port on BASEIO card. |
| DEBUG | MMSC debugging log. This is mostly useful if some sort of MMSC error has occurred. In that event, the debugging log may contain additional information. |
Any given function can be assigned to at most one port. If func specifies a function that is already assigned to another port, then the other port will have its port changed to an "unassigned" state. Care should be taken to ensure that, at minimum, the TERMINAL function is assigned to a port, or else it may become impossible to communicate with the MMSC.
The oob subcommand is used to indicate whether or not Out Of Band (OOB) data received from a port should be intercepted and processed. OOB messages are used by programs such as ffscd to display bar graphs and other information on the MMSC display. The actual OOB message protocol is not described in this document. If on is specified, then OOB message processing will be done for data received by the port. For ports associated with the system (namely ports with functions SYSTEM or DAEMON), any data preceded by the Out-Of-Band Prefix character will be interpreted as an OOB message. The MMSC will perform the requested action and respond as specified in the OOB message protocol. For ports associated with a terminal (namely ports with functions TERMINAL or ALTCONS), OOB message processing means simply doubling the Out-Of-Band Prefix character before sending it to the system. This prevents it from being interpreted by IRIX as the beginning of an Out Of Band message. If off is specified, then Out Of Band messages that are received from the port are ignored and passed through without alteration. The default setting for all ports is oob off.
The rxbuf and txbuf subcommands are used to change the size of the serial port's receive and transmit buffers, respectively. The default for both is 4096. If the system and terminal ports have different speeds, it may be necessary to increase the size of the transmit buffer on the slower port or else data may be lost. In extreme cases, serial buffer overflows have been known to knock a serial port out of service, so underestimating the buffer size should be carefully avoided.
The speed subcommand is used to set the baud rate of the selected port to baudrate. Valid baud rates include 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600 and 115200.
Function changes do not take effect until the MMSC has been reset (see reset_mmsc). Speed changes take effect immediately. The user must have service authority to specify the cmd, function, oob or speed subcommands.
If args is not specified, console pass-through mode is entered. Any subsequent input is passed through to the system console port and any output from that system console port is echoed here. There are two exceptions:
All input from the current console will be sent directly to the other console and vice versa. The only exception is that typing the exit character on the current console will cause both consoles to leave direct mode and return to their usual input modes (console mode for the terminal and RAT mode for the alternate console).
Direct mode is mostly useful for programming a modem that happens to be attached to the "other" console.
A user must have service authority to execute this command.
When the "serial downloader" flag is set, the initialization PROM on the MMSC's single-board computer will load the "serial downloader" rather than the normal MMSC firmware. The serial downloader can be used to load a new firmware image into the MMSC's flash RAM. For more details on loading the MMSC firmware with the serial downloader, see the document Flashing MMSC Firmware.
Note that once the MMSC has been initialized with the "serial downloader" flag set, there is no way to return to normal MMSC operation until a new MMSC firmware image is loaded. If you inadvertantly set the "serial downloader" flag on the wrong rack, use the downloader disable command to reset the flag as soon as possible. If an MMSC is reset, either with the reset_mmsc command or because it has lost power, it will be necessary to follow the procedure in Using the Serial Downloader to restore normal operation.
The downloader enable command is typically used to place an MMSC that does not have an attached display into serial downloader mode. A rack which does have a display can be placed into serial downloader mode by holding down the bottom two buttons of the display (ENTER and DOWN) while the MMSC is being powered on.
A user must have service authority to execute this command.
Set the end-of-command character for the console on which the command was entered to char. char may be either a single literal character, an integer value representing a single ASCII character, or a control sequence consisting of a carat followed by a single character (e.g. "^M"). The end-of-command character is used to signal the end of an MMSC command while in the console or MMSC input modes. The default end-of-command character is Control-M (a.k.a carriage-return).
If end ? is specified, then the current end-of-command character will be printed. This implies that in order to use the "?" character as the actual end-of-command character, it is necessary to specify it using its numeric ASCII code.
Set the MMSC-escape character for the console on which the command was entered to char. char may be either a single literal character, an integer value representing a single ASCII character, or a control sequence consisting of a carat followed by a single character (e.g. "^T").
The MMSC-escape character is used to signal the beginning of an MMSC command while in console mode. The default MMSC-escape character is Control-T. Note that changing the MMSC-escape character does not affect the MSC escape character, which is always Control-T.
If esc ? is specified, then the current MMSC-escape character will be printed. This implies that in order to use the "?" character as the actual MMSC-escape character, it is necessary to specify it using its numeric ASCII code.
In MSC and MMSC mode, the same effect can be accomplished by simply typing the exit character. Notice that the only way to leave MSC mode is by typing the exit character, since MMSC commands are not accepted in MSC mode.
If char is specified, set the exit character for the console on which the command was entered to char. char may be either a single literal character, an integer value representing a single ASCII character, or a control sequence consisting of a carat followed by a single character (e.g. "^E").
The default exit character is Control-E (for reasons I do not fathom). An alternative might be Control-D, the standard Unix EOF character that is often used to exit shells.
If exit ? is specified, then the current exit character will be printed. This implies that in order to use the "?" character as the actual exit character, it is necessary to specify it using its numeric ASCII code.
In the first form, flash from system (the words "from system" are optional), the image is provided to the MMSC from the console of a running IRIX system using the flashmmsc(1m) command. The flashmmsc IRIX command and the flash MMSC command must both be issued from the same terminal device. Typically, the flashmmsc command is issued first with the -m option, then an MMSC-escape character is typed and the flash command entered from the same terminal.
In the second form, flash from console, the image is read from the terminal device itself. This is useful when the user terminal is in fact a terminal emulator (perhaps on a PC) capable of XMODEM file transfer. For this form of the flash command, one would issue the flash command to the MMSC first, then arrange for an XMODEM or XMODEM-1K file transfer of the firmware image from the user terminal. The use of XMODEM-1K may improve the transfer time by as much as 50%.
Be forewarned that this command takes a long time to run. In addition to the time it takes to download the firmware image over a serial line (MMSC firmware images are approximately 1MB in size) an additional 100 seconds is required for clearing out the flash RAM prior to installing the new image. Every effort should be made not to interrupt the MMSC while this command is taking place. Early versions of the MMSC do not have sufficient flash storage to hold two separate images; therefore attempting to flash a new image will necessarily wipe out the old firmware image, even if the attempt turns out to be unsuccessful. Do not reboot an MMSC that has tried and failed to flash a new firmware image. If this does occur, there is an emergency procedure to flash new firmware onto it if necessary. For more information on this procedure, see Flashing MMSC Firmware.
A user must have service authority to execute this command.
Displays help about the MMSC commands. If no argument is specified, then a list of available commands is printed. If a command is specified, more specific information about that particular command is printed. If ALL is specified, specific information about all available commands is printed.
In all cases, the data will be displayed as paged output (see pager for details).
Set the kill character for the console on which the command was entered to char. char may be either a single literal character, an integer value representing a single ASCII character, or a control sequence consisting of a carat followed by a single character (e.g. "^U"). The kill character is used while typing an MMSC/MSC command in console mode to cancel any characters that have been typed since the last MMSC-escape character. In MMSC mode, the kill character cancels any characters that have been typed since the last prompt was printed.
The default kill character is Control-U.
Note that this does not affect the normal Unix kill character associated with the console when it is in passthrough mode.
If kill ? is specified, then the current kill character will be printed. This implies that in order to use the "?" character as the actual kill character, it is necessary to specify it using its numeric ASCII code.
The log argument specifies which log is to be manipulated. It may be one of the following values:
| log | function | |
|---|---|---|
| MSC | A log of all messages and other output from the addressed MSC. | |
| SYSTEM | A log of all output generated by the Base I/O board on the addressed rack, typically consisting of output from the operating system. | |
| TERMINAL | A log of all output that has been sent to the main terminal console attached to the addressed rack. This is different from the SYSTEM log in that it may contain output from the MSC and MMSC input modes, as well as any messages received from an MSC (typically generated by various PROM's during system initialization). | |
| ALTCONS | A log of all output that has been sent to the alternate console attached to the addressed rack. | |
| DEBUG | A log of all debugging messages produced by the addressed rack's MMSC. | |
| DISPLAY | A log of each command issued by the MMSC display and the corresponding response. |
If log is not specified, the default is msc.
The clear subcommand causes the contents of the specified log to be discarded. Logging will continue as usual unless it has been disabled with the disable subcommand.
The dump subcommand causes the contents of the specified log to be dumped on the current terminal. The data will be displayed as paged output (see pager for details). If num is specified, then only the last num lines of the log will be dumped. This is the default subcommand if none is specified.
The disable subcommand will cause logging of data to the specified log to be stopped. Any data that is currently in the log will remain unchanged. The enable subcommand will resume logging.
The info subcommand shows information about the specified log, such as its size and its enable/disable state. The ? subcommand does the same thing.
The lines subcommand sets the maximum size of the specified log to num lines, where a "line" is defined to be a sequence of characters ending with either CR/LF or LF/CR. The actual number of lines that can be held in a log is also subject to the average line length (see below). The change will not take effect until the MMSC has been reset (see reset_mmsc). If default is specified for num then the actual value will be taken from the LOG_DFLT_NUMLINES environment variable.
The length subcommand sets the average line length of lines in the buffer to num. The total amount of storage set aside for log data is the product of the log's lines and length values. If the length value is too small, then the log might wrap before it contains the maximum number of lines. If the length value is too large, it will waste storage. A change to the length value will not take effect until the MMSC has been reset (see reset_mmsc). If default is specified for num then the actual value will be taken from the LOG_DFLT_LINELEN environment variable.
The lines, length and enable/disable settings for each log are separate from the other logs. They are saved in NVRAM and will be restored after the MMSC has been reset.
A user must have service authority to execute the lines, length, enable or disable subcommands.
If args is not specified, enter MMSC mode. In MMSC mode, the MMSC prompt:
Ordinarily, the MMSC-escape character has no special meaning in MMSC mode and will processed like any other character. However, if the first character of a line is the MMSC-escape character, it will instead be discarded. This allows automated tools (and engineers with bad memories) to type the same sequence of characters in order to issue an MMSC or MSC command from either MMSC or console mode.
mmsg controls the display of unsolicited messages from the MSC (e.g. those sent to the MMSC in response to an MSC "acp" command). It only affects the console on which it was entered. When mmsg is off, unsolicited MSC messages are discarded silently. When mmsg is on, all unsolicited MSC messages are echoed to the input source on their own lines (i.e. preceded and followed by carriage-return/linefeed as needed), prefixed with a string identifying the originating MSC. The prefix is of the form:
For example:
When mmsg is terse, unsolicited MSC messages are still echoed on their own line, but the identifying prefix is omitted.
If mmsg is entered without arguments, the current mmsg mode is cycled in some undefined, but consistent, order.
If mmsg is entered in the second form, then any unsolicited MSC messages generated by the addressed racks will be sent to the TERMINAL device attached to the rack specified by rackid. Specifying a rackid of none will cause MSC messages to be discarded, and so is functionally equivalent to mmsg off.
Because an MMSC is not able to detect the presence of a BaseIO card on a particular rack, it is necessary to run this command at least once when the system is first set up in order to receive unsolicited MSC messages. The command would typically be of the form "rack all mmsg rack rackid"
mmsg rack without a rackid will return the ID of the rack currently designated to receive unsolicited MSC messages.
The third form of mmsg is similar to the second form except that it specifies a rack whose ALTERNATE console port should receive unsolicited messages. The rackids specified for rack and altrack do not have to be the same. Either or both may be none.
The default mmsg mode is off. The default rack to receive unsolicited MSC messages on both the TERMINAL and ALTERNATE ports is 1.
If args is not specified, MSC mode is entered. MSC mode is (supposed to be) functionally equivalent to having a direct connection to the MSC port: all keyboard input is echoed directly to the addressed MSC, and all output from the MSC is echoed to the user terminal without modification. There are two exceptions. The first is that the current exit-character will cause an exit from MSC mode and return you to the previous input mode. (There is no way to send an exit-character to the MSC in MSC mode.) The second exception is that any output from the MSC that begins with a Control-T character is assumed to be a message to the MMSC; all characters up to and including the next carriage return will be handled by the MMSC on the same rack as the MSC.
When the msc command is used without args specified, it may address only one MSC or else an error will occur.
Note that when an MSC has been attached to a console with the msc command, that MSC is no longer available to perform commands issued from other consoles. For example, if the alternate console is in MSC mode, then any MSC commands issued from the normal terminal or the display will be rejected. The error message in this case is typically ERROR INUSE.
Output from the system will be held and/or discarded while in MSC mode. Messages from other MSC's will be displayed only after a CR/LF sequence has been echoed to the user terminal, or if the terminal has been inactive for some period of time (approximately 2 seconds).
If value is specified, then the nap interval for the console on which the command is entered is set to value microseconds. The nap interval is the frequency with which the MMSC will attempt to perform various clean-up tasks when the console is otherwise idle. The most visible effect of these clean-up tasks is that any incomplete messages which have been received from an MSC will be printed. (An "incomplete message" is one which is not terminated with a CR/LF combination.)
If default is specified instead of a value, the nap interval will be reset to the system default, which is normally 2 seconds.
If neither value nor default is specified, then the current nap interval will be printed.
A user must have service authority to execute this command.
Sets the option flags to value. The currently defined option flags, which can be logically OR'ed together in almost any combination, include:
| 0x00000001 | Do not display the MMSC prompt in console mode until the character after the MMSC escape character has been typed. This may be useful for people who expect to send the MMSC escape to the system (i.e. by typing it twice) from time to time. |
| 0x00000002 | If the end-of-command character (usually carriage-return) is typed immediately after the MMSC escape character, enter MMSC mode on the local rack. This would be equivalent to typing the command rack local mmsc. This may be useful for people who use mmsc mode frequently. |
| 0x00000004 | The MMSC always sends an ech 0 command to the MSC before it takes control of it, so when control is given to the user after entering MSC mode, echoing will not normally be enabled. When this option is set, an ech 1 command will be sent to the MSC prior to entering MSC mode. This should cause the MSC to echo keyboard input as it is typed. |
| 0x00000008 | Ordinarily, blank messages from the MSC are ignored, even with mmsg on. When this option is set, blank messages from the MSC will be printed like any other message. |
| 0x80000000 | Rob Mode |
The back subcommand is used to specify the character that is typed to scroll backwards through the paged output. char may be either a single literal character, an integer value representing a single ASCII character, or a control sequence consisting of a carat followed by a single character (e.g. "^U"). Notice that the only way to specify a <space> character is with its integer value, 32. The default back character is "b".
Similarly, the fwd subcommand is used to specify the character that is typed to scroll forwards through the output, and the quit subcommand specifies the character that is typed to discontinue the output. The default fwd character is <space>, and the default quit character is "q".
The info subcommand is used to display information about the current pager settings. The ? subcommand does the same thing. This is the default if no subcommand is specified.
The lines subcommand is used to set the number of lines in a single page of output. After val lines have been displayed, a trailer line will be printed and output will be halted until the fwd, back or quit character has been typed. Specifying default for val will cause the default value to be restored. The default setting is controlled by the PAGE_DFLT_LINES environment variable, which is typically 23 lines (leaving room for a single trailer line on a standard 24-line terminal).
The off subcommand turns off paged output. Any output that would ordinarily be paged is instead sent to the terminal in one single, large block. The on subcommand reverses this.
The back, fwd, quit and on/off settings for each console are separate from the other consoles. They are saved in NVRAM and will be restored after the MMSC has been reset.
passwd may be one of the following values:
| passwd | Corresponding password |
|---|---|
| msc | The password on the addressed MSC. This is the same password that is specified with the MSC pas command. This will be passed along to the MSC before any restricted commands when the user is in the supervisor or service authority level. |
| supervisor | The password used to enter the supervisor authority level. |
| service | The password used to enter the service authority level. You must be at the service authority level to change this password. |
The set subcommand changes the password passwd to string. If passwd is msc, then the password will be changed on the MSC first by passing the command "pas s string" to the MSC. If the command does not succeed, then the password will not be changed on the MMSC either.
The setmmsc subcommand is identical to the set subcommand, except when passwd is msc. In that case, the password will not be set on the MSC first. This is useful if the password had been changed on the MSC without the MMSC's knowledge (for example, while in the MSC input mode).
The unset subcommand is used to remove the password associated with passwd. Note that the MSC does not have a notion of "removing the password", so specifying a passwd of msc will affect the MMSC only. In this case, no attempt is made to set or revoke the MSC supervisor mode prior to sending commands to it.
If value is not specified, then the destination is ignored and the current rack ID of the local rack is returned.
A user must have service authority to execute this command.
RAT mode is sort of a combination of Console, MMSC and MSC input modes that is supposed to make the MMSC behave somewhat like an MSC. It is intended mainly for use by certain automated service tools. It has the following characteristics:
This does not affect IRIX or any other part of the system. Only the addressed full-featured system controllers are rebooted.
For historical reasons, the command reboot_mmsc does the same thing as reset_mmsc.
A user must have service authority to execute this command.
Values that are stored in non-volatile storage include the rack ID, MMSC serial port speeds, and the mmsg rack settings.
A user must have service authority to execute this command.
rmsg controls the echoing of responses to MSC or MMSC commands. It only affects the console on which the command was entered. When rmsg is off, the response string that is generated by an MSC or MMSC command is discarded silently. When rmsg is on, all command responses are echoed to the input source on their own lines (i.e. preceded and followed with carriage-return/linefeed as needed). When rmsg is error, only error responses (i.e. those not prefixed by "OK" or "OFFLINE") are echoed.
If rmsg is entered without arguments, the current rmsg mode is cycled in some undefined, but consistent, order.
In either error or on mode, the terminal does not return to its normal passthrough mode until a response has actually been received or some timeout has been exceeded.
The default setting for rmsg is on.
Unlike most commands, if "bay all" is specified in the destination for this command, then all bays in the specified racks will be probed, even if they were originally thought to be offline. This is useful for determining if a formerly offline MSC has been brought online somehow. "module all" behaves normally and so is not useful for finding new modules.
A user must have service authority to execute this command.
Only environment variables known to the MMSC may be stored or displayed. Valid environment variables include:
| Variable | Function | Default value |
|---|---|---|
| DEBOUNCE_DELAY | The debounce delay (in microseconds) used by the MMSC display switches. It may be helpful to increase this value if single key presses are being registered multiple times. On the other hand, if some key presses seem to ignored when pressing keys rapidly, it may help to decrease this value. | 200000 |
| LOG_DFLT_NUMLINES | The default number of lines in a log. Once a log has been filled with this many lines of data, older lines will be discarded to make room for new lines. The MMSC must be reset (see reset_mmsc) for this setting to take effect. | 200 |
| LOG_DFLT_LINELEN | The default average line length for a log. The total amount of storage allocated for logged messages is NUMLINES * LINELEN. If many lines in a log are larger than LINELEN characters in length, then it may be necessary to discard older lines even before the log contains NUMLINES lines. The MMSC must be reset (see reset_mmsc) for this setting to take effect. | 80 |
| PAGE_DFLT_LINES | The default number of lines per page when paging output. | 23 |
| PWR_DELAY | The MSC "pwr u" and "pwr c" commands may be intercepted in order to sequence the power to two or more racks one rack at a time to avoid an excessive power surge. (See Intercepted MSC Commands, below.) This variable sets the number of microseconds to wait between "pwr" commands. | 5000000 |
A user must have service authority to execute this command.
A user must have supervisor authority to execute this command.
A user must have supervisor authority to execute this command.
A user must have service authority to execute this command.
If a destination but no command is specified, then the destination becomes the new "default destination" (see above).
Certain MSC commands are intercepted by the MMSC before being passed along to the MSC itself. This interception is not performed when the commands are sent to an MSC using the msc args command. In general, you should avoid sending commands to an MSC with the MSC args command whenever possible, since the additional actions performed by the MMSC are usually beneficial. The intercepted commands and the additional actions associated with them include:
| MSC command | intercepted actions |
|---|---|
| pas s pw | The command is converted into the MMSC command "password set msc pw", which should have the same effect on the MSC password, plus the added benefit of setting the password on the MMSC as well. |
|
pwr u pwr c |
The command will be forwarded to the addressed MSC's, but one rack at a time with a time delay between each. This will prevent all of the modules from being powered on nearly simultaneously, which could cause a fairly severe power surge. |
| ver | The MMSC version string, rather than the MSC version, is printed, as documented above. |
Send questions and comments to: Rob Bradshaw Last modified: Wed Dec 11 19:24:12 PST