Here you are a XenServer Commands Cheat Sheet!
- Configure SR-IOV
- /opt/xensource/libexec/xen-cmdline –set-xen iommu=1
  - lspci
 - xe vm-param-set other-config:pci=0/0000:07:10.0 uuid=uuid_of_the_VM
 
 - Enable and Disable Open VSwitch
- xe-switch-network-backend bridge
 - xe-switch-network-backend openvswitch
 
 - Setup Diagnostic Website
- cd /opt/xensource/www
 - ln –s /opt/xensource/debug/www debug
 - http://masterserverip/debug/index.html
 
 
- Configure Auto Start VMs
- Pool Config : xe pool-param-set uuid=… other-config:auto_poweron=true
 - VM Config: xe vm-param-set uuid=… other-config:auto_poweron=true
 
 - iSCSI Commands
- discover: iscsiadm –mode discovery –type sendtargets –portal <IP-Address of the iSCSI target>
 - login: iscsiadm –mode node –targetname <target IQN you have discovered before> –portal <IP-Address of your Target>:3260 –login
 - logout: iscsiadm –mode node –targetname <target IQN you have discovered before> –portal <IP-Address of your Target>:3260 –logout
 
 - View TapDisks
- tap-ctl list
 - ls -l /var/run/sr-mount/…..
 
 - Compare Template Differences
- xe template-list name-label=Citrix\ XenApp\ on\ Windows\ Server\ 2003\ \(32-bit)\) params=all >> /root/2k3-32
 - xe template-list name-label=Citrix\ XenApp\ on\ Windows\ Server\ 2008\ \(32-bit)\) params=all >> /root/2k8-32
 - diff –side-by-side –suppress-common-lines /root/2k3-32 /root/2k8-32 (to see which parameters differ)
 - or
 - diff –suppress-common-lines /root/2k3-32 /root/2k8-32 (to see the full difference)
 
 - Reclaim Disk Space from Deleted XenServer Snapshots (http://support.citrix.com/article/CTX123400)
- xe host-call-plugin host-uuid=<host-UUID> plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=<VM-UUID>
 
 - Emergency Master Server Failure Recovery
- xe host-emergency-ha-disable force=true
 - xe pool-emergency-transition-to-master
 - pool-designate-new-master host-uuid=<UUID of member XenServer host to become new master>
 - cat /etc/xensource/pool.conf to reflect to the new master.
 - Restarted XAPI service and it back to the pool.
 
 - Remove a Lost server from a Resource Pool
 
xe host-list
 xe -s [ip address] -u root -pw PASSWORD pool-sync-database
 xe -s [ip address] -u root -pw PASSWORD host-forget uuid=[the above command will provide the UUID]
 xe pool-eject host-uuid
- Copy a VM to another XenServer
 
xe vm-list (note the name of the VM you wish to copy)
 xe sr-list (note the name of the storage you will to copy the VM to)
 xe vm-copy (needs the following parameters to complete)
 xe vm-copy vm=<name of VM to copy> sr-uuid=<UUID of SR to copy VM to> new-name-label=<NewNameofVM> new-name-description=”Description of VM”
 
- Force Pool master Selection
 
xe pool-emergency-transition-to-master
 xe pool-recover-slaves
 xe host-list
 xe pool-sync-database
 xe host-forget
- Check if XenServer is a Pool Master
 
cat /etc/xensource/pool.conf
 Output says “master” , slaves output “slave:<master host IP>”
xe-switch-network-backend openvswitch
 xe host-list params=software-version
- Enter XenServer Config Menu via SSH
 
xsconsole
- xe pool-ha-enable heartbeat-sr-uuids=021e7e21-1e64-a0b3-2e22-5bbfcfe559e9 ha-config:timeout=10
 - Minimum timeout is 10 seconds
 - Default is 30 Seconds
 - xe pool-ha-compute-max-host-failures-to-tolerate
 
- Destroying or forgetting a SR (Storage Repository)
 
 xe -s [host ip] -u root -pw [password] sr-list
 xe -s [host ip] -u root -pw [password] pbd-list sr-uuid=
 xe -s [host ip] -u root -pw [password] pbd-unplug uuid=
 xe -s [host ip] -u root -pw [password] pbd-destroy uuid=
 xe -s [host ip] -u root -pw [password] sr-forget uuid=
displays real-time information about Xen system.
- xen-bugtool –yestoall
 - Set HA Timeouot
 
xe pool-ha-enable heartbeat-sr-uuids=##### ha-config:timeout=however many seconds you want.
xe task-list
 xe task-cancle uuid=xe
 vm-shutdown –force vm=
- Overload CPU for testing Workload Balancing
 
while true ; do true ; donewhile true ; do true ; done &while true ; do `ls –lR /` ; done
- How to Create a Local Storage Repository (CTX121313)
 
# cat /proc/partitions
 # ll /dev/disk/by-id
 Find the disk ID of the “sdb” or “cciss/c0d1”disk. The “scsi-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx” or “cciss-xxxxxxxxxxxxxxxxxxxxxxxxxx”format is what you need.
 Create a Storage Repository (SR):
 # xe sr-create content-type=user device-config:device=/dev/disk/by-id/<scsi-xxxxxxxxxxxxxxxxxxxxxxxxx> host-uuid=<host-uuid> name-label=”Local Storage 2” shared=false type=lvm-
 Or –
 # xe sr-create content-type=user device-config:device=/dev/disk/by-id/<cciss-xxxxxxxxxxxxxxxxxxxxxxxxx> host-uuid=<host-uuid> name-label=”Local Storage 2” shared=false type=lvm
xe task-list
 xe task-cancel uuid=<task uuid>
- Install XenTools on Linux
 
mount /dev/xvdd /mnt
 cd /mnt/Linux
 ./install.sh
QLogic, run scli
 Emulex, run hbanywhere
 Emulex: /bin/sbin/ocmanager
 QLogic FC: /opt/QLogic_Corporation/SANsurferCLI
 QLogic iSCSI: /opt/QLogic_Corporation/SANsurferiCLI
 Enable HA
- xe vm-param-set uuid=<vm_uuid> ha-restart-priority=<1> ha-always-run=true
 - xe pool-ha-enable heartbeat-sr-uuids=<sr_uuid>
 
Reboot Host in HA
- host-disable host=<hostname>
 - host-evacuate uuid=<host uuid>
 - host-shutdown host=<hostname>
 
Designate new master
- Xe pool-designate-new-master host-uuid=<UUID of member XenServer host to become new master>
 
Pool Emergency Actions
- host-emergency-ha-disable –force
 - pool-recovery-slaves
 - pool-eject host-uuid=<host UUID>
 - pool-emergency-reset-master master-address=<ip address of pool master>
 - pool-emergency-transition-to-master uuid=<host uuid>
 - xe pool-join master-address=<host1> master-username=<administrators_username> master-password=<password>
 
Snapshot Copy (Fast Clone)
- xe snapshot-list snapshot-of=<vm uuid>
 - xe snapshot-copy new-name-label=<vm-template-name> snapshot-uuid=<uuid of the snapshot>
 - xe template-list
 - xe snapshot-export-to-template snapshot-uuid=<uuid of snapshot> filename=<template filename> (.XVA)
 - other-config snapmanager=true
 - xe vm-snapshot-with-quiesce vm=<vm uuid> ne-name-lablel=<name of new vm> (install-XenProvider.cmd)
 
Memory Consistent Snapshots
- xe vm-checkpoint vm=<vm uuid> new-name-lable=<name of the snapshot>
 
Role Based Administration
- xe subject-add subject-name=[active directory account name]
 - xe subject-role-add uuid=<subject uuid> role-name=<role_name>
 
Configure Management Interface
- xe pif-scan, xe pif-list, xe pif-reconfigure-ip, xe host-management-reconfigure
 
Create NFS ISO Repository
- xe sr-create host-uuid=<mast uuid> content-type=iso name-lable=<”name”> location=\\10.1.1.1:cds
 
Create a shared NFS SR on 192.168.1.10:/export1 
- xe sr-create host-uuid=<host_uuid> content-type=user name-label=<”Example shared NFS SR”> shared=true device-config:server=<192.168.1.10> device-config:serverpath=</export1> type=nfs
 
Physic NIC configuration
- xe pif-scan
 - xe pif-plug
 - xe pif-introduce
 
VM in libo
- xe vm-list
 - xe vm-reset-powerstate uuid=<uuid of VM> force=true
 
XAPI stack
- service xapi status
 - service xapi restart
 - xe-toolstack-restart
 
XenServer Log Files
- /var/log – XenServer Log Files
 - /etc/logrotate.conf – XenServer Log Rotation Configuration File
 
Search SR to locate metadata
- xe sr-probe type=lvmoiscsi device-config:target=IP device-config:targetIQN=IQN device-config:SCSIid=SCSIID sm-config:metadata=true 
 
Check VDI database
- xe vm-list database:vdi-uuid=$my_vdi
 
Check inventory
- . /etc/xensource-inventory
 - xe host-list uuid=$INSTALLATION_UUID
 
Exporting and Importing VMs via API – http://docs.vmd.citrix.com/XenServer/5.6.0fp1/1.0/en_gb/sdk.html#vm_import_and_export
- curl http://root:foo@myxenserver1/export?uuid=<vm_uuid> -o <exportfile>
 - curl -T <exportfile> http://root:foo@myxenserver2/import?sr_uuid=<uuid_of_sr>
 - curl -T <exportfile> http://root:foo@myxenserver2/import
 - http://server/import_metadata
 - http://server/export_metadata.