Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


The project is based on the FAI (Fully Automatic Installation) project from Thomas Lange. FAI is a non-interactive system to install, customize and manage Linux operating-systems and software configurations on computers. For more information please visit

The FAI-Administration-Tool is a simple web based application used to create client configurations for boot over PXE and afterwards installation with FAI. It has been developed with PHP, HTML, CSS, JavaScript and MySQL. For the design I used the CSS-Framework Bootstrap

This project is just a test development. The following instructions and installation scripts are only tested with the Debian 8 release.

The FAI-Administration-Tool is free software, distributed under the terms of the GNU General Public License, version 3. There is no warranty, expressed or implied, associated with this product. Use at your own risk.

What it does

This project has been developed to simplify the use of FAI. The main functionality is to create some client configurations for PXE boot and configurations for installation with FAI. Moreover, you can monitor the installation over a frontend, which shows the current states during installation. The monitoring is based on the tool fai-monitor.


FAI packages from must be installed on the system. Furthermore the directory for PXE configurations must be on /srv/tftp/fai/pxelinux.cfg and the nfsroot directory on /srv/fai/nfsroot. If not, you must change the right paths in all files.

The frontend gets the Bootstrap files from a CDN. You also can download and host Bootstrap by yourself. For this you must change the link and sources in the header.php and the link in the index.php.


There is a script,, that installs all missing packages for this tool (without FAI packages) and configures the environment. Use the script at your own risk, be careful. Executing the script leads to the following changes:

  1. It installs the webserver Apache, some PHP packages, the database MySQL and sudo.
  • Package names: apache2 libapache2-mod-php5 php5 php5-common php5-json php5-ldap php5-mcrypt php5-mysql mysql-server sudo*
  1. It removes the index.html in /var/www/html/ and copy the frontend files to /var/www/html.
  2. If desired, it load a basic mysql-dump to the database.
  3. It adds a new group called fai and add the webserver user to it.
  4. It change permissions for the following directory to the group fai:
  • /srv/tftp/fai/pxelinux.cfg
  • /srv/fai/config/files/etc/network/interfaces
  • /srv/fai/config/files/etc/hosts
  • /srv/fai/config/class

For more information look at In case you are unsure whether you should use the script, you can of course perform the entire configuration by hand and step by step and only with the settings you want.


To allow the webserver user to start fai-monitor, you must add the following line to /etc/sudoers (use visudo):

  • www-data ALL=(root) NOPASSWD: /usr/sbin/fai-monitor


It is possible to use LDAP to login to the frontend. You can edit the LDAP settings in login.php. If you don't want to use LDAP you can login without using a name or password.


Formular view

On this side, you can create the client configurations. Note: The FAI-Classes you can add, are only the classes that won’t be added dynamically during installation. Currently the choice of a dynamic IP assignment doesn’t create a network and host configuration. Formular

Class view

This is an overview of all classes in your database with a short description. Classes

Monitoring view

The monitoring view gives you feedback about the current state during the installation. With AJAX the states are continuously updated. This side is based on the tool fai-monitor. Furthermore, you see whether fai-monitor is running or not. Monitoring

Installclients view

This view represents a table of all created client configurations. Note: The classes shown in this table are only the ones that have been added in the formular view (meaning: not dynamically added). Installclients


Simple administration tool for boot over PXE and installation with FAI







No releases published


No packages published