Chelsea King Missing…

March 1, 2010 in Uncategorized by admin

Chelsea King disappeared after going for a run near Lake Hodges, San Diego.  She should have taken her cell phone with her, loaded with Trackme Findme, and this would have never happened.  No matter what happened, she would have been found, at least.

Don’t let this happen to you.

Read more about the incident here.

Download the Trackme Findme iPhone App here.

Subscribe to the Trackme Findme Web Service here.

Related posts:

  1. Christie Wilson Missing Christie Wilson went missing at a Casino.  They later found...
  2. Reverse GPS TrackMe/FindMe is the worlds first reverse-GPS program. It allows you...
  3. Tiger Woods Scandal Could have been avoided if his family was using Trackme...

Related posts brought to you by Yet Another Related Posts Plugin.

Download SDKs

February 18, 2010 in citrix, virtualization, xen by admin

Page edited by Vishal Ganeriwala

Overview

XenServer includes a XML-RPC based API, providing programmatic access to the extensive set of XenServer management features and tools. The XenServer API can be called from a remote system as well as local to the XenServer host. Remote calls are generally made securely over HTTPS, using port 443.

There are five SDKs available, one for each of C, C#, Java, PowerShell, and Python. These are provided under an open-source license (LGPL or GPL with the common linking exception). This allows use (unmodified) in both closed-and open-source applications.

There are also several example code samples also provided for download. Some of the code samples demonstrate creating a VM, running VM power operations, and watching for events.

The XenServer 5.5 SDKs are suitable not just for 5.5, but for use with XenServer 4.0, 4.1 and 5.0 servers too, making it possible to address multiple XenServer versions with a single binary. There are, of course, features missing on the older versions, and client programs are expected to check host.software_version["product_version"] to gracefully fall back when appropriate.

XenServer 5.5


  XenServer.NET: The XenServer SDK for C#.NET
       Download XenServer.NET binaries
       Download XenServer.NET samples
       Download XenServer.NET source

  XenServerJava: The XenServer SDK for Java
       Download XenServerJava binaries
       Download XenServerJava samples
       Download XenServerJava source

  libxenserver: The XenServer SDK for C
       Download libxenserver binaries
       Download libxenserver samples and source

  XenServerPSSnapIn: The XenServer SDK for PowerShell
       Download XS-PS Windows installer
       Download XS-PS source

  XenAPI.py: The XenServer Python module
       Download XenAPI.py
       Browse XenServer API examples using Python

  API Reference
       PDF
       HTML
       Javadoc (zip)

  XenServerConsole: A Java client for XenServer consoles
       Download XenServerConsole source


XenServer SDK VM


We also publish an appliance-style virtual machine, ready to be imported into a XenServer host. This contains the SDKs above, plus a XenServer simulator, and a complete Linux-based development environment.

  Download SDK VM: Version 5.5.0. 328 MB.
  XenServer SDK Guide
       PDF
       HTML


Citrix StorageLink SDK


What is Citrix StorageLink?
Citrix StorageLink lets users automate the configuration and provisioning of the virtual machine storage, taking advantage of advanced features of the attached storage array. StorageLink enables the user to create virtual machines from logical vendor-specific storage repositories that support advanced capabilities such as snapshots, cloning, thin provisioning, and data deduplication. StorageLink also uses advanced storage capabilities to rapidly create virtual machines, increase storage utilization, and provide improved business continuity while lowering total cost of ownership.

Citrix StorageLink seamlessly integrates with storage arrays using either the standards-based SMI-S interface or via a custom vendor-specific StorageLink Storage Adapter.


Citrix StorageLink Gateway SDK (v2.0)

  • Documentation for Web Services/SOAP interface for Citrix StorageLink Gateway.


Citrix StorageLink Storage Adapter SDK (v2.0)

  • Citrix StorageLink SDK for storage partners.


Citrix StorageLink Gateway SDK (v2.1)

  • Documentation for Web Services/SOAP interface for Citrix StorageLink Gateway.


Citrix StorageLink Storage Adapter SDK (v2.1)

  • Citrix StorageLink SDK for storage partners.


Further Resources


XenServer Documentation Index

XenServer SDK Forum

Browse and Share Scripts and Samples on the CDN Script Exchange

xvp: An open-source web interface for XenServer, developed at Durham University



Older Releases


Note that the XenServer 5.5 SDKs are also suitable for use with XenServer 4.0, 4.1 and 5.0 servers. These older releases are here for historical purposes only.

XenServer SDK Archive





Changes between revision 51 and revision 52:

 *Overview*
  
 XenServer includes a XML-RPC based API, providing programmatic access to the extensive set of XenServer management features and tools. The XenServer API can be called from a remote system as well as local to the XenServer host. Remote calls are generally made securely over HTTPS, using port 443.
  
 There are five SDKs available, one for each of C, C#, Java, PowerShell, and Python. These are provided under an open-source license (LGPL or GPL with the common linking exception). This allows use (unmodified) in both closed-and open-source applications.
  
 There are also several example code samples also provided for download. Some of the code samples demonstrate creating a VM, running VM power operations, and watching for events.
  
 The XenServer 5.5 SDKs are suitable not just for 5.5, but for use with XenServer 4.0, 4.1 and 5.0 servers too, making it possible to address multiple XenServer versions with a single binary. There are, of course, features missing on the older versions, and client programs are expected to check host.software_version\["product_version"\] to gracefully fall back when appropriate.
  
 {div:style=padding:3px;background-color:#EEEEEE; layer-background-color:#EEEEEE}
 h3. XenServer 5.5
 {div}
 \\
  
 !btn_search.png!  *XenServer.NET*: The XenServer SDK for C#.NET
        [Download XenServer.NET binaries|^XenServer.NET-5.5.0-1.zip]
        [Download XenServer.NET samples|^XenServer.NET-5.5.0-1-samples.zip]
        [Download XenServer.NET source|^XenServer.NET-5.5.0-1-src.zip]
  
 !btn_search.png!  *XenServerJava*: The XenServer SDK for Java
        [Download XenServerJava binaries|^XenServerJava-5.5.0-1.zip]
        [Download XenServerJava samples|^XenServerJava-5.5.0-1-samples.zip]
        [Download XenServerJava source|^XenServerJava-5.5.0-1-src.zip]
  
 !btn_search.png!  *libxenserver*: The XenServer SDK for C
        [Download libxenserver binaries|^libxenserver-5.5.0-1.tar.bz2]
        [Download libxenserver samples and source|^libxenserver-5.5.0-1-src.tar.bz2]
  
 !btn_search.png!  *XenServerPSSnapIn*: The XenServer SDK for PowerShell
        [Download XS-PS Windows installer|^XenServerPSSnapIn-5.5.0-1.msi]
        [Download XS-PS source|^XenServerPSSnapIn-5.5.0-1-src.zip]
  
 !btn_search.png!  *XenAPI.py*: The XenServer Python module
        [Download XenAPI.py|XenServer Python API Samples^XenAPI.py]
        [Browse XenServer API examples using Python|XenServer Python API Samples]
  
 !btn_search.png!  *API Reference*
        [PDF|^xenenterpriseapi.pdf]
        [HTML|http://docs.vmd.citrix.com/XenServer/5.5.0/1.0/en_gb/api/docs/html/browser.html]
        [Javadoc (zip)|^XenServerJavadoc-5.5.0.zip]
  
 !btn_search.png!  *XenServerConsole*: A Java client for XenServer consoles
        [Download XenServerConsole source|^XenServerConsole-src.zip]
  
 \\
 {div:style=padding:3px;background-color:#EEEEEE; layer-background-color:#EEEEEE}
 h3. XenServer SDK VM
 {div}
 \\
  
 We also publish an appliance-style virtual machine, ready to be imported into a XenServer host. This contains the SDKs above, plus a XenServer simulator, and a complete Linux-based development environment.
  
 !btn_search.png!  [*Download SDK VM*|http://www.citrix.com/lang/English/lp/lp_1688621.asp]: Version 5.5.0. 328 MB.
 !btn_search.png!  *XenServer SDK Guide*
        [PDF|http://docs.vmd.citrix.com/XenServer/5.5.0/1.0/en_gb/sdk-1.0-5.5.0-en_gb.pdf]
        [HTML|http://docs.vmd.citrix.com/XenServer/5.5.0/1.0/en_gb/sdk.html]
  
 \\
 {div:style=padding:3px;background-color:#EEEEEE; layer-background-color:#EEEEEE}
 h3. Citrix StorageLink SDK
 {div}
 \\
  
 What is Citrix StorageLink?
 Citrix StorageLink lets users automate the configuration and provisioning of the virtual machine storage, taking advantage of advanced features of the attached storage array. StorageLink enables the user to create virtual machines from logical vendor-specific storage repositories that support advanced capabilities such as snapshots, cloning, thin provisioning, and data deduplication. StorageLink also uses advanced storage capabilities to rapidly create virtual machines, increase storage utilization, and provide improved business continuity while lowering total cost of ownership.
  
 Citrix StorageLink seamlessly integrates with storage arrays using either the standards-based SMI-S interface or via a custom vendor-specific StorageLink Storage Adapter.
  
 \\
 !btn_search.png! [*Citrix StorageLink Gateway SDK (v2.0)*|http://community.citrix.com/download/attachments/38633496/storagelink_gateway_sdk_v2.0.zip|]
 * Documentation for Web Services/SOAP interface for Citrix StorageLink Gateway.
  
 \\
 !btn_search.png! [*Citrix StorageLink Storage Adapter SDK (v2.0)*|http://community.citrix.com/download/attachments/38633496/storagelink_adapter_sdk_v2.0.zip|]
 * Citrix StorageLink SDK for storage partners.
  
 \\
  !btn_search.png! [*Citrix StorageLink Gateway SDK (v2.1)*|http://community.citrix.com/download/attachments/38633496/storagelink_gateway_sdk_v2.1.zip|]
 * Documentation for Web Services/SOAP interface for Citrix StorageLink Gateway.
  
 \\
 !btn_search.png! [*Citrix StorageLink Storage Adapter SDK (v2.1)*|http://community.citrix.com/download/attachments/38633496/storagelink_adapter_sdk_v2.1.zip|]
 * Citrix StorageLink SDK for storage partners.
  
  
 \\
 {div:style=padding:3px;background-color:#EEEEEE; layer-background-color:#EEEEEE}
 h3. Further Resources
 {div}
 \\
 !btn_search.png! [*XenServer Documentation Index*|http://docs.vmd.citrix.com/XenServer/5.5.0/]
  
 !btn_search.png! [*XenServer SDK Forum*|http://forums.citrix.com/forum.jspa?forumID=175&start=0]
  
 !btn_search.png! [*Browse and Share Scripts and Samples on the CDN Script Exchange*|http://community.citrix.com/cdn/script-exchange/]
  
 !btn_search.png! [*xvp*|xvp]: An open-source web interface for XenServer, developed at Durham University
  
 \\
 \\
 {div:style=padding:3px;background-color:#EEEEEE; layer-background-color:#EEEEEE}
 h3. Older Releases
 {div}
 \\
  
 Note that the XenServer 5.5 SDKs are also suitable for use with XenServer 4.0, 4.1 and 5.0 servers. These older releases are here for historical purposes only.
  
 [XenServer SDK Archive]
  
 \\
 \\
 \\
 \\

Debian Lenny

February 1, 2010 in citrix, virtualization, xen by admin

Page edited by ian campbell

Introduction

From version 5.5 onwards XenServer supports Debian GNU/Linux 5 AKA "Lenny" as a guest Virtual Machine. This includes installation of Lenny from a standard Debian network mirror as well as installation from CD/DVD image.

Note that XenServer 5.5 only supports 32 bit installations of Lenny.

Installation From DVD/CD

Unfortunately at the time of release the Official Debian installation CD and DVD ISO images did not contain a XenServer-compatible kernel and therefore cannot be used with XenServer. To remedy this Citrix has made available a custom built Unofficial DVD image containing a XenServer-compatible kernel.

Downloading A XenServer-compatible installation ISO

Citrix has made the DVD image available using the Jigdo(Jigsaw Download) utility. Jigdo allows ISO images to be downloaded quickly and efficiently by retrieving the majority of the data from a nearby mirror only obtaining a minimal template from the centralised download site.

If you have an existing Debian installation the obtaining jigdo is as simple as running

# aptitude install jigdo-file

If you do not have an existing Debian installation then jigdo can be download from its website. Jigdo is available for both Linux and Windows machines.

Once you have installed jigdo you should select a mirror from the Debian Mirror List. Choose a mirror which is geographically near to your location and which includes the i386 architecture. e.g ftp://ftp.XX.debian.org/debian/

After you have installed jigdo and selected a mirror you are ready to begin downloading the ISO from Citrix. Drop to a shell prompt or command line console. On Windows you will need to change to the directory where you unpacked jigdo.

Note: You must download the image from the URL given. The images available on Debian mirrors are not compatible with XenServer.

# jigdo-lite http://ca.downloads.xensource.com/debian/lenny/debian-504-i386-source-xen-DVD-1.jigdo

Jigdo will automatically download the template file (around 40M in size) and then will prompt you for a location to scan for existing packages. This can be useful if you have already downloaded Official Lenny images since you can reuse many of the packages on Official CDs. To do this simply mount or insert the Official CD/DVD and enter the path to it.
Next jigdo will prompt for a mirror to use, enter the mirror you selected above.

Jigdo will then begin downloading packages. If it complains about missing packages you should select another mirror and try again, this will not redownload any packages which were successfully retrieved.

When jigdo has completed it will leave debian-50-i386-source-xen-DVD-1.iso in the current directory.

Adding Additional CD/DVD Images

The custom XenServer-compatible DVD image contains a subset of the Debian software repository.

In order to access the remainder after installation you can either make use of a Debian network mirror in the normal way or you can add additional CD/DVD images using the Official images. To do this simply insert a CD/DVD into the virtual machine's CD drive and on the guest console run

# apt-cdrom add

Repeat this for as many CD/DVD images as you are interested in.

Support

If you have an issue specifically relating to the download of the custom ISO image then please comment below.

If you have any other issue relating to Debian Lenny please use the regular forums and other support channels which exist for this purpose.

Changes between revision 11 and revision 12:

 h1. Introduction
  
 From version 5.5 onwards XenServer supports [Debian GNU/Linux 5|http://www.debian.org/releases/lenny/] AKA "Lenny" as a guest Virtual Machine. This includes installation of Lenny from a standard Debian network mirror as well as installation from CD/DVD image.
  
 Note that XenServer 5.5 only supports 32 bit installations of Lenny.
  
 h1. Installation From DVD/CD
  
 Unfortunately at the time of release the Official Debian installation CD and DVD ISO images did not contain a XenServer-compatible kernel and therefore cannot be used with XenServer. To remedy this Citrix has made available a custom built Unofficial DVD image containing a XenServer-compatible kernel.
  
 h2.  Downloading A XenServer-compatible installation ISO
  h2. Downloading A XenServer-compatible installation ISO
  
 Citrix has made the DVD image available using the [Jigdo|http://atterer.net/jigdo/](Jigsaw Download) utility. Jigdo allows ISO images to be downloaded quickly and efficiently by retrieving the majority of the data from a nearby mirror only obtaining a minimal template from the centralised download site.
  
 If you have an existing Debian installation the obtaining jigdo is as simple as running
 {noformat}
 # aptitude install jigdo-file
 {noformat}
 If you do not have an existing Debian installation then jigdo can be download from its [website|http://atterer.net/jigdo/]. Jigdo is available for both Linux and Windows machines.
  
 Once you have installed jigdo you should select a mirror from the [Debian Mirror List|http://www.debian.org/mirror/list]. Choose a mirror which is geographically near to your location and which includes the i386 architecture. e.g {{[ftp://ftp.XX.debian.org/debian/]}}
  
 After you have installed jigdo and selected a mirror you are ready to begin downloading the ISO from Citrix. Drop to a shell prompt or command line console. On Windows you will need to change to the directory where you unpacked jigdo.
  
 (!) *Note*: You must download the image from the URL given. The images available on Debian mirrors are not compatible with XenServer. (!)
 {noformat}
 # jigdo-lite http://ca.downloads.xensource.com/debian/lenny/debian-504-i386-source-xen-DVD-1.jigdo
 {noformat}
 Jigdo will automatically download the template file (around 40M in size) and then will prompt you for a location to scan for existing packages. This can be useful if you have already downloaded Official Lenny images since you can reuse many of the packages on Official CDs. To do this simply mount or insert the Official CD/DVD and enter the path to it.
 Next jigdo will prompt for a mirror to use, enter the mirror you selected above.
  
 Jigdo will then begin downloading packages. If it complains about missing packages you should select another mirror and try again, this will not redownload any packages which were successfully retrieved.
  
 When jigdo has completed it will leave debian-50-i386-source-xen-DVD-1.iso in the current directory.
  
 h2. Adding Additional CD/DVD Images
  
 The custom XenServer-compatible DVD image contains a subset of the Debian software repository.
  
 In order to access the remainder after installation you can either make use of a Debian network mirror in the normal way or you can add additional CD/DVD images using the Official images. To do this simply insert a CD/DVD into the virtual machine's CD drive and on the guest console run
 {code}
 # apt-cdrom add
 {code}
 Repeat this for as many CD/DVD images as you are interested in.
 \\
 \\
  
 h1. Support
  
 If you have an issue specifically relating to the download of the custom ISO image then please comment below.
  
 If you have any other issue relating to Debian Lenny please use the regular forums and other support channels which exist for this purpose.

Citizens Against Homicide

January 2, 2010 in Uncategorized by admin

Citizens Against Homicide was founded by Jane Alexander. Jane fought tirelessly for murder victims and their families, and wrote endless letters to help keep convicted killers behind bars.  Jane drew her passion from her own fight to find the killer of her Aunt.  The killer was her ex-boyfriend.  Many families are struck with senseless killings and struggle with the legal system to get their cases solved.  A lot of time in solving murders, and preventing murders can be done if everyone would use  Trackme Findme, the worlds first reverse GPS system. 

Download the Trackme Findme iPhone App here.

Subscribe to the Trackme Findme Web Service here.

No related posts.

Related posts brought to you by Yet Another Related Posts Plugin.

Christie Wilson Missing

in Uncategorized by admin

Christie Wilson went missing at a Casino.  They later found the murderer guitly, however, they never found Christies body.  It would have helped to have her using Trackme Findme, the worlds first reverse GPS system.  If she was using Trackme Findme, it would have shorted the search, immensely

Download the Trackme Findme iPhone App here.

Subscribe to the Trackme Findme Web Service here.

Related posts:

  1. Chelsea King Missing… Chelsea King disappeared after going for a run near Lake...

Related posts brought to you by Yet Another Related Posts Plugin.

Augmented Reality

December 30, 2009 in Uncategorized by admin

Augmented Reality is a new technology that superimposes graphics, audio and other sensory inputs from from computer screens… including location data. Augmented Reality superimpose the real world and every movement of the user into computer data.  Location tracking with Augmented Reality is a new level of communication, only possible with Trackme Findme, the worlds first reverse GPS system.

Download the Trackme Findme iPhone App here.

Subscribe to the Trackme Findme Web Service here.

Related posts:

  1. Human Network Imagine a world where you are in constant touch, continually,...
  2. How it works The application runs on a device which uses it’s location...
  3. Tiger Woods Scandal Could have been avoided if his family was using Trackme...

Related posts brought to you by Yet Another Related Posts Plugin.

Human Network

December 28, 2009 in Uncategorized by admin

Imagine a world where you are in constant touch, continually, in real-time.  Your body temp, your heart rate, your … geo location, are continually communicated, to your authorized group of family and friends.  The Real Human Network.

Only possible with Trackme Findme, the worlds first reverse GPS system.

Download the Trackme Findme iPhone App here.

Subscribe to the Trackme Findme Web Service here.

Related posts:

  1. Human lojack How many times I have people say to me, “I...
  2. Smarter Planet Imagine a world where you are in constant touch, continually,...
  3. Augmented Reality Augmented Reality is a new technology that superimposes graphics, audio...

Related posts brought to you by Yet Another Related Posts Plugin.

Smarter Planet

in Uncategorized by admin

Imagine a world where you are in constant touch, continually, in real-time.  Your body temp, your heart rate, your … geo location, are continually communicated, to your authorized group of family and friends.

It is possible with Trackme Findme, the worlds first reverse GPS system.

Download the Trackme Findme iPhone App here.

Subscribe to the Trackme Findme Web Service here.

Related posts:

  1. Human Network Imagine a world where you are in constant touch, continually,...
  2. Tiger Woods Scandal Could have been avoided if his family was using Trackme...
  3. Track Santa Want to know where Santa Claus is?  Only Mrs. Claus...

Related posts brought to you by Yet Another Related Posts Plugin.

Track Santa

December 22, 2009 in Uncategorized by admin

Want to know where Santa Claus is?  Only Mrs. Claus knows, because he is carrying Trackme Findme with him.  Trackme Findme works all over the world, so you know where your loved ones are 24/7.

Download the Trackme Findme iPhone App here.

Subscribe to the Trackme Findme Web Service here.

Related posts:

  1. Tiger Woods Scandal Could have been avoided if his family was using Trackme...
  2. Human Network Imagine a world where you are in constant touch, continually,...
  3. Trackme in the City I was walking around the city with my wife, before...

Related posts brought to you by Yet Another Related Posts Plugin.

VM backup script for offline backups on XenServer 5.0

December 18, 2009 in citrix, virtualization, xen by admin

Page edited by Peter Barganski

Description

These scripts allow you to take automated offline backups of your XenServer 5.0 Virtual Machines, shutting them down and restarting them after backup.

Script Name                                    Usage
vmbackup-single-guest.pl                 Single VM backup specified by command line argument
vmbackup-from-vm-guest-list.pl        Selective VM backup from a list
vmbackup-all-guests.pl                     Complete VM backup within resource pool

Use these scripts if you can't perform snapshot based backups and need to shutdown your VM's to perfom a 'VM Export' based backup. This is the only type of full VM back available if you are using XenServer 5.0.

I wrote/modified these scripts so that we could backup our VM's before upgrading to XenServer 5.5.

This script is based on jeremy tirrell's "0 downtime snapshot based XENServer 5.5 backup script"

Download

Download All

http://community.citrix.com/download/attachments/102236496/vmbackup-single-guest.pl
http://community.citrix.com/download/attachments/102236496/vmbackup-from-vm-guest-list.pl
http://community.citrix.com/download/attachments/102236496/vmbackup-all-guests.pl

Change Log/Enhancements

* Replaced snapshot creation with vm-shutdown and vm-export for offline backups
* Added power-state checks
* Added automatic vm restart upon backup completion
* Added Status Bar Progress using CPAN Smart::Comments and some debug information
* Added POD documentation

Code Snippet

print("Shuting down: ".$VMName ."\n");					#Shuting down the VM
  $vm_shutdown_cmd = "xe vm-shutdown power-state=running uuid=$guest"; ### [<now>] Shutting down running VM...
  $status = `$vm_shutdown_cmd`;

	if ($?) {													#checking if shutdown was successfull
		print("Error shuting down " .$VMName." using command [$cmd]\n");
	} else {

		print($VMName.": was shutdown\n");
		$Message .= $VMName." was shutdown\n";
	}

  $fdate = `date +%d%m%y`;									#get the current date in a format we can write
  print("Exporting: ".$VMName."\n");						#export the VM
  $Message .= "Exporting: ".$VMName."\n";
  $exportstring = $backupdir.$VMName.".xva-".$fdate;
  $status= `xe vm-export vm=$guest filename=$exportstring`; ### [<now>] Performing VM export...
  print($status."\n");
  $Message .= $status."\n";

  $restartStatus= `xe vm-start power-state=halted vm=$guest`; ### [<now>] Restarting VM...
  print($restartStatus."\n");
  $restartMessage .= $restartStatus."\n";

POD Documentation (run perldoc vmbackup.pl)

__END__
# Perldoc documentation
=pod
=head1 NAME
Xen Virtual Machine Backup Script

=head1 SYNOPSIS

At the DOM0 console type I<perl -w backup-offline.pl>.

=head1 DESCRIPTION

This script will create a list of all available virtual machines running on the XenHost it is run except DOM0. It will then attempt to firstly, shutdown each vm in turn, export the vm to a .xva disk file.

After attempting the export the script will restart each vm it had previously shutdown.

Disclaimer

These software applications are provided to you as is with no representations, warranties or conditions of any kind. You may use and distribute it at your own risk. CITRIX DISCLAIMS ALL WARRANTIES WHATSOEVER, EXPRESS, IMPLIED, WRITTEN, ORAL OR STATUTORY, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NONINFRINGEMENT. Without limiting the generality of the foregoing, you acknowledge and agree that (a) the software application may exhibit errors, design flaws or other problems, possibly resulting in loss of data or damage to property; (b) it may not be possible to make the software application fully functional; and (c) Citrix may, without notice or liability to you, cease to make available the current version and/or any future versions of the software application. In no event should the code be used to support of ultra-hazardous activities, including but not limited to life support or blasting activities. NEITHER CITRIX NOR ITS AFFILIATES OR AGENTS WILL BE LIABLE, UNDER BREACH OF CONTRACT OR ANY OTHER THEORY OF LIABILITY, FOR ANY DAMAGES WHATSOEVER ARISING FROM USE OF THE SOFTWARE APPLICATION, INCLUDING WITHOUT LIMITATION DIRECT, SPECIAL, INCIDENTAL, PUNITIVE, CONSEQUENTIAL OR OTHER DAMAGES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. You agree to indemnify and defend Citrix against any and all claims arising from your use, modification or distribution of the code.

Changes between revision 15 and revision 16:

 h2. Description
  
 These scripts allow you to take automated offline backups of your XenServer 5.0 Virtual Machines, shutting them down and restarting them after backup.
  
 *Script Name* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *Usage*
 vmbackup-single-guest.pl&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Single VM backup specified by command line argument
 vmbackup-from-vm-guest-list.pl&nbsp; &nbsp; &nbsp;&nbsp;&nbsp; Selective VM backup from a list
 vmbackup-all-guests.pl&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; Complete VM backup within resource pool
  
 Use these scripts if you can't perform snapshot based backups and need to shutdown your VM's to perfom a 'VM Export' based backup. This is the only type of full VM back available if you are using XenServer 5.0.
  
 I wrote/modified these scripts so that we could backup our VM's *{+}before{+}* upgrading to XenServer 5.5.
  
 This script is based on [jeremy tirrell's|http://community.citrix.com/display/~jtirrell] "[0 downtime snapshot based XENServer 5.5 backup script|http://community.citrix.com/display/xs/0+downtime+snapshot+based+XENServer+5.5+backup+script.?showComments=true&showCommentArea=true#addcomment]"
 \\
  
 h2. Download
  
  [Download All|http://community.citrix.com/pages/downloadallattachments.action?pageId=102236496]
  
  
 [http://community.citrix.com/download/attachments/102236496/vmbackup-single-guest.pl]
 [http://community.citrix.com/download/attachments/102236496/vmbackup-from-vm-guest-list.pl]
 [http://community.citrix.com/download/attachments/102236496/vmbackup-all-guests.pl]
  
 h2. Change Log/Enhancements
  
 \* Replaced snapshot creation with vm-shutdown and vm-export for offline backups
 \* Added power-state checks
 \* Added automatic vm restart upon backup completion
 \* Added Status Bar Progress using CPAN Smart::Comments and some debug information
 \* Added POD documentation
  
 h2. Code Snippet
  
 {code}
 print("Shuting down: ".$VMName ."\n"); #Shuting down the VM
  $vm_shutdown_cmd = "xe vm-shutdown power-state=running uuid=$guest"; ### [<now>] Shutting down running VM...
  $status = `$vm_shutdown_cmd`;
  
  if ($?) { #checking if shutdown was successfull
  print("Error shuting down " .$VMName." using command [$cmd]\n");
  } else {
  
  print($VMName.": was shutdown\n");
  $Message .= $VMName." was shutdown\n";
  }
  
  $fdate = `date +%d%m%y`; #get the current date in a format we can write
  print("Exporting: ".$VMName."\n"); #export the VM
  $Message .= "Exporting: ".$VMName."\n";
  $exportstring = $backupdir.$VMName.".xva-".$fdate;
  $status= `xe vm-export vm=$guest filename=$exportstring`; ### [<now>] Performing VM export...
  print($status."\n");
  $Message .= $status."\n";
  
  $restartStatus= `xe vm-start power-state=halted vm=$guest`; ### [<now>] Restarting VM...
  print($restartStatus."\n");
  $restartMessage .= $restartStatus."\n";
 {code}
 POD Documentation (run perldoc vmbackup.pl)
 {code}
 __END__
 # Perldoc documentation
 =pod
 =head1 NAME
 Xen Virtual Machine Backup Script
  
 =head1 SYNOPSIS
  
 At the DOM0 console type I<perl -w backup-offline.pl>.
  
 =head1 DESCRIPTION
  
 This script will create a list of all available virtual machines running on the XenHost it is run except DOM0. It will then attempt to firstly, shutdown each vm in turn, export the vm to a .xva disk file.
  
 After attempting the export the script will restart each vm it had previously shutdown.
 {code}
  
 h2. Disclaimer
  
 These software applications are provided to you as is with no representations, warranties or conditions of any kind. You may use and distribute it at your own risk. CITRIX DISCLAIMS ALL WARRANTIES WHATSOEVER, EXPRESS, IMPLIED, WRITTEN, ORAL OR STATUTORY, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NONINFRINGEMENT. Without limiting the generality of the foregoing, you acknowledge and agree that (a) the software application may exhibit errors, design flaws or other problems, possibly resulting in loss of data or damage to property; (b) it may not be possible to make the software application fully functional; and (c) Citrix may, without notice or liability to you, cease to make available the current version and/or any future versions of the software application. In no event should the code be used to support of ultra-hazardous activities, including but not limited to life support or blasting activities. NEITHER CITRIX NOR ITS AFFILIATES OR AGENTS WILL BE LIABLE, UNDER BREACH OF CONTRACT OR ANY OTHER THEORY OF LIABILITY, FOR ANY DAMAGES WHATSOEVER ARISING FROM USE OF THE SOFTWARE APPLICATION, INCLUDING WITHOUT LIMITATION DIRECT, SPECIAL, INCIDENTAL, PUNITIVE, CONSEQUENTIAL OR OTHER DAMAGES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. You agree to indemnify and defend Citrix against any and all claims arising from your use, modification or distribution of the code.