Skip to content

Instantly share code, notes, and snippets.

@frederickding
Last active May 21, 2018 09:11
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save frederickding/5588333 to your computer and use it in GitHub Desktop.
Save frederickding/5588333 to your computer and use it in GitHub Desktop.
Set a domU's hostname based on its Xen Cloud Platform or XenServer VM name
#!/bin/bash
# Based on https://github.com/krobertson/xenserver-automater/blob/master/usr/sbin/xe-set-hostname
# Adapted by Frederick Ding
# Detect if xenstore-read is available
XENSTOREREAD=`which xenstore-read`
if [ -e $XENSTOREREAD ]; then
# Filter the domU's name to a lowercase alphanumeric hyphenated hostname
NAME=`xenstore-read name | sed -e 's/[^[:alnum:]|-]/-/g' | tr '[:upper:]' '[:lower:]'`
# Don't do anything if this name is blank
[ "$NAME" = "" ] && exit 0
# Set the hostname
echo "$NAME" > /etc/hostname
/bin/hostname -F /etc/hostname
fi
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment