libguestfs-make-fixed-appliance(1) Virtualization Support libguestfs-make-fixed-appliance(1)
libguestfs-make-fixed-appliance - Make a "fixed appliance" for libguestfs
libguestfs-make-fixed-appliance [--options] OUTPUTDIR
libguestfs-make-fixed-appliance [--options] --xz
libguestfs-make-fixed-appliance lets you make a pre-built binary appliance for libguestfs.
Note that ordinary users should not need to run this tool.
Some reasons why you might want to use this include:
o You want to make a self-contained libguestfs appliance that can be copied to another
machine or platform that doesn't support supermin(8).
o You have multiple users on the same machine and want to avoid the storage duplication
and start-up overhead of having multiple cached copies of the appliance.
o You want to have very predictable performance from libguestfs (see
For deeper understanding of why you might need this tool, read the section "FIXED
Instead of running this tool, you can download fixed appliances from
http://libguestfs.org/download/binaries/appliance/. These appliances were made using this
There are two ways to use this tool.
o Specify an output directory, for example:
The output directory is created if it does not exist. Four files are created in this
Note that "OUTPUTDIR/root" is a sparse file, so take care when copying it.
You can then run libguestfs (possibly after copying this directory to another machine)
by setting the environment variable LIBGUESTFS_PATH to "OUTPUTDIR".
o The alternative method is to use the --xz option to create a compressed tarball:
This creates a tarball in the current directory called:
(where "VERSION" is the version of libguestfs). The tarball contains the four files:
Note that "appliance/root" is a sparse file, so take care when copying it.
Display short usage information and exit.
Display the version number and exit.
Instead of creating the appliance in an output directory, create a compressed tarball
of the appliance in the current directory called "appliance-VERSION.tar.xz" where
"VERSION" is the version of libguestfs.
Using --xz can take some time. If working normally, the tool is completely silent
when it is running.
When libguestfs (or libguestfs tools) are run, they search a path looking for an
appliance. The path is built into libguestfs, or can be set using the "LIBGUESTFS_PATH"
Normally a supermin appliance is located on this path (see "SUPERMIN APPLIANCE" in
supermin(8)). libguestfs reconstructs this into a full appliance by running
However, a simpler "fixed appliance" can also be used. libguestfs detects this by looking
for a directory on the path containing four files called "kernel", "initrd", "root" and
"README.fixed" (note the "README.fixed" file must be present as well).
If the fixed appliance is found, libguestfs skips supermin entirely and just runs qemu
with the kernel, initrd and root disk from the fixed appliance.
Thus the fixed appliance can be used when a platform or Linux distro does not support
supermin. You build the fixed appliance on a platform that does support supermin, and
copy it over, and use that to run libguestfs.
The fixed appliance is a complete Linux binary distro. If you distribute it, you may need
to distribute corresponding source files to remain in legal compliance with the licenses
of the software in the appliance (such as the GNU General Public License).
libguestfs-make-fixed-appliance returns 0 if the appliance was built without errors.
For the full list of environment variables which may affect libguestfs, please see the
guestfs(3) manual page.
guestfs(3), supermin(8), supermin-helper(8), xz(1), http://libguestfs.org/,
Richard W.M. Jones ("rjones at redhat dot com")
Copyright (C) 2009-2013 Red Hat Inc.
This program is free software; you can redistribute it and/or modify it under the terms of
the GNU General Public License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program;
if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301 USA.
To get a list of bugs against libguestfs, use this link:
To report a new bug against libguestfs, use this link:
When reporting a bug, please supply:
o The version of libguestfs.
o Where you got libguestfs (eg. which Linux distro, compiled from source, etc)
o Describe the bug accurately and give a way to reproduce it.
o Run libguestfs-test-tool(1) and paste the complete, unedited output into the bug
libguestfs-1.22.6 2013-08-24 libguestfs-make-fixed-appliance(1)