7.1 Start and Use XSH

This topic describes how to start and use the Exascale shell command line interface (XSH).

XSH is a command-line tool that is located on Exadata compute nodes and storage servers. You can use XSH to perform Linux-like commands on Exascale files and storage.

To use XSH you must have access to an Exascale user account and the digital key store (wallet) for the Exascale user account.

If you do not specify a wallet in the XSH command, XSH uses the first Exascale user wallet available in the following search path:

  1. $ORACLE_BASE/admin/dbname/eswallet

    In this case, dbname represents the name of a specific database.

  2. $ORACLE_BASE/admin/eswallet
  3. $OSSCONF/eswallet
  4. /opt/oracle/cell/network-config/eswallet

To run an XSH command, use the following command line syntax:

$ xsh [ XSH-command ]

In the command line, XSH-command specifies an XSH command to run. For example:

$ xsh ls @MYDATA
@MYDATA/x  @MYDATA/y  @MYDATA/z1  @MYDATA/z2  @MYDATA/z3
$

If no command is specified, XSH displays a command list and basic help information. For example:

$ xsh
cat
clone
cp
dd
ls
man
od
rm
scrub
snap
strings
template
touch
trace
wallet
xattr
version
chacl
mv

Enter 'xsh man <command>' or 'xsh man -e <command>' for details
E.g., Enter 'xsh man dd' or 'xsh man -e dd'
Enter 'xsh man man' to see other options accepted by 'xsh man'

To facilitate troubleshooting, you can enable tracing by setting the $XSH_TRACE_LEVEL environment variable before running the XSH command. You can set the trace level to 1 (minimum tracing), 2 (medium tracing), or 3 (maximum tracing). For example:

# csh
$ setenv XSH_TRACE_LEVEL 2
# sh/bash/ksh
$ export $XSH_TRACE_LEVEL=3

If the $ADR_BASE environment variable is set, the trace file is written to:

$ADR_BASE/diag/EXC/xsh_<username>/<hostname>/trace/xsh_<pid>_main.trc

Otherwise, the trace file is written to:

/tmp/diag/EXC/xsh_<username>/<hostname>/trace/xsh_<pid>_main.trc