The openSUSE KIWI Image System provides a complete operating system image solution for Linux supported hardware platforms as well as for virtualization systems like Xen. KIWI is an ideal solution for creating and imaging thin client devices.

KIWI is a complete imaging solution and can be split up in to three distinct parts.

  1. Physical Extend:This stage “prepares” a directory containing the the contents of your new filesystem based on a software package source (SLED 10) and an image description file (config.xml). In this stage you determine what packages you want installed on your image and what configuration files should be included. As part of the process “smart package manager” will handle dependencies.
    • To “prepare” the physical extend enter: kiwi -p /path
    • /path is the path to the DIRECTORY containing your config.xml file
    • The output of this command is the directory /tmp/kiwi.<random> where random is a random string
  2. Logical Extend: This stage is based on the previous “physical extend” and “creates” an operating system image. You can utilize the configuration script while creating the logical extend to clean-up your image or to perform additional configuration. This script is called at the beginning of the image creation process.
    • To “create” the logical extend enter: kiwi -c /path1 -d /path2
    • /path1 is the path to your previously prepared kiwi.<random> directory
    • /path2 is the desired “destination” path of the output of the command
    • The output of this command is the image file and the associated MD5 checksum
  3. Deployment: There are several ways to deploy the new image.
  • Netboot: ATFTP is used to deploy the newly created image via PXE. You can utilize KIWI to create a special kernel and initrd for the purpose of deploying a KIWI based image. You have the choice of loading the image into volatile RAM or onto non-volatile, persistent storage like flash memory or a hard drive. KIWI will check whether a KIWI image is installed on the target system. If the version installed on the target system is older than the one being served the image will be updated.
  • Locally Accessible Hard Disk: The image can be installed by dumping (dd) the image file on a previously created partition on this disk. To activate the system a boot manager like grub or lilo can be used.
  • Paravirtualized: In case of a paravirtualized target system like Xen, the image can be be installed by copying the image file on the target system. To activate the virtual system a configuration must be provided which points to the image in some way. One possibility is to use a loop mounted location.
  • Fully Virtualized: In case of a full virtualized target system like VMware the
    image represents a virtual disk as a file which can be “played” by the virtualization

While the KIWI Image System is under very active development, customers are realizing the value of this very exciting technology and deploying TODAY!

For more information check out the following websites: