Skip to main content
SANtricity commands

Downloadable SMcli command line parameters

Contributors netapp-driley

The SANtricity OS 11.60 and newer releases include the ability to download and install the http-based version of CLI (also referred to as "Secure CLI" or SMcli) directly through the SANtricity System Manager.

11.60 and newer downloadable SMcli command line parameters

The downloadable version of the SMcli is available on E4000, EF600, EF300, E5700, EF570, E2800, and EF280 controllers. To download the SMcli within the SANtricity System Manager, select Settings > System and Add-ons > Command Line Interface .

Note A Java Runtime Environment (JRE), version 8 and above, must be available on the management system where you plan to run the CLI commands.

As with previous versions of the SMcli, the SMcli downloadable through the SANtricity System Manager has a unique set of parameters. For information on using command line parameters for SANtricity OS 11.53 and older releases, see Legacy command line parameters.

Multifactor authentication

If SAML (Security Assertion Markup Language) is enabled, only access tokens can be used with the CLI. If SAML is not enabled, the username/password or access tokens can be used. Access tokens can be generated through the SANtricity System Manager.

Table 1. Access token, username, and password parameters
Parameter Definition

-t

Defines the access token to be used for authentication with a storage array. An access token is a replacement for supplying the username and password.

-T (uppercase)

This argument requires one of two arguments:

  • access_token-file - Contains the access token to use for authentication

  • -(dash) - Read the access token from stdin

-u

Follow this parameter with the username variable. This parameter is required whenever an access token is not used.

-p

Defines the password for the storage array on which you want to run commands. A password is not necessary under these conditions:

  • A password has not been set on the storage array.

  • The password is specified in a script file that you are running.

-P (uppercase)

This argument requires one of two arguments:

  • password_file - Contains the password to use for authentication.

  • - (one dash) - Read the password from stdin.

General https mode command line parameters

The downloadable SMcli only supports https mode. The following are commonly used command line parameters for https mode.

Table 2. https command line parameters
Parameter Definition

host-name-or-IP-address

Specifies either the host name or the Internet Protocol (IP) address (xxx.xxx.xxx.xxx) of an out-of-band managed storage array.

When managing out-of-band storage management through the Ethernet connection on each controller, you must specify the host-name-or-IP-address of the controllers.

-k

This optional argument allows an https client to operate in insecure mode. This means that the storage array's certificate will not be validated. By default, if omitted, the proper validation will be performed.

Note For additional information on managing storage array certificates, see Managing stored certificates command line parameters.

-e

Runs the commands without performing a syntax check first.

-L (uppercase)

Displays the legal notices for Downloadable SMcli.

-n

Specifies the locally stored label on which you want to run the script commands. This is optional when you use host-name-or-IP-address. The locally stored label is required when the host-name-or-IP-address is not used.

Note For additional information on using locally stored labels to manage storage arrays, see Managing stored arrays command line parameters.

-o

Specifies a file name for all output text that is a result of running the script commands. Use the -o parameter with these parameters:

  • -c

  • -f

If you do not specify an output file, the output text goes to standard output (stdout). All output from commands that are not script commands is sent to stdout, regardless of whether this parameter is set.

-S (uppercase)

Suppresses informational messages describing the command progress that appear when you run script commands. (Suppressing informational messages is also called silent mode.) This parameter suppresses these messages:

  • Performing syntax check

  • Syntax check complete

  • Executing script

  • Script execution complete

  • SMcli completed successfully

-version

Displays the downloadable SMcli version

-?

Shows usage information about the CLI commands.

Managing stored arrays

The following command line parameters allow you to manage stored arrays through your locally stored label.

Note The locally stored label may not match the actual storage array name displayed under the SANtricity System Manager.
Table 3. Managing stored arrays command line parameters
Parameter Definition

SMcli storageArrayLabel show all

Displays all locally stored labels and their associated addresses

SMcli storageArrayLabel show label <LABEL>

Displays the addresses associated with the locally stored label named <LABEL>

SMcli storageArrayLabel delete all

Deletes all locally stored labels

SMcli storageArrayLabel delete label <LABEL>

Deletes the locally stored label named <LABEL>

SMcli <host-name-or-IP-address> [host-name-or-IP-address] storageArrayLabel add label <LABEL>

  • Adds a locally stored label with name <LABEL> containing the addresses provided

  • Updates are not directly supported. To update, delete label and then re-add.

Note The SMcli does not contact the storage array when adding a locally stored label.
Table 4. Managing stored certificates command line parameters
Parameter Definition

SMcli localCertificate show all

Displays all trusted certificates stored locally

SMcli localCertificate show alias <ALIAS>

Displays a locally stored trusted certificate with the alias <ALIAS>

SMcli localCertificate delete all

Deletes all trusted certificates stored locally

SMcli localCertificate delete alias <ALIAS>

Deletes a locally stored trusted certificate with the alias <ALIAS>

SMcli localCertificate trust file <CERT_FILE> alias <ALIAS>

  • Saves a certificate to be trusted with the alias <ALIAS>

  • The certificate to be trusted is downloaded from the controller in a separate operation, such as using a web browser

SMcli <host-name-or-IP-address> [host-name-or-IP-address] localCertificate trust

  • Connects to each address and saves the certificate returned into the trusted certificate store

  • The hostname or IP address specified is used as the alias for each certificate saved this way

  • User should verify the certificate on the controller(s) is to be trusted before running this command

  • For highest security, the trust command that takes a file should be used to ensure the certificate did not change between user validation and running of this command

Identify devices

The following command line parameter allow you to display information for all applicable devices visible to the host.

Note Starting with the SANtricity 11.81 release, the SMcli identifyDevices parameter replaces functionality previously available through the SMdevices tool.
Table 5. Identify Devices command line parameters
Parameter Definition

identifyDevices

Looks for all SCSI native block devices that are associated with our Storage Arrays. For each found device, reports various information such as native OS specific device name, associated storage array, volume name, LUN info, etc.

Examples

Refer to the following for examples of the -identifyDevices parameter within the Linux and Windows operating systems.

Linux
ICTAE11S05H01:~/osean/SMcli-01.81.00.10004/bin # ./SMcli -identifyDevices
  <n/a> (/dev/sg2) [Storage Array ictae11s05a01, Volume 1, LUN 0, Volume ID <600a098000bbd04f00001c7365426b58>, Alternate Path (Controller-A): Non owning controller - Active/Non-optimized, Preferred Path Auto Changeable: Yes, Implicit Failback: Yes]
  /dev/sdb (/dev/sg3) [Storage Array ictae11s05a01, Volume Access, LUN 7, Volume ID <600a098000bbcdd3000002005a731d29>]
  <n/a> (/dev/sg4) [Storage Array ictae11s05a01, Volume 1, LUN 0, Volume ID <600a098000bbd04f00001c7365426b58>, Preferred Path (Controller-B): Owning controller - Active/Optimized, Preferred Path Auto Changeable: Yes, Implicit Failback: Yes]
  /dev/sdc (/dev/sg5) [Storage Array ictae11s05a01, Volume Access, LUN 7, Volume ID <600a098000bbcdd3000002005a731d29>]
SMcli completed successfully.
Windows
PS C:\Users\Administrator\Downloads\SMcli-01.81.00.0017\bin> .\SMcli -identifyDevices
  \\.\PHYSICALDRIVE1 [Storage Array ICTAG22S08A01, Volume Vol1, LUN 1, Volume ID <600a0980006cee060000592e6564fa6a>, Preferred Path (Controller-B): Owning controller - Active/Optimized, Preferred Path Auto Changeable: Yes, Implicit Failback: Yes]
  \\.\PHYSICALDRIVE2 [Storage Array ICTAG22S08A01, Volume Vol2, LUN 2, Volume ID <600a0980006ce727000001096564f9f5>, Preferred Path (Controller-A): Owning controller - Active/Optimized, Preferred Path Auto Changeable: Yes, Implicit Failback: Yes]
  \\.\PHYSICALDRIVE3 [Storage Array ICTAG22S08A01, Volume Vol3, LUN 3, Volume ID <600a0980006cee06000059326564fa76>, Preferred Path (Controller-B): Owning controller - Active/Optimized, Preferred Path Auto Changeable: Yes, Implicit Failback: Yes]
  \\.\PHYSICALDRIVE4 [Storage Array ICTAG22S08A01, Volume Vol4, LUN 4, Volume ID <600a0980006ce7270000010a6564fa01>, Preferred Path (Controller-A): Owning controller - Active/Optimized, Preferred Path Auto Changeable: Yes, Implicit Failback: Yes]
SMcli completed successfully.

Additional Notes

  • Compatible on Linux and Windows operating systems running x86-64 platforms with SCSI-based host interfaces only.

    • NVMe-based host interfaces are not supported.

  • The identifyDevices parameter does not cause a re-scan at the OS level. It iterates over the existing devices seen by the OS.

  • You must have sufficient user permissions to run the identifyDevices command.

    • This includes the ability to read from OS native block devices and perform SCSI Inquiry commands.