Operation and Maintenance
Linux Operation and Maintenance
How to back up a running virtual machine in XenServer
How to back up a running virtual machine in XenServer
This article introduces how to back up running virtual machines in XenServer, and can run the VM backup process step by step. In addition, there is a shell script that can back up all VMs or specified VMs. We It can also be scheduled through crontab.

Method 1: Manually Back Up a Running Virtual Machine
The following steps can also be performed through XenCenter, but Linux users prefer to use Command Line.
1. Find VMS UUID
Use the following command to get the UUID list of all vms and other details. This UUID will be used in the next step
# xe vm-list is-control-domain=false is-a-snapshot=false
Output
uuid ( RO) : 8ac95696-94f3-83c1-bc89-8bb2603f832b
name-label ( RW): test-vm
power-state ( RO): runningAccording to the above output test, the vm uuid is "8ac95696-94f3-83c1-bc89-8bb2603f832b". You may be otherwise.
2. Create VMS snapshot
Now use the following command to create a VM snapshot using the UUID found in the above step. Make sure to use the correct UUID.
# xe vm-snapshot uuid=8ac95696-94f3-83c1-bc89-8bb2603f832b new-name-label=testvmsnapshot
The above command will retrieve the uuid of the snapshot, use that uuid to convert the snapshot to a vm, so we can export it to a file using the command below.
# xe template-param-set is-a-template=false ha-always-run=false uuid=b15c0531-88a5-98a4-e484-01bc89131561
3. Export the snapshot to a file
Now we can export the created snapshot to a .xva file, which can be easily restored from the command line or Xencenter.
# xe vm-export vm=b15c0531-88a5-98a4-e484-01bc89131561 filename=vm-backup.xva
4. Destroy the snapshot
Finally, because we have backed up to an XVA file, we can destroy the created snapshot from XenServer.
# xe vm-uninstall uuid=b15c0531-88a5-98a4-e484-01bc89131561 force=true
Method 2: Use script backup to run vms
In order to backup all virtual machines running on XenServer, we can also use the following shell script. This script mounts a remote file system exported via NFS. This script works great for this example, but may not work for you. So using this script does not guarantee your viability.
#!/bin/bash
#
# Written By: Mr Rahul Kumar
# Created date: Jun 14, 2014
# Last Updated: Mar 08, 2017
# Version: 1.2.1
# Visit: https://tecadmin.net/backup-running-virtual-machine-in-xenserver/
#
DATE=`date +%d%b%Y`
XSNAME=`echo $HOSTNAME`
UUIDFILE=/tmp/xen-uuids.txt
NFS_SERVER_IP="192.168.10.100"
MOUNTPOINT=/xenmnt
FILE_LOCATION_ON_NFS="/backup/citrix/vms"
### Create mount point
mkdir -p ${MOUNTPOINT}
### Mounting remote nfs share backup drive
[ ! -d ${MOUNTPOINT} ] && echo "No mount point found, kindly check"; exit 0
mount -F nfs ${NFS_SERVER_IP}:${FILE_LOCATION_ON_NFS} ${MOUNTPOINT}
BACKUPPATH=${MOUNTPOINT}/${XSNAME}/${DATE}
mkdir -p ${BACKUPPATH}
[ ! -d ${BACKUPPATH} ] && echo "No backup directory found"; exit 0
# Fetching list UUIDs of all VMs running on XenServer
xe vm-list is-control-domain=false is-a-snapshot=false | grep uuid | cut -d":" -f2 > ${UUIDFILE}
[ ! -f ${UUIDFILE} ] && echo "No UUID list file found"; exit 0
while read VMUUID
do
VMNAME=`xe vm-list uuid=$VMUUID | grep name-label | cut -d":" -f2 | sed 's/^ *//g'`
SNAPUUID=`xe vm-snapshot uuid=$VMUUID new-name-label="SNAPSHOT-$VMUUID-$DATE"`
xe template-param-set is-a-template=false ha-always-run=false uuid=${SNAPUUID}
xe vm-export vm=${SNAPUUID} filename="$BACKUPPATH/$VMNAME-$DATE.xva"
xe vm-uninstall uuid=${SNAPUUID} force=true
done < ${UUIDFILE}
umount ${MOUNTPOINT}This article has ended here. For more other exciting content, you can pay attention to the Linux Video Tutorial column on the PHP Chinese website!
The above is the detailed content of How to back up a running virtual machine in XenServer. For more information, please follow other related articles on the PHP Chinese website!
Hot AI Tools
Undresser.AI Undress
AI-powered app for creating realistic nude photos
AI Clothes Remover
Online AI tool for removing clothes from photos.
Undress AI Tool
Undress images for free
Clothoff.io
AI clothes remover
AI Hentai Generator
Generate AI Hentai for free.
Hot Article
Hot Tools
Notepad++7.3.1
Easy-to-use and free code editor
SublimeText3 Chinese version
Chinese version, very easy to use
Zend Studio 13.0.1
Powerful PHP integrated development environment
Dreamweaver CS6
Visual web development tools
SublimeText3 Mac version
God-level code editing software (SublimeText3)
Hot Topics
1378
52
How do I use regular expressions (regex) in Linux for pattern matching?
Mar 17, 2025 pm 05:25 PM
The article explains how to use regular expressions (regex) in Linux for pattern matching, file searching, and text manipulation, detailing syntax, commands, and tools like grep, sed, and awk.
How do I implement two-factor authentication (2FA) for SSH in Linux?
Mar 17, 2025 pm 05:31 PM
The article provides a guide on setting up two-factor authentication (2FA) for SSH on Linux using Google Authenticator, detailing installation, configuration, and troubleshooting steps. It highlights the security benefits of 2FA, such as enhanced sec
How do I monitor system performance in Linux using tools like top, htop, and vmstat?
Mar 17, 2025 pm 05:28 PM
The article discusses using top, htop, and vmstat for monitoring Linux system performance, detailing their unique features and customization options for effective system management.
How do I manage software packages in Linux using package managers (apt, yum, dnf)?
Mar 17, 2025 pm 05:26 PM
Article discusses managing software packages in Linux using apt, yum, and dnf, covering installation, updates, and removals. It compares their functionalities and suitability for different distributions.
How do I use sudo to grant elevated privileges to users in Linux?
Mar 17, 2025 pm 05:32 PM
The article explains how to manage sudo privileges in Linux, including granting, revoking, and best practices for security. Key focus is on editing /etc/sudoers safely and limiting access.Character count: 159
Key Linux Operations: A Beginner's Guide
Apr 09, 2025 pm 04:09 PM
Linux beginners should master basic operations such as file management, user management and network configuration. 1) File management: Use mkdir, touch, ls, rm, mv, and CP commands. 2) User management: Use useradd, passwd, userdel, and usermod commands. 3) Network configuration: Use ifconfig, echo, and ufw commands. These operations are the basis of Linux system management, and mastering them can effectively manage the system.
How to interpret the output results of Debian Sniffer
Apr 12, 2025 pm 11:00 PM
DebianSniffer is a network sniffer tool used to capture and analyze network packet timestamps: displays the time for packet capture, usually in seconds. Source IP address (SourceIP): The network address of the device that sent the packet. Destination IP address (DestinationIP): The network address of the device receiving the data packet. SourcePort: The port number used by the device sending the packet. Destinatio
How to check Debian OpenSSL configuration
Apr 12, 2025 pm 11:57 PM
This article introduces several methods to check the OpenSSL configuration of the Debian system to help you quickly grasp the security status of the system. 1. Confirm the OpenSSL version First, verify whether OpenSSL has been installed and version information. Enter the following command in the terminal: If opensslversion is not installed, the system will prompt an error. 2. View the configuration file. The main configuration file of OpenSSL is usually located in /etc/ssl/openssl.cnf. You can use a text editor (such as nano) to view: sudonano/etc/ssl/openssl.cnf This file contains important configuration information such as key, certificate path, and encryption algorithm. 3. Utilize OPE


