Installation
^^^^^^^^^^^^
-This guide describes how to install snf-image-creator on an Ubuntu 12.04 LTS
-system. It is highly recommended to have virtualization capable hardware.
-snf-image-creator will work on processors that do not support virtualization
-but it will be extremely slow.
+This guide describes how to install snf-image-creator on your machine. It is
+highly recommended to have virtualization capable hardware. snf-image-creator
+will work on processors that do not support virtualization but it will be slow.
Dependencies
============
* Python setuptools [http://pypi.python.org/pypi/setuptools]
* Python Dialog [http://pythondialog.sourceforge.net/]
* Python bindings for libguestfs [http://libguestfs.org/]
+ * Python interface to sendfile [http://pypi.python.org/pypi/pysendfile]
* Kamaki [https://code.grnet.gr/projects/kamaki]
* Python sh (previously pbs) [https://github.com/amoffat/sh]
* ANSI colors for Python [http://pypi.python.org/pypi/ansicolors]
* progress [http://pypi.python.org/pypi/progress]
- * Python interface to sendfile [http://pypi.python.org/pypi/pysendfile]
The above dependencies are resolved differently, depending on the installation
-method you choose.
+method you choose. There are two installation methods available:
+
+#. `Install snf-image-creator using official packages`_ (currently only for
+ Ubuntu 12.04, more OSes will be supported soon)
+#. `Install snf-image-creator from source`_ (provided you meet the above
+ dependencies)
-There are two installation methods. The first uses official packages whereas
-the second installs snf-image-creator and its dependencies from source. Both
-methods are presented below.
+Both methods are presented below.
Install snf-image-creator using official packages
=================================================
$ sudo apt-get install snf-image-creator
-The installation might take a while. Please note that at some point during the
+The installation may take a while. Please note that at some point during the
installation you will be prompted to create/update a "supermin appliance". This
is a setting regarding libguestfs and you can safely choose "Yes".
gives you access to all the latest features. Keep in mind, however,
that you may experience instability issues.
-The first four dependencies (python2, setuptools, Python-Dialog, and
-libguestfs) need to be installed manually by the user. In an Ubuntu 12.04 LTS
-system this can be achieved by installing packages provided by the
+The first five dependencies (python2, setuptools, Python-Dialog, libguestfs and
+python-sendfile) need to be installed manually by the user. In an Ubuntu 12.04
+LTS system this can be achieved by installing packages provided by the
distribution, using the following command:
.. code-block:: console
- $ apt-get install python-setuptools python-guestfs python-dialog
+ $ apt-get install python-setuptools python-guestfs python-dialog python-sendfile
The rest of the dependencies will be automatically resolved by setuptools.
Note that at some point during the installation, you will be prompted to
$ cd ~
$ git clone https://code.grnet.gr/git/snf-image-creator
- $ git checkout stable-0.1
$ cd snf-image-creator
+ $ git checkout stable-0.1
$ ./setup.py build
And from within the virtual environment execute:
*--no-sysprep* and *--no-shrink* respectively.
If *--print-sysprep* is defined, the program will exit after outputing a
-list of enabled and disabled system preparation operation appliable to this
+list of enabled and disabled system preparation operation applicable to this
media source. The user can enable or disable specific *syspreps* when creating
an image, using *-{enable,disable}-sysprep* options. You can specify those
options multiple times to enable or disable multiple *syspreps*.
$ echo 'a8c667e871f48f3a662f3fbf1c3ddb17 ubuntu-12.04.1-server-amd64.iso' > check.md5
$ md5sum -c check.md5
-Create a 2G sparce file to host the new system:
+Create a 2G sparse file to host the new system:
.. code-block:: console
will be able to boot your installed OS and make any changes you want to it
(e.g. install openssh-server) using the following command::
- $ sudo kvm -m 1000 -drive file=linuxmint.raw,format=raw,cache=none,if=virtio
+ $ sudo kvm -boot d -drive file=ubuntu_hd.raw,format=raw,cache=none,if=virtio
After you're done, become root, activate the virtual environment you have
installed snf-image-creator in, and use *snf-mkimage* to create and upload the
Swap partitions
---------------
-If you want your image to have a swap partitions, make sure this is the last
+If you want your image to have a swap partition, make sure this is the last
partition on the disk. If snf-image-creator detects a swap partition in the end
of the input media, it will remove the partition when shrinking and will save
enough information to be able to recreate it during image deployment. This will