Common shell commands

Troubleshooting Engenio controllers: 6091, 5884, 4884, 4774, 2882, 2880, 2822, 2820


WARNING:
Before attempting to connect to the serial port of an array controller, or to use rlogin to connect via the network, the administrator must know some of the dangers involved with this type of access:

  • There are several windows rlogin clients that will crash the controller during the connection attempt. Putty version 0.53b works. Newer version of putty do not.
  • When using the shell, typographical errors should not be entered. If you make a mistake typing something, use CONTROL-H to erase the character(s), or CONTROL-K to erase the whole line.
  • If you hit CONTROL-C twice in succession, it can crash the controller
  • If you type the wrong characters, for example a period (.) instead of a comma (,) it can crash the controller
  • It is possible to start a command on the serial console that will either run for a very long time or run forever, which can effectively lock you out of the system, forcing a reboot to recover.
  • There are many undocumented commands in the shell that will cause the controller to panic and reboot if run improperly
  • There is very little "help" in the shell
  • There is no comprehensive listing of all available shell commands
  • The serial port will auto-negotiate baud rate, so set your terminal baud rate, then hit CONTROL-BREAK slowly until the serial port responds.
  • Admins should always log their terminal sessions when connecting to the serial or network CLI


The standard suite of troubleshooting commands are:

-> ld  hwLogShow
-> excLogShow
-> tt "sodMain"
-> vxAbsTicks/60/60/60
-> memShow
-> moduleShow
-> moduleList
-> lockMgrPrint
-> getObjectGraph_MT 99
-> cfgSundTab
-> ccmStateAnalyze 99
-> arrayPrintSummary
-> ghsList
-> cfgUnitList
-> vdAll cfgUnit 
-> vdAll vdShow
-> cfgPhyList
-> cfgPhydevAll cfgPhy
-> hddDump
-> fcAll
-> fc 5
-> fcHosts 3
-> cfgShow
-> spmShow
-> unld "Debug"
-> moduleShow
// if there are Debug processes remaining, run the unld "Debug" command 
// for each remaining Debug process
-> logout


More information about the commands

shell commandDescription
networking
netCfgShowshow the network config
netCfgSetinteractive network setup
ping "53.79.14.48",1check for connectivity
system status
moduleListshow firmware code level
moduleShowsimilar to ps; make sure there aren't multiple Debug processes
memoryShowshow free and allocated memory
fcAlldisplay type of controller, which controller, and fiber channel loop status
arrayPrintSummarydisplay controller state, SCSI ID, and volume ownership
arrayPrintdisplay detailed controller state info
vxAbsTicks/60/60/60/24display the number of days since the last boot
getRecoveryFailureList_MTdisplay the Recovery Guru Info
showEnclosureslist info about enclosure devices on the system
hwLogShowhardware log
excLogShowexception log
rmvmShowAllMirrors -1show RVM status
fibre channel
fc 101display link speed(s)
hddDumpdisplay lots of info about drive side devices and issues
Mini hubs and SFPs
mhmPrintFredStatusdisplay minihub lights
mhmPrintPeanutStatusdisplay minihub and SFP status
drives and volumes
NOTE: cfgPhyList returns, among other things, the Devnum which is the Channel, then four zeros, then the ID. The devnum is used by multiple commands in various ways. Some use Channel,ID. Some use ID,Channel. Some use 0xC0000i, where C is the Channel, and i is the ID. It is important that the Devnum channel and ID not be confused with the tray and disk number scheme.
cfgPhyListdisplay the physical drives
cfgUnitListdisplay volumes;
Volume 128 has 0 pieces and is owned by the alt ctl; for inter-controller communication
vol 2048 (sometimes 1024 or 512) has 2 pieces, is owned by the alt, is for managing premium features
cfgUnitLabelsdisplay the volume names
vdAll cfgUnitdisplay volume and piece pointers
vdAll vdShowdisplay volume annd volume group info
cfgPhydevAll cfgPhydisplay drive info
cfgPhydevAll cfgPhdisplay timestamps on all drives
cfgShowshow volume info per drive
ghsListlist the global hot spares
avtHostShowshow the controlling device for failover for each host type
spmShowshow volume to LUN mapping
sataDumpDriveStateon 282x controllers to print the ownership of the internal SATA HDAs (WARNING starts with 0, not 1)
rebooting and other destructive commands
sysRebootfull controller reset
rebootfast reboot
Misc commands
tt "sodMain"determine if the controller is finished booting; look for Task not found
ld </Debugload the debugger into memory
unld "Debug"unload the debugger; this MUST be done to prevent memory problems
logoutlog out of the controller (both serial and rlogin)


Last Update: 2006-07-14; Jeff Nieusma