Home

install-xe-guest-utilities for Gentoo

This is a single-file script that automates the process of installing Citrix XenServer's xe-guest-utilities and xe-guest-utilities-xenstore (collectively known as Citrix XS-tools)

Background

I use Citrix XenServer extensively in my company for virtualization. And as I progressively move the company servers from Windows to Gentoo Linux, I found out that Citrix does not support installation of XS-tools on Gentoo. (I can't blame Citrix; Gentoo installations wildly vary from one instance to another, thanks to Gentoo's extreme customizability).

Christopher Wojno indeed has provided a method for installing Citrix XS-tools on Gentoo. However, the method in the link provided must be performed manually, and thus fraught with errors/mistakes (user errors/mistakes, that is).

Because I plan on deploying even more Gentoo VMs on top of XenServer, I need an automated method to deploy Citrix XS-tools on my Gentoo VMs.

Hence, this script.

Differences with Wojno's method

  1. Does not install the RHEL/CentOS initscript, but installs my own OpenRC-compatible initscript
  2. Does not need the xenstore source files
  3. Properly makes symlinks in /usr/bin to xenstore, instead of making individual files

Requirements

  • Up-to-date Gentoo portage tree (use emerge --sync)
  • app-arch/rpm2targz
  • The latest xs-tools.iso or the suitable pair of .rpm files

(No need to memorize the above; the script will perform a requirement check)

How to use

  1. Download the source using the get source >> link and extract the content in a directory (*any* directory, as long as executables are allowed in it).
  2. Do chmod +x install-xe-guest-utilities.sh
  3. Do ./install-xe-guest-utilities.sh --help to read the syntax
  4. Mount xs-tools.iso into the DVD drive of the VM using XenCenter
  5. Run the script
  6. Enjoy :)

Updated

Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.