XenSource
Skip navigation links
Overview Expand Overview
Products Expand Products
Solutions Expand Solutions
Support Services Expand Support Services
Partners Expand Partners
About Us Expand About Us
How to Buy

Chapter 5. Command line interface

This chapter describes the XenServer command line interface (CLI). The xe CLI enables the writing of scripts for automating system administration tasks and allows integration of XenServer into an existing IT infrastructure.

The xe command line interface is installed by default on XenServer Hosts. A stand-alone remote CLI is also available for Linux and Windows.

  • On Windows, the xe.exe CLI executable is installed along with XenCenter. If you want to use it on a Windows computer that does not have XenCenter, you can simply copy the file \client_install\xe.exe from the Base Pack CD-ROM to a location on the local drive. You will need the Windows .NET 2.0 libraries installed.

    To use it, open a Windows Command Prompt and change directories to the directory where the file resides, or add its installation location to your system path.

  • On Linux, you can install the xe CLI executable from the RPM named xe-cli-4.0.1-4442x.i386.rpm on the Linux Pack CD, as follows:

    rpm -ivh xe-cli-4.0.1-4442x.i386.rpm

Basic help is available for CLI commands on-host by typing:

xe help command

A list of the most commonly-used xe commands is displayed if you type:

xe help

or a list of all xe commands is displayed if you type:

xe help --all

5.1. Basic xe syntax

The basic syntax of all XenServer xe CLI commands is:

xe command-name argument=value argument=value ...

Each specific command contains its own set of arguments that are of the form argument=value. Some commands have required arguments, and most have some set of optional arguments. Typically a command will assume default values for some of the optional arguments when invoked without them.

If the xe command is executed remotely, additional connection and authentication arguments are used. These arguments also take the form argument=argument_value.

The server argument is used to specify the hostname or IP address. The username and password arguments are used to specify credentials. A password-file argument can be specified instead of the password directly. In this case an attempt is made to read the password from the specified file (stripping CRs and LFs off the end of the file if necessary), and use that to connect. This is more secure than specifying the password directly at the command line.

The optional port argument can be used to specify the agent port on the remote XenServer Host (defaults to 443).

Example: On the local XenServer Host:

xe vm-list

Shorthand syntax is also available for remote connection arguments:

-uusername
-pwpassword
-pwfpassword file
-pport
-sserver

Example: On a remote XenServer Host:

xe vm-list -u myuser -pw mypassword -s hostname

Arguments are also taken from the environment variable XE_EXTRA_ARGS, in the form of comma-separated key/value pairs. For example, in order to run commands on another XenServer Host, you could do the following:

export XE_EXTRA_ARGS="server=jeffbeck,port=443,username=root,password=pass"

and thereafter you would not need to specify the remote XenServer Host parameters in each xe command you execute.