---
name: "fai-diskimage"
section: "8"
platform: "linux"
package: "fai-server"
version: "6.4.3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/fai-diskimage"
---

# fai-diskimage(8)

create a disk image for booting a VM

## NAME

fai-diskimage - create a disk image for booting a VM

## SYNOPSIS

**fai-diskimage *imagename***

## DESCRIPTION

**fai-diskimage** creates a disk image that can be used with Qemu/KVM, VirtualBox, VMware, Xen, Android device or by your cloud infrastructure. It runs the Fully Automatic Installation using a list of FAI classes. In the end you have a bootable disk image. Following formats are supported: .raw, .raw.xz, .raw.zst, .qcow2, .qcow2.zst, .vdi, .vhdx, .vmdk, .simg.

## OPTIONS

- **-c, --class *CLASS*\[,*CLASS*\]**

  Define list of FAI classes

- **-C CFDIR**

  Use CFDIR as the configuration directory. Default is /etc/fai.

- **-h, --help**

  Print help

- **-N, --new**

  This option will be passed to the fai call. It then executes the scripts in class/\[0-9\]\* for defining classes.

- **-S, --size *SIZE***

  Set size of raw image (suffixes k M G T are supported)

- **-s, --cspace *URI***

  Location of the config space. If location starts with /, the prefix file:// will be added. See [fai.conf(5)](/fai.conf/5.md) for all supported protocols. Default is /srv/fai/config.

- **-u, --hostname *name***

  Set hostname to name

- **-v, --verbose**

  Be verbose

## EXAMPLES

First, setup the configuration space. You will get an initial configuration including several examples.

 \# fai-mk-configspace

You can now build your fist disk image.

 \# export FAI\_BASEFILEURL=https://fai-project.org/download/basefiles/\
  \# cl="DEBIAN,BOOKWORM64,AMD64,FAIBASE,GRUB\_PC,DHCPC,DEMO,CLOUD,LAST"\
  \# fai-diskimage -vu cloud3 -S2G -c$cl cloud.raw

Creates a Debian system with a small set of software packages without a graphical desktop. The disk image cloud.raw will be of size 2 GB and the host is called cloud3.

 \# export FAI\_BASEFILEURL=https://fai-project.org/download/basefiles/\
  \# export NIC1=ens3\
  \# cl=DEBIAN,FAIBASE,UBUNTU,JAMMY64,AMD64,GRUB\_PC,DHCPC,XORG,DEMO,LAST\
  \# fai-diskimage -vNu ubuntu -S15G -c$cl ubuntu.qcow2

Creates a disk image of size 15GB called ubuntu.qcow2 for a Ubuntu 22.04 desktop. You have to set the variable NIC1 to the name of the network interface inside the environment you will run this disk image. Here, ens3 is the network name inside a KVM/QEMU virtual machine.

## NOTES

fai-diskimage will use zerofree if it's available on the host for getting better compression of the raw images.

fai-diskimage is not limited to creating images for virtual machines. The raw images can also be copied (via dd) onto a real disk for booting bare metal hosts.

You can start fai-diskimage in a clean shell environment by calling:

 \# env -i /usr/sbin/fai-diskimage -vNu cloudhost -S5G -cBOOKWORM64,CLOUD disk.raw

You can also build cross-architecture disk images using fai-disimage. See the chapter "Building cross-architecture disk images" in the FAI guide for details.

## SEE ALSO

This program is part of FAI (Fully Automatic Installation).  See the FAI manual for more information on how to use fai-monitor.  The FAI homepage is https://fai-project.org.

## AUTHOR

Thomas Lange \<lange@cs.uni-koeln.de\>
