Commit a5838daf authored by Nikos Skalkotos's avatar Nikos Skalkotos

Merge branch 'master' into debian-precise

parents 039481a8 71842ea0
2014-04-11, v0.14
* Add support for extending NetBSD partitions
* Change the default Virtual RAM size of the helper VM to 512M
* Do various improvements in the documentation
* Optimize image copying by using fullbock iflag in dd
* Fix a kpartx race condition when deploying {ext,ntfs}dump images
2014-02-06, v0.13
* Add support for extending OpenBSD partitions
* Add a new HELPER_MEMORY option in /etc/default/snf-image. This can be
......@@ -18,10 +25,10 @@
2013-10-18, v0.11
* Update the documentation
* Change local-backend identifier from file:// to local//
* Change local backend identifier from file:// to local//
* Make sure the user does not specify local images outside IMAGE_DIR by
using .. in the IMG_ID parameter
* HELPER: Fix a bug triggered when the image is corructed
* HELPER: Fix a bug triggered when the image is corrupted
2013-09-23, v0.10.1
* Merge the ChangeLog files of snf-image and snf-image-helper
......@@ -31,11 +38,11 @@
2013-09-19, v0.10
* Move the snf-image-helper image from squeeze to wheezy
* Add documentations under /docs
* Fix a bug in the network back-end
* Fix a bug in the network backend
2013-09-02, v0.9.3
* Add code to download and install a fixed snf-image-helper image. This is
the default behaviour for snf-image-update-helper.
* Add code to download and install a fixed snf-image-helper image. This
is the default behavior for snf-image-update-helper.
2013-08-27, v0.9.2
* Use devflow building system
......@@ -52,22 +59,22 @@
2013-03-12, v0.8.1
* Fix a bug in helper-monitor.py
* Make snf-image-update-helper install a patched version of ntfs-3g.
The debian squeeze version does not recognize the "--no-mtab" option
The Debian Squeeze version does not recognize the "--no-mtab" option
* Update contact email address
2013-03-09, v0.8
* Add support for xen
* Add support for Xen
* Increase the default HELPER_SIZE and TIMEOUT values
* Cleanup the code and remove settings no longer used
* Rename snf-image-host to snf-image
* HELPER: Add support for xen
* HELPER: Add support for Xen
* HELPER: Cleanup the helper code
2013-01-21, v0.7.6
* Make the size of the helper VM image configurable
* HELPER: Mount /proc and /dev before chrooting
* HELPER: Fix a bug in DeleteSSHKeys task where the code for checking for
non-default keys was never called.
* HELPER: Fix a bug in DeleteSSHKeys task where the code for checking
for non-default keys was never called.
2013-01-17, v0.7.5
* Cleanup defaults file and remove redundant variables
......@@ -75,27 +82,28 @@
passed with ./configure
2013-01-08, v0.7.4
* HELPER: Fix a bug in the code that determines which partition to resize
* HELPER: On linux images, mount all local partition during deployment. Not
just /.
* HELPER: Fix a bug in the code that determines which partition to
resize
* HELPER: On Linux images, mount all local partitions during the
deployment, not just /.
2013-01-04, v0.7.3
* Fix multistrap.conf to work with apt2.dev.grnet.gr
2013-01-04, v0.7.2
* Change snf-image-helper repository to apt2.dev.grnet.gr
* HELPER: In windows images make sure the file C:\Window\panther\Unattend.xml
gets removed after sysprep runs
* HELPER: In Windows images make sure the file:
`C:\Windows\panther\Unattend.xml' gets removed after sysprep runs
* HELPER: Support extended partitions with id 0x0f
* HELPER: Fix a bug in the error monitoring system
* HELPER: Fix a bug in AssignHostname for archlinux images
* HELPER: In AssignHostname check for the presence of /etc/hostname before
trying to determine the disto of a Linux image.
* HELPER: Fix a bug in AssignHostname for Arch Linux images
* HELPER: In AssignHostname check for the presence of /etc/hostname
before trying to determine the disto of a Linux image.
2012-12-07, v0.7.1
* Make pithcat work with pithosmap URLs
* HELPER: Fix a race condition where in some cases could lead to a kernel
panic for the helper VM.
* HELPER: Fix a race condition where in some cases could lead to a
kernel panic for the helper VM.
2012-12-03, v0.7
* Abandon debootstrap in favor of multistrap. This way we can define
......@@ -110,50 +118,49 @@
* Specify snf-image-helper as the init process when running the helper
VM
* HELPER: Make snf-image-helper the init process of the system
* HELPER: Shutdown the helper image fast using the apropriate SysRq key
* HELPER: Use eatmydata to omit the syncs performed by resize2fs when
resizing a file system. You can supress this behaviour by defining
* HELPER: Shutdown the helper VM fast using the appropriate SysRq key
* HELPER: Use `eatmydata' to omit the syncs performed by resize2fs when
resizing a file system. You can suppress this behavior by defining
the DO_SYNC image property.
2012-11-20, v0.6.5
* HELPER: Fix a bug in AssignHostname configuration task where the script did
not search for the presence of the Unattend.xml file in the VM, in
a case-insensitive way
* HELPER: Fix a bug in AssignHostname configuration task where the
script did not search for the presence of the Unattend.xml file in
the VM, in a case-insensitive way.
2012-11-15, v0.6.4
* Fix a bug in snf-image-update-helper introduced in v0.6.3
2012-11-13, v0.6.3
* Fix a bug in snf-image-update-helper where the temporary image file
was not removed if an error occured.
* HELPER: Don't overwrite C:\Unattend.xml file in windows images, unless the
image property USE_DEFAULT_UNATTEND is defined.
was not removed if an error occurred.
* HELPER: Don't overwrite C:\Unattend.xml file in Windows images,
unless the image property USE_DEFAULT_UNATTEND is defined.
* HELPER: Fix a bug in the error monitoring system
* HELPER: Correct some error messages
2012-10-12, v0.6.2
* Seperate the error messages that should be logged by the system from
* Separate the error messages that should be logged by the system from
those that should be propagated to the user through the monitoring
mechanism. Don't allow internal configuration options get revieled to
* HELPER: Remove the rule of updating the password for user `user' in Fedora
and Ubuntu when the USERS image property is missing.
mechanism. Don't allow internal configuration options get revealed to
* HELPER: Remove the rule of updating the password for user `user' in
Fedora and Ubuntu when the USERS image property is missing.
* HELPER: Check if a user exists before updating its password.
the user.
2012-10-05, v0.6.1
* Use Coordinated Universal Time when logging.
* Fix a bug in the way snf-image-update-helper reads the links of the
kernel and the initrd in the helper VM.
* Use environmental variables instead of input options to pass sensitive
data to pithcat. This is needed because when pithcat is running, every
user can see the program's command line by using ps.
* Use environmental variables instead of input options to pass
sensitive data to pithcat. This is needed because when pithcat is
running, every user can see the program's command line by using ps.
2012-09-15, v0.6
* Fix import and export scripts
* Add new config_url os parameter. This can be used by snf-image to
download a json file that contains the value for other os parameters
* HELPER: Make sure EnforcePersonality is the last task that runs before
UmountImage. Doing this ensures that user-enjected files never
* HELPER: Make sure EnforcePersonality is the last task that runs
before UmountImage. Doing this ensures that user-injected files never
get overwritten by any other configuration task.
2012-08-31, v0.5
......@@ -162,11 +169,11 @@
when running.
* Make the name of image properties case insensitive
* Abandon timelimit command in favor of timeout
* Add support for null image backend type. This backend type can be
* Add support for null image backend type. This back-end type can be
used if we want snf-image to configure the VM disk without first
copying an image to it.
* HELPER: Add a new progress monitoring mechanish
* HELPER: Add support for arch linux
* HELPER: Add a new progress monitoring mechanism
* HELPER: Add support for arch Linux
2012-06-29, v0.4.2
* HELPER: Make the name of image properties case-insensitive
......@@ -185,7 +192,7 @@
* Create package list in snf-update-helper every time debootstrap is
performed. If a cache file is found, snf-update-helper will use this
list to determine if it is OK to use this cache file or not.
* Add mechanism for overwritting the helper's Unattend.xml file
* Add mechanism for overwriting the helper's Unattend.xml file
* HELPER: Add support for creating SWAP partitions
* HELPER: Add support for GPT partition tables
* HELPER: Add support for resizing logical partitions
......@@ -201,45 +208,45 @@
* HELPER: Force Automatic Update in Windows images
2012-03-05, v0.3.4
* HELPER: Fix 2 bugs in Delete SSH Keys task, caused by the use of pipefail
bash option
* HELPER: Fix 2 bugs in Delete SSH Keys task, caused by the use of
pipefail bash option
2012-02-29, v0.3.3
* Fix a bug in pithcat where the restored image had incorrect
size. The trailing zeros in the image files where not restored.
* Fix a bug in pithcat where the restored image had incorrect size.
The trailing zeros in the image files where not restored.
* HELPER: Check if the images partition table is valid
2012-02-06, v0.3.2
* Make pithcat work with pithos v0.8.3
2012-01-26, v0.3.1
* HELPER: Fix a bug in the OS detection code
* HELPER: Fix a bug in the OS detection code
2011-01-12, v0.3
* Put all helpers run-time created files in a tmpfs jail
* Remove the ARCH field from the image name
* Support remote (network accessable) and pithos hosted images
* Support remote (network accessible) and Pithos hosted images
* Remove custom images format (remote images is a supergroup)
* HELPER: Warn and in some cases fail if the instance is of an unknown
* HELPER: Force a resize when the filesystem is clean, even if resize2fs
complains
* HELPER: Force a resize when the file system is clean, even if
resize2fs complains
* HELPER: Make sure OSFAMILY image property is specified
2011-11-18, v0.2
* Support diskdump format
* Support custom images format. Custom images are diskdump images
that can be accessed from a URL
* Support custom images format. Custom images are diskdump images that
can be accessed from a URL
* Add a new OS parameter (img_properties)
* HELPER: Add support for Image Properties
* HELPER: Add new FixPartitionTable task
* HELPER: Add new task that disables RDP connections during windows setup
* HELPER: Add new task to disable RDP connections during Windows setup
* HELPER: Extend image personalization to support custom ownership and
permissions in the injected files
2011-10-20, v0.1.2
* Fix a debootstrap bug in snf-image-update-helper
* Use --one-file-system option when creating cache for update-helper
* Add setting for allowing the user to manually pick a debian mirror
* Add setting for allowing the user to manually pick a Debian mirror
for debootstrap.
2011-10-17, v0.1.1
......
Introduction
============
This is snf-image, a Ganeti OS provider primarily used by the
Synnefo cloud management software to deploy VM instances from
predefined or custom Images.
It comprises two distinct components:
* snf-image-host, which executes as a privileged process on the Ganeti host
* snf-image-helper, which executes inside a helper VM and undertakes all
security-sensitive customization of a Ganeti VM.
For more information on installing and configuring the software please see:
https://code.grnet.gr/projects/snf-image/wiki/Wiki
and the Synnefo homepage:
https://code.grnet.gr/projects/synnefo
License
=======
snf-image is licensed under GNU Generic Public License version 2 (GPLv2),
please see snf-image-{host,helper}/COPYING for the full text.
snf-image
=========
Overview
--------
This is snf-image, a [Ganeti](http://code.google.com/p/ganeti) OS provider
primarily used by the Synnefo cloud management software to deploy VM instances
from predefined or custom Images.
It comprises two distinct components:
* snf-image-host, which executes as a privileged process on the Ganeti host
* snf-image-helper, which executes inside a helper VM and undertakes all
security-sensitive customization of a Ganeti VM.
Project Page
------------
Please see the [official Synnefo site](http://www.synnefo.org) and the
[latest snf-image docs](http://www.synnefo.org/docs/snf-image/latest/index.html)
for more information.
Copyright and license
=====================
Copyright (C) 2011-2014 GRNET S.A.
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.
......@@ -16,7 +16,7 @@ extdump and ntfsdump image formats
++++++++++++++++++++++++++++++++++
Those two formats are dumps (raw copies using dd) of partitions hosting Linux
systems on ext{2,3,4} and Windows systems on ntfs file systems respectively.
systems on ext{2,3,4} and Windows systems on NTFS file systems respectively.
Partitions hosting a Windows or Linux system that are suitable for dumping
should have the following properties:
......@@ -30,7 +30,7 @@ should have the following properties:
Known Issues
------------
* For Linux systems, having grub installed in the partition is fragile and
* For Linux systems, having GRUB installed on a partition is fragile and
things can go wrong if you shrink the partition.
* More complicated partition schemes are not supported.
......@@ -155,4 +155,4 @@ actual error message or a *stderr* field that hosts the last 10 lines of the
standard error output stream of *snf-image-helper*. Valid *error* messages look
like this:
``{"subtype": "error", "type": "image-helper", "messages": ["The image contains a(n) msdos partition table. For FreeBSD images only GUID Partition Tables are supported."], "timestamp": 1379507910.799365}``
``{"subtype": "error", "type": "image-helper", "messages": ["The image contains a(n) MSDOS partition table. For FreeBSD images only GUID Partition Tables are supported."], "timestamp": 1379507910.799365}``
......@@ -15,7 +15,7 @@ separate steps:
| 1. Fill the newly provisioned disk with Image data
| 2. Customize the Image accordingly
For (1), snf-image can fetch the Image from a number of back-ends, as we
For (1), snf-image can fetch the Image from a number of backends, as we
describe later. For (2) snf-image spawns a helper VM and runs a number of
configuration tasks inside the isolated environment. Once the last task returns
successfully, the helper VM ceases and snf-image returns the newly configured
......@@ -41,7 +41,7 @@ the supported hypervisor as dictated by Ganeti. It runs as an unprivileged
user.
There is no restriction on the distribution running inside the helper VM, as
long as it executes the snf-image-helper component automatically upon bootup.
long as it executes the snf-image-helper component automatically upon boot-up.
The snf-image-update-helper script is provided with snf-image to automate the
creation of a helper VM image based on Debian Stable, using multistrap.
......@@ -57,8 +57,8 @@ created and ensured by snf-image:
maintains.
* The helper VM is expected to output "SUCCESS" to its second serial port if
image customization was successful inside the VM.
* If "SUCCESS" is not returned, snf-image assumes that, execution of the helper
VM or snf-image-helper has failed.
* If "SUCCESS" is not returned, snf-image assumes that, execution of the
helper VM or snf-image-helper has failed.
* The helper VM is expected to shutdown automatically once it is done. Its
execution is time-limited; if it has not terminated after a number of
seconds, configurable via ``/etc/default/snf-image``, snf-image sends a
......@@ -79,38 +79,38 @@ Graphical Representation
The architecture is presented below:
.. image:: /images/arch.png
.. image:: images/arch.png
.. _storage-backends:
Storage back-ends
^^^^^^^^^^^^^^^^^
Storage backends
^^^^^^^^^^^^^^^^
As stated above, for step (1), *snf-image* is capable of fetching images that
are stored in a variety of different back-ends and then extracting them onto
the newly created block device. The following back-ends are supported:
are stored in a variety of different backends and then extracting them onto the
newly created block device. The following back-ends are supported:
* **Local back-end**:
The local back-end is used to retrieve images that are stored on the Ganeti
* **Local backend**:
The local backend is used to retrieve images that are stored on the Ganeti
node that the image deployment takes place. All local images are expected to
be found under a predefined image directory. By default */var/lib/snf-image*
is used, but the user may change this by overwriting the value of the
*IMAGE_DIR* variable under ``/etc/default/snf-image``.
* **Network back-end**:
The network back-end is used to retrieve images that are accessible from the
* **Network backend**:
The network backend is used to retrieve images that are accessible from the
network. snf-image can fetch images via *http:*, *https:*, *ftp:* or
*ftps:*, using `cURL <http://curl.haxx.se/>`_.
* **Pithos back-end**:
* **Pithos backend**:
*snf-image* contains a special command-line tool (*pithcat*) for retrieving
images residing on a Pithos installation. To set up snf-image's Pithos
back-end the user needs to setup the ``PITHOS_DATA`` and ``PITHOS_DB``
backend the user needs to setup the ``PITHOS_DATA`` and ``PITHOS_DB``
variables inside ``/etc/default/snf-image`` accordingly.
* **Null back-end**:
If the null back-end is selected, no image copying is performed. This
* **Null backend**:
If the null backend is selected, no image copying is performed. This
actually is meant for bypassing step (1) altogether. This is useful, if the
disk provisioned by Ganeti already contains an OS installation before
*snf-image* is executed (for example if the disk was created as a clone of
......@@ -132,7 +132,7 @@ partition in the end. The task will fail if the environmental variable
is missing.
**FilesystemResizeUnmounted**: Extends the file system of the last partition to
cover up the whole partition. This only works for ext{2,3,4} and ufs2 file
cover up the whole partition. This only works for ext{2,3,4}, FFS and UFS2 file
systems. Any other file system type is ignored and a warning is triggered. The
task will fail if *SNF_IMAGE_DEV* environmental variable is missing.
......@@ -157,12 +157,12 @@ are also recreated. Besides removing files that comply to the
depends on is *SNF_IMAGE_TARGET*.
**DisableRemoteDesktopConnections**: This script temporary disables RDP
connections on windows instances by changing the value of *fDenyTSConnection*
connections on Windows instances by changing the value of *fDenyTSConnection*
registry key. RDP connections will be enabled back during the specialize pass
of the Windows setup. The task will fail if *SNF_IMAGE_TARGET* is not defined.
**InstallUnattend**: Installs the Unattend.xml files on windows instances. This
is needed by windows in order to perform an unattended setup. The
**InstallUnattend**: Installs the Unattend.xml files on Windows instances. This
is needed by Windows in order to perform an unattended setup. The
*SNF_IMAGE_TARGET* variables needs to be present for this task to run.
**SELinuxAutorelabel**: Creates *.autorelabel* file in Red Hat images. This is
......
......@@ -45,9 +45,9 @@ copyright = u'2011, 2012, 2013 GRNET S.A. All rights reserved'
# built documents.
#
# The short X.Y version.
version = '0.13'
version = '0.14'
# The full version, including alpha/beta/rc tags.
release = '0.13'
release = '0.14'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
......
Configuration
=============
The user may configure the behavior of snf-image by uncommenting and
overwriting the default value for some configuration parameters and the path of
some external programs in ``/etc/default/snf-image``:
.. code-block:: console
# snf-image defaults file
# IMAGE_NAME: Name of the image to use
# Generally you use the name of the image with the version of the OS included.
# Examples include:
# centos-5.4 debian-4.0 fedora-12
# IMAGE_NAME=""
# IMAGE_DIR: directory location for disk images
# IMAGE_DIR="/var/lib/snf-image"
# IMAGE_DEBUG: turn on debugging output for the scripts
# IMAGE_DEBUG=no
# VERSION_CHECK: Check if snf-image and snf-image-helper have the same version.
# This is useful if snf-image is installed as Debian package and not from
# source.
# VERSION_CHECK="yes"
# HELPER_DIR: Directory hosting the helper files
# HELPER_DIR="/var/lib/snf-image/helper/"
# HELPER_SIZE: Size of the helper VM image in MB
# HELPER_SIZE="600"
# HELPER_TIMEOUT: Soft and hard timeout limits for helper instance. The helper
# instance will be terminated after a given time if it hasn't exited by itself.
# A TERM signal will be send if the instance is running after a
# HELPER_SOFT_TIMEOUT interval. A KILL signal will be sent, if the instance is
# still running after a HELPER_HARD_TIMEOUT interval since the initial signal
# was sent. The timeout values are integer numbers with an optional suffix: `s'
# for seconds (the default), `m' for minutes, `h' for hours or `d' for days.
# HELPER_SOFT_TIMEOUT="120"
# HELPER_HARD_TIMEOUT="5"
# HELPER_USER: For security reasons, it is recommended that the helper VM
# runs as an unprivileged user. KVM drops root privileges and runs as
# HELPER_USER immediately before starting execution of the helper VM.
# HELPER_USER="nobody"
# HELPER_MEMORY: Virtual RAM size in megabytes to be given to the helper VM.
# HELPER_MEMORY="500"
# MULTISTRAP_CONFIG: Configuration file to be used with multistrap to create
# the rootfs of the helper image.
# MULTISTRAP_CONFIG="/etc/snf-image/multistrap.conf"
# MULTISTRAP_APTPREFDIR: Directory where APT preference files are hosted. Those
# files will be injected to the helper image before multistrap is called.
# MULTISTRAP_APTPREFDIR="/etc/snf-image/apt.pref.d"
# XEN_SCRIPTS_DIR: Directory where the Xen scripts are stored
# XEN_SCRIPTS_DIR=="/etc/xen/scripts"
# PITHOS_DB: Pithos database in SQLAlchemy format
# PITHOS_DB="sqlite://///var/lib/pithos/backend.db"
# PITHOS_DATA: Directory where Pithos data are hosted
# PITHOS_DATA="//var/lib/pithos/data"
# PROGRESS_MONITOR: External program that monitors the progress of image
# deployment. Monitoring messages will be redirected to the standard input of
# this program.
# PROGRESS_MONITOR=""
# UNATTEND: This variables overwrites the unattend.xml file used when deploying
# a Windows image. snf-image-helper will use its own unattend.xml file if this
# variable is empty. Please leave this empty, unless you really know what you
# are doing.
# UNATTEND=""
# Paths for needed programs. Uncomment and change the variables below if you
# don't want to use the default one.
# LOSETUP="losetup"
# KPARTX="kpartx"
# SFDISK="sfdisk"
# INSTALL_MBR="install-mbr"
# TIMEOUT="timeout"
# CURL="curl"
# TAR="tar"
Configuration parameters
^^^^^^^^^^^^^^^^^^^^^^^^
The most common configuration parameters the user may need to overwrite are:
* **IMAGE_DIR**: To specify the directory where the local images are hosted
* **HELPER_SOFT_TIMEOUT**: To increase the allowed deployment time
* **PITHOS_DB**: To specify the Pithos database and credentials, in case the
user is accessing pithos-hosted images
* **PITHOS_DATA**: To specify the directory where the pithos data blocks are
hosted, in case the user is accessing pithos-hosted images
* **PROGRESS_MONITOR**: To specify an executable that will handle the
monitoring messages exported by snf-image
Paths of external programs
^^^^^^^^^^^^^^^^^^^^^^^^^^
In ``/etc/default/snf-image`` the user may also overwrite the path of some
external programs snf-image uses, or add default options to them. For example,
if the user wants to access network based images via insecure SSL connections,
he/she will need to overwrite the value of the *CURL* variable like this:
``CURL="curl -k"``
......@@ -6,7 +6,7 @@
Welcome to snf-image's documentation!
=====================================
.. image:: /images/logo.png
.. image:: images/logo.png
snf-image is a `Ganeti <http://code.google.com/p/ganeti/>`_ OS definition. It
allows Ganeti to launch instances from predefined or untrusted custom Images.
......@@ -42,6 +42,7 @@ Contents:
architecture
interface
installation
configuration
usage
advanced
......
......@@ -2,7 +2,7 @@ Installation
============
Before installing snf-image be sure to have a working Ganeti installation in
your cluster. The installation process should take place in **all** ganeti
your cluster. The installation process should take place in **all** Ganeti
nodes. Here we will describe the installation in a single node. The process is
identical for all nodes and should be repeated manually or automatically, e.g.,
with puppet.
......@@ -10,15 +10,9 @@ with puppet.
Installing snf-image using packages
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
For Debian GNU/Linux and Ubuntu we provide packages in our apt repository.
For Debian GNU/Linux and Ubuntu we provide packages in our APT repository.
For Debian Squeeze add the following lines to ``/etc/apt/sources.list`` file:
``deb http://apt.dev.grnet.gr squeeze/``
``deb-src http://apt.dev.grnet.gr squeeze/``
For Debian Wheezy add the following lines:
For Debian Wheezy add the following lines to ``/etc/apt/sources.list`` file:
``deb http://apt.dev.grnet.gr wheezy/``
......@@ -55,13 +49,13 @@ To install snf-image from source, download the provided source package:
$ wget http://apt.dev.grnet.gr/wheezy/snf-image_<VERSION>.orig.tar.gz
Untar, configure and compile the source:
Untar, configure and build the source:
.. code-block:: console
$ tar -xvf snf-image_<VERSION>.orig.tar.gz
$ cd snf-image_<VERSION>/snf-image-host
$ ./autoget.sh
$ ./autogen.sh
$ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
$ make
......@@ -71,6 +65,7 @@ Install snf-image:
$ make install
$ install -Dm600 defaults /etc/default/snf-image
$ mkdir -p /var/lib/snf-image/helper
Finally, install the helper image by executing:
......
......@@ -15,9 +15,9 @@ following OS Parameters:
injected to the image
* **img_properties** (optional): additional image properties used to customize
the image (:ref:`details <image-properties>`)
* **img_personality** (optional): files to be injected into the image
filesystem (:ref:`details <image-personality>`)
* **config_url** (optional): the url to download configuration data from
* **img_personality** (optional): files to be injected into the image's file
system (:ref:`details <image-personality>`)
* **config_url** (optional): the URL to download configuration data from
.. _image-format:
......@@ -42,10 +42,10 @@ Image ID (img_id)
^^^^^^^^^^^^^^^^^
The **img_id** OS parameter points to the actual Image that we want to deploy.
It is a URI and its prefix denotes the type of :ref:`back-end <storage-backends>`
It is a URI and its prefix denotes the type of :ref:`backend <storage-backends>`
to be used. If no prefix is used, it defaults to the local back-end:
* **Local back-end**:
* **Local backend**:
To select it, the prefix should be ``local://``, followed by the name of the
image. All local images are expected to be found under a predefined image
directory (``/var/lib/snf-image`` by default).
......@@ -55,7 +55,7 @@ to be used. If no prefix is used, it defaults to the local back-end:
| We need to assign:
| ``img_id=local://slackware.diskdump``
* **Network back-end**:
* **Network backend**:
If the **imd_id** starts with ``http:``, ``https:``, ``ftp:`` or ``ftps:``,