NetApp – Clustered DATA ONTAP – Shells & Directories – Part 8

The one of the most famous proverb about the Unix systems is – “Where there is a shell there’s a way” .  If you want to directly interact with system kernel, you need a shell. NetApp Clustered Data ONTAP uses the Free BSD operating system on the controllers. You can manage the resources from cluster shell (CLI) or OnCommand GUI . The CLI and the GUI provide access to the same information, and you can use both to manage the same resources within a cluster. Command line is always remains powerful than GUI.

 The hierarchical command structure consists of command directories and commands. A command directory might contain commands, more command directories, or both. In this way, command directories resemble file system directories and file structures. Command directories provide groupings of similar commands. For example, all commands for storage-related actions fall somewhere within the storage command directory. Within that directory are directories for disk commands and aggregate commands.



  • Cluster Shell – ng shell which is used to manage the entire cluster.
  • Node shell – A subset of the Data  ONTAP 7G and Data ONTAP 7-Mode commands. Using node shell, you can manage a single node.
  • System Shell –  You have option to access the BSD shell of the controller.


Cluster Shell:

  • The cluster shell is accessible from a cluster management logical interface (LIF).
  • root user is not permitted .
  • The admin user is predefined  with a password that is chosen during the cluster setup
  • ssh is the default method for non-console logins.


Let’s access the cluster shell using the cluster management LIF.  (ssh to the cluster IP)

1.Use the cluster management LIF to login to the cluster shell.

login as: admin
Using keyboard-interactive authentication.


2. Just enter the “?” to know the available commands.

NetUA::> ?
  up                          Go up one directory
  cluster>                    Manage clusters
  dashboard>                  Display dashboards
  event>                      Manage system events
  exit                        Quit the CLI session
  history                     Show the history of commands for this CLI session
  job>                        Manage jobs and job schedules
  lun>                        Manage LUNs
  man                         Display the on-line manual pages
  network>                    Manage physical and virtual network connections
  qos>                        QoS settings
  redo                        Execute a previous command
  rows                        Show/Set the rows for this CLI session
  run                         Run interactive or non-interactive commands in the node shell
  security>                   The security directory
  set                         Display/Set CLI session settings
  sis                         Manage volume efficiency
  snapmirror>                 Manage SnapMirror
  statistics>                 Display operational statistics
  storage>                    Manage physical storage, including disks, aggregates, and failover
  system>                     The system directory
  top                         Go to the top-level directory
  volume>                     Manage virtual storage, including volumes, snapshots, and mirrors
  vserver>                    Manage Vservers



3.Just navigate to the cluster directory and see the available options.

NetUA::cluster> ?
  contact-info>               Manage contact information for the cluster.
  create                      Create a cluster
  date>                       Manage cluster's date and time setting
  ha>                         Manage high-availability configuration
  identity>                   Manage the cluster's attributes, including name and serial number
  join                        Join an existing cluster using the specified member's IP address
  modify                      Modify cluster node membership attributes
  peer>                       Manage cluster peer relationships
  setup                       Setup wizard
  show                        Display cluster node members
  statistics>                 Display cluster statistics



4. Cluster shell has three privilege levels.
* admin
* advanced
* diag

To change the privilege level from “admin” to “advanced” , use the following command.

NetUA::cluster> set -privilege advanced

Warning: These advanced commands are potentially dangerous; use them only when directed to do so by NetApp personnel.
Do you want to continue? {y|n}: y


To change the current mode to “diag”, use the following command.

NetUA::cluster*> set -privilege diag

Warning: These diagnostic commands are for use by NetApp personnel only.
Do you want to continue? {y|n}: y


* – Indicates that shell is in advanced mode or diag mode.


To change shell mode to “admin” , use the following command.

NetUA::cluster*> set -privilege admin



Node Shell:

  • The node shell can be accessed within the cluster.
  • You can access the node shell in interactive mode or directly execute the commands from the cluster shell.
  • This is similar to 7-Mode CLI
  • Scope is limited to one node at a time.
  • Useful to get he data about the node.
  • visibility to only those objects that are attached to the given controller. (disks , aggregates , volumes)


1. To access the Node shell in interactive mode, use the following command. You can back to cluster shell any time by pressing control+D .

NetUA::> system node run -node NetUA-01
Type 'exit' or 'Ctrl-D' to return to the CLI
NetUA-01> hostname


2. To access the Node shell within the cluster shell ,

NetUA::> system node run -node NetUA-01 hostname


3.Node shell is very useful to see the node related configuration.

NetUA-01> sysconfig
        NetApp Release 8.2 Cluster-Mode: Tue May 21 05:58:22 PDT 2013
        System ID: 4079432749 (NetUA-01)
        System Serial Number: 4079432-74-9 (NetUA-01)
        System Storage Configuration: Multi-Path
        System ACP Connectivity: NA
        slot 0: System Board
                Processors:         2
                Memory Size:        1599 MB
                Memory Attributes:  None
        slot 0: 10/100/1000 Ethernet Controller V
                e0a MAC Address:    00:0c:29:e5:c3:ce (auto-1000t-fd-up)
                e0b MAC Address:    00:0c:29:e5:c3:d8 (auto-1000t-fd-up)
                e0c MAC Address:    00:0c:29:e5:c3:e2 (auto-1000t-fd-up)
                e0d MAC Address:    00:0c:29:e5:c3:ec (auto-1000t-fd-up)
                e0e MAC Address:    00:0c:29:e5:c3:f6 (auto-1000t-fd-up)
                e0f MAC Address:    00:0c:29:e5:c3:00 (auto-1000t-fd-up)


System Shell:

  • The system shell is accessed from the  cluster shell or the from the node using “diag” user.
  • User “diag” must be unlocked to access the system shell.
  • You will get the BSD Unix prompt once you have logged in as diag.


You can use the system shell to access the BSD environment that the Data ONTAP operating system runs in. You should access the system shell only under the supervision of NetApp technical support. You can access the system shell only as the “diag” user and only from within the cluster shell. Root access to the system shell is not available from Data ONTAP clusters.


Let’s see how to access the system shell.

1.Login to the cluster LIF using admin user.

2.Unlock the diag user.

NetUA::> security login unlock -username diag



3.Set the password for diag user.

NetUA::> security login password -username diag

Enter a new password:
Enter it again:



4. Try to access the system shell of node1.

NetUA::> system node systemshell -node NetUA-01

Error: "systemshell" is not a recognized command


System couldn’t find the systemshell command. To access the systemshell , you must be in the advanced shell.


5.Set the privileged level to advanced.

NetUA::> set advanced

Warning: These advanced commands are potentially dangerous; use them only when directed to do so by NetApp personnel.
Do you want to continue? {y|n}: y



6. Try to access the system shell of node1 using diag user.

NetUA::*> system node systemshell -node NetUA-01

Data ONTAP/amd64 (NetUA-01) (pts/3)

login: diag
Last login: Thu Sep 26 10:17:55 from localhost

Warning:  The system shell provides access to low-level
diagnostic tools that can cause irreparable damage to
the system if not used properly.  Use this environment
only when directed to do so by support personnel.



7. Let’s execute some Unix commands.

NetUA-01% df -h
Filesystem                           Size    Used   Avail Capacity  Mounted on
/dev/md0                             3.3M    3.3M     55K    98%    /
devfs                                1.0K    1.0K      0B   100%    /dev
/dev/ad0s2                           1.0G    366M    658M    36%    /cfcard
/dev/md1.uzip                        611M    420M    191M    69%    /
/dev/md2.uzip                         89M     70M     19M    79%    /platform
/dev/ad3                             242G    3.1G    220G     1%    /sim
/dev/ad1s1                           5.0M    1.3M    3.3M    29%    /var
procfs                               4.0K    4.0K      0B   100%    /proc
/dev/md3                              31M    202K     31M     1%    /tmp
localhost:0x80000000,0xac3e9b52      851M    407M    444M    48%    /mroot
clusfs                               488M    488M      0B   100%    /clus
/mroot/etc/cluster_config/vserver    851M    407M    444M    48%    /mroot/vserver_fs
NetUA-01% ifconfig -a
lo0: flags=80c9<UP,LOOPBACK,RUNNING,NOARP,MULTICAST> metric 0 mtu 8232
        inet netmask 0xff000000  LOOPBACKLIF Vserver ID: 0
        inet6 ::1 prefixlen 128  LOOPBACKLIF Vserver ID: 0
        nd6 options=3<PERFORMNUD,ACCEPT_RTADV>
        ether 12:34:78:56:34:12
        inet netmask 0xfffff000 broadcast LOOPBACKLIF Vserver ID: 0
        media: Ethernet PSEUDO Device ()
default-ipspace: flags=60088aa<BROADCAST,LOOPBACK,SMART,NOARP,SIMPLEX,MULTICAST> metric 1 mtu 1500
        ether 12:34:00:00:00:00
        media: Ethernet PSEUDO Device ()
default-ipspace_partner: flags=60088aa<BROADCAST,LOOPBACK,SMART,NOARP,SIMPLEX,MULTICAST> metric 1 mtu 1500
        ether 12:34:75:00:00:00
        media: Ethernet PSEUDO Device ()
localhost_c169.254.0.0/16: flags=60088eb<UP,BROADCAST,LOOPBACK,SMART,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 30 mtu 9000
        ether 12:34:01:00:00:00
        inet netmask 0xffff0000 broadcast CLUSTERLIF Vserver ID: 0
        inet netmask 0xffff0000 broadcast CLUSTERLIF Vserver ID: 0
        media: Ethernet PSEUDO Device ()
NetUA-01_n192.168.0.0/24: flags=60088eb<UP,BROADCAST,LOOPBACK,SMART,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 10 mtu 9000
        ether 12:34:03:00:00:00
        inet netmask 0xffffff00 broadcast NODEMGMTLIF Vserver ID: 0
        media: Ethernet PSEUDO Device ()
NetUA_c192.168.0.0/24: flags=60088eb<UP,BROADCAST,LOOPBACK,SMART,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 20 mtu 9000
        ether 12:34:02:00:00:00
        inet netmask 0xffffff00 broadcast CSERVERMGMTLIF Vserver ID: -1
        media: Ethernet PSEUDO Device ()


Hope this article is informative to you. Share it ! Comment !! Be Sociable !!!