m23 logo

m23 is a free software distribution system licensed under the GPL, which installs and administers clients with

m23 is controlled via webbrowser. The installation of a new m23 client is done in only three steps and the integration of existing clients is possible, too. Group functions and mass installation tools make managing a vast number of clients comfortable. Client backup and server backup are included to avoid data loss. With the integrated virtualisation software, m23 can create and manage virtual m23 clients, that run on real m23 clients or the m23 server. Scripts and software packages (for installation on the clients) can be created directly from the m23 web interface.

Read more>>


m23 features

Administration via webbrowser

The entire administration is done via webbrowser and is possible from all computers having access to the m23 server via network. The installation of additional administration software is not necessary. A remote access to the m23 server via PDA or laptop is easily possible. Authentification and SSL encryption secure the communication and prevent undesirable access.

Three steps to your complete client

Installing a client with m23 is rather simple. Only three steps are required for a completely installed client.

1. Adding the client
Screenshot: Add client

First, you need to enter some values for the client. These are, for example, the network settings (IP, networkmask, etc.), user name and password or the name of an LDAP server that manages your user accounts.

2. Partitioning, formatting and installation of the operating system
Screenshot: Client partitioning and formatting

All clients can be partitioned and formatted individually. The resulting partitions can be used for the installation of the operating system, the creation of software RAIDs, for data storage or as swap space. The installation will start after the selection of the operating system.

3. Installation of additional software
Screenshot: add more packages

You can install additional software packages in the last (optional) step.

Integration of existing clients into m23

Existing Debian-based systems (Debian, Ubuntu, Kubuntu, Xubuntu) can be assimilated into the m23 system easily and are then administered like a normal client that was installed with m23. Only the specification of the client's name, its IP or hostname and the root password are required. The client, which is to be integrated, is then scanned and its hardware information and the status of installed packages are transmitted to the m23 server.

Group functions

You will like the convenient group functions if you have a big amount of clients that need to install new software or if other routine jobs need to be done. E.g. a new software package can be installed on all clients or be removed from all clients of a group. In addition, an update or a client recovery can be accomplished on all group members.

Mass installation

The mass installation tools are handy, if you need to install a big amount of clients with similar requirements (and maybe different hardware). The mass installation is done in three steps.

1. Creation of a defined client
Screenshot: Define client model

A model client, that holds the basic settings (such as the default gateway or the group name), is defined (but not installed). The real clients are to be derived from this defined client. The defined client gets a partitioning and formatting for its virtual harddrive (as well as rules what to do if the real harddrives are differing in size or type), the operation system and appropriate software packages.

2. Choosing the parameter generator options
Screenshot: Select generation method for parameters

Now you have to choose which of the settings, that can or have to be different on each client, shall be kept (e.g. user name), generated automatically (e.g. client name) or read from a file or entered by hand (e.g. MAC address). The partitioning of the virtual harddisk will be adjusted on client deployment.

3. Final review of the client parameters
Screenshot: Review generated parameters

In this last step you see all the parameters and values of all clients in a table and you can change the values by hand. It is possible to change the number of clients, too. Automatically generated client parameters will be calculated in the required amount or existing clients will be removed.

Client features

Operating systems

m23 supports:

m23 supports Debian, Ubuntu, Kubuntu, Xubuntu, Fedora, Linux Mint, elementary OS, CentOS and openSUSE. The choice of the Linux distribution is a matter of taste and a question of the functional range. m23 gives the administrator the chance to choose the right distribution for each client individually which can be installed automatically. m23 allows to manages all clients via the same m23 administration interface, no matter which distribution is installed.

Free partitioning and formatting

In addition to the automatic partitioning and formatting, m23 supports individual harddrive setups. The resulting partitions can be used for the operating system, to store data and for swapping. The m23 interface includes all necessary functions for deleting, adding and formatting of partitions and for assigning them to mountpoints, installation or swap usage. In addition, it is possible to reuse the existing partition layout for the installation.

Support for software RAIDs

Partitions or entire harddrives can be combined into software RAIDs. m23 supports the RAID levels 0, 1, 4, 5, 6 and 10. These RAID levels have advantages and disadvantages in relation to speed increase and data reliability. RAIDs can be used like normal partitions to install operating systems to or to use them as swap or storage space. You can install the Linux kernel and its modules on a separate (non-RAID) partition to be able to install an operating system on all possible RAID levels.

User management with LDAP

User accounts can be managed with a central LDAP server. This increases the ease of use in environments with many clients and a lot of users. The OpenLDAP server is shipped with the m23 server and can be administered via the highly integrated phpLDAPadmin. m23 can use existing LDAP entries for new m23 clients or add extra entries on adding an m23 client.

NFS for storing home directories

An NFS server for storing the user's home directories is a good supplement to an existing LDAP server. Using an NFS server simplifies the making of backups dramatically in contrast to a lot of clients storing the home directories on local harddrives. As a benefit of this combination the user has the alternative to log in into any client and find her or his own desktop and files.

Software packages

Thousands of software packages like office packages, graphic tools, server applications or games can be installed via the webinterface. Software installation or removal jobs are carried out at boot time or while the client is in normal use.

Software choice in different distributions

The Linux distributions that are installable with m23 offer a large variety of free software, which can be installed easily. In addition to the package sources recommended by m23 other package sources can be added to install software from other suppliers.

Package dependency check

You can check if the removal or installation of software will be sucessful before the actual process. The administration interface gives a warning message, e.g. if a package can not be installed due to unsolved dependencies.

Automatic software package caching


Software packages are downloaded from the internet to keep them up-to-date. The packages are then cached to ensure that every package is downloaded only once. If a certain package is installed a second time, the package will be installed from the cache. In case that a new version of the package exists, the latest package will first be downloaded and stored in the cache. On your m23 server this job is done by the proxy cache Squid.

Pool builder for building package sources

Package source architect

The pool builder makes it possible to combine software packages from different media (CD, DVD, internet) on the m23 server and convert them to a package source. These package sources can be used to install clients. This can be done without an internet connection or if the internet connection is rather slow. It is possible, too, to add selfmade packages to the pool.

Graphical desktops

Support for:

The m23 clients can be installed as workstation with the graphical user interfaces KDE, Gnome, XFce, LXDE and pure X11 or as a server without graphical subsystem. In most server setups, the server doesn't need a user interface because most of the server software runs in text mode. If you choose the Ubuntu distribution you can also install Unity, for Linux Mint Mate or Cinnamon and for Kubuntu "Kubuntu desktop" (KDE based), and for elementary OS, there is the Pantheon desktop.

Imaging: Installation using image files

An image file of a partition or entire harddisk can be used to install other clients. These image files are taken from installed clients with all their software packages and settings. The creation of these image files is included in the m23 administration interface for your comfort. Image files can be compressed to save storage space and bandwidth on rollout. An image file can be used to install any number of clients. After the end of the transfer, the client will be adjusted like a client that was installed from software packages. This is done on Debian, Ubuntu, Kubuntu and Xubuntu clients. These "image clients" can be managed like "normal clients" with m23, this includes software installation and other administrative tasks.

Client backup


Personal data and additional settings can be backupped and restored with the integrated software BackupPC. This is necessary for all personal data which is not handled by m23.

Client recovery

A client can be reinstalled with excactly the same software selection and configuration as it was installed with m23 before. This is done with the recovery feature directly from the m23 interface. The recovery includes the complete installation with partitioning and formatting. All settings done with m23 will be restored. Manual changes need a recovery from a backup medium.

Rescue system

The m23 rescue system is a minimal Linux environment that can be booted on the clients via the network. You can use it for on-location maintenance or via an SSH console. The administrator has full access to the client and can do all administrative work. Additional tools (e.g. the client log) support the administrator with his/her fault analysis.

Client virtualisation


The free virtualisation solution VirtualBox OSE is now (optional) part of m23 and can be installed directly on the m23 server as well as on the managed m23 clients. Required for virtualisation is a current Debian system (Debian Lenny or Squeeze). Virtual m23 clients which act on the network just like normal m23 clients are managed via the m23 server as usual. These virtual clients can be partitioned and formatted like a normal PC and of course the operating system and additional software can be installed as well.

VirtualBox OSE packages are available for 32 and 64 bit machines, that can be installed directly via the m23 web interface on the m23 clients. These m23 clients are virtualisation hosts for virtual m23 clients after the installation. Virtualisation may be useful to use the existing ressources of your computers better (e.g. office PCs that usually wait for user input most of the time or on a web server).

Screenshot: Installation on a virtual client

You can check the usage of harddisk and memory on the virtualisation host in the "VM creation dialog" before you create a new virtual m23 client. So you can take care not to assign too much harddisk space or memory to the VM. The newly created VM runs through the usual 3-step-setup after the creation is done.

Virtual m23 clients can run in graphical mode or without visible output. A modified VNC server was integrated for the graphical output to replace the VRDP feature of the non-free VirtualBox edition. It can be used to access the virtual clients from the boot on and allows to engage if problems occur. The VNC session contains the VirtualBox window with the running virtual m23 client and is based on the lightweight window manager flwm. An analog clock, a terminal and a button to shut down the session together with the VirtualBox machine are visible too.

Improve m23

The m23 interface and the entire m23 system can be improved with extra functions.

The MDK (m23 Development Kit) is a powerful environment to adjust m23 to your needs. E.g. you can create your own m23 server installation CD or build new network boot images with new modules.

Using the m23 extension halfSister, the ambitious administrator can easily make his or her favourite Linux distribution installable with m23, like it was already done with CentOS, openSUSE and Fedora.

Server features

How does it work?

m23 differentiates between servers and clients. An m23 server is used for software deployment and the management of the clients. Computers which are administered by the m23 server are the clients.

Diagram of m23 hierarchy

The client is booted over the network during the installation of the operating system. It is possible to start the client with a bootrom on its network card, with a boot disk or with a boot CD. The client's hardware is detected and set up. The gathered hardware and partition information is sent to the m23 server. Afterwards, this information is shown in the m23 administration interface. Now the administrator has to choose how to partition and format the client. Other settings include e.g. the distribution to be installed on the client.

Server backup

Server backup

The server backup function stores the m23 server with all its data at given points in time. The backups contain all information necessary to restore the whole m23 server functionality. Multiple points in time can be selected for this purpose. GPG encrypted backup files can be transferred to external servers automatically.

A GPG key management was integrated into the m23 webinterface, too. After a data fault the restore script will first install an "empty" m23 server and use the backup to bring it into a previously saved state. A short guide showing the restoring steps can be printed out directly from the m23 web interface (and should be before an emergency occurs!).

Variable firewall

A variable firewall makes sure that only safe values will be handed to the database. This should prevent SQL injection attacs.

IP manager

The IP management allows you to connect network settings to a MAC address, so that the necessary values are sent to the respective device via DHCP. Aside from this direct assignment, IP ranges can be defined, within which the IPs can be assigned dynamically (e.g. to notebooks). Specific settings (e.g. client name, MAC address) or specific IP ranges can now be blocked, so m23 cannot wrongly use these for m23 clients.

Copyright and usage notice for this text

You are allowed to use this text entirely, partly or in a modified form (e.g. for a press article or for product description in CD shops).

Creative Commons License: CC-BY-2.0

This text is licensed under the Creative Commons Attribution 2.0 License.

And of course we would be very happy, if we got a copy of your article or a URL where to find it ;-)

Desktop environments available for Ubuntu 18.04
Desktop environments
available for Ubuntu 18.04

With Ubuntu 18.04 LTS "Bionic Beaver", we are proud to add one more distribution to the list of distributions that can be installed with m23. We also include a set of pre-configured desktop environments. Users of the Univention Corporate Server can now get the m23-App for UCS 4.3 from the Univention App Center. And of course, several minor improvements have been made to make m23 even easier to use.

Ubuntu 18.04

From this version on, m23 offers support for Ubuntu 18.04 LTS as a distribution for the clients, with all the features that you're used to from the other distributions. This includes an incredible number of 7 pre-configured desktop environments: Mate, Gnome 3, LXDE, Budgie, KDE, Xfce as well as the Gnome-based Ubuntu standard desktop. The desktop configuration changes made by m23 to the Ubuntu standard desktop are limited to the removal of the shopping icon and the deactivation of the first start dialog of Gnome. m23 allows to install the 64- and 32-bit variants, no matter which desktop environment is selected.


The VirtualBox-based integrated virtualization has received multiple improvements and was slightly adapted. Virtual machines (VMs) that have been created with m23 can now also run on a Ubuntu 18.04 host. A new option for the CPU architecture is now available when creating a new VM from the m23 interface, which makes it possible to create both 64 and 32 bit systems. The m23 interface now always displays the credentials for accessing the m23 VM console, independently from the current state of the VM. A hint notifies you when the virtualization software has already been set up on an m23 client.

m23 app for UCS 4.3

From this m23 version on, the m23 app is available for UCS 4.3. Compared to m23 servers running natively on Debian (or Raspbian), the feature set of m23 on UCS is still slightly restricted, to avoid collisions with UCS-specific services. However, the possibility to save home directories of m23 clients on a central NFS server has now been unlocked.

Changes to the interface

The m23 interface has been polished a bit to give m23 administrators clearer hints about the current state of the m23 system and to optimize working with m23 in other ways.
In the selection dialogs for client groups and for package selections that shall be installed, selectable elements now display a checkbox (with and without check mark). In the client overview, "Repeat tasks" is available as an additional recovery option, and also allows to re-install a whole number of clients at the same time. When creating a client, the MAC address can now also contain colons, to make copy-pasting from other software programs easier. The colons will be filtered out by JavaScript and when saving on the m23 server. In the control center, a new icon for setting up the client has been added. The dialog for package installation has been extended by a hint about updating the package index, which will be displayed when the search gives no results. The search dialog displays an info text, when the search term contained invalid characters. Additionally, waiting animations are now displayed during search and kernel list updating.

This and that

While formatting as ext4, the feature "metadata_csum" is now deactivated, as it led to the checking aborting with older versions of fsck. The m23 server now regularly purges cached apt package lists, that are used for searching for packages for the corresponding m23 client. This helps avoid running out of disk space on (small) disks, if a large number of clients is managed by m23. If a device with a vastly diverging BIOS date (e.g. because of an empty CMOS battery) is used as an m23 client, this could lead to issues with the SSL certificate. At the beginning of the installation, the m23 client now fetches the current time from the m23 server and adjusts its own time when there is a larger difference between the two times. m23 deactivates the systemd apt-daily.timer, which can collide with m23 installation jobs. The base installation was extended by the packages "command-not-found" and "bash-completion", which make using the command line a little bit more comfortable. Slow package searches, especially with slow internet connection, will be sped up a lot from now on. Due to a bug, the package index has been downloaded for each new search. Now, once downloaded, the package index will be used until it's either outdated or is updated manually (as was intended). When updating the package index in the package architect, it wasn't always certain that really just the latest version of a Debian package would be kept. The new sorting functionality should now also take unusual package names into account and really delete the older packages.

Downloads / Update

The latest version is available as an update from the m23 interface, via apt (Note: Package source server for m23-specific packages is now "deb http://m23inst.goos-habermann.de ./". Setup is described in the installation guide), as ISO file for creating an m23 server installation medium, as pre-installed virtual machine or as RaspberryPi image file (the latter three can be found in the Download section).


From this version on, m23 also supports LinuxMint 18.3 Sylvia as a Linux distro for the clients, including the desktop environments Mate, Cinnamon, KDE and Xfce. Debian 9 Stretch and MariaDB are now used by default for the m23 installation media. Performance has been improved significantly, hardware support is now available for more devices and many other, smaller improvements have been made.

Greater performance

The interface of this new version of m23 is significantly faster. This is due to database optimizations, which allow to process data 10 times faster, and also to other, smaller changes, like setting timeouts and preventing redundant requests. The newly gained speed most noticeably affects the client overview page, when there are lots of clients managed by the server. As a handy profiling tool Xhprof is now included, and allows you to see how long it took to execute any function and where things could profit from further optimization.

Boot media

Creation of boot media
Creation of boot media

The boot media for m23 clients and server are now based upon Debian 9 and the Linux kernel 4.9.54. Support has been added for USB Ethernet adapters which can be used if a system does not have a built-in network card. m23 clients can now also be installed on NVMe SSDs. Client boot media now contain a script named fetchJobManual, which can be used to enter the m23 server and the m23 client ID manually.

Interface updates

Each page in the m23 interface now has a help icon that allows you to jump right to the help section of that page. The page "Make boot CD" has been substantially overhauled and was renamed to "Create boot media", as, presumably, only a very small portion of all m23 servers will still have a CD writer. Simultaneously, the dialog for writing boot diskettes has been removed. The update dialog, which can be used to install the official m23 packages, is now also available on UCS systems. On the newly added page called "Server features", optional m23 features can be activated - for example, the clients' online status can regularly be determined and displayed in the client overview. Client IDs are now displayed in the client overview. In the dialog for adding a new client, the client can now be assigned to multiple groups. When a client goes into a critical state, its control center will automatically display the most recent error from the client log. The dog ear that opens the m23 questionnaire has been removed. The option to upload encrypted server backups to share-online.biz has also been removed.

Smaller changes

The m23 command line now provides a new module that can find differences between the client data sets of the UCS LDAP and the m23 database. The module "DB_changeAllCollations" allows you to set all fields in all tables in the m23 database to use the character set "latin1_general_ci". Another module can help you with batch-changing IP adresses in the UCS LDAP and the m23 database. For MDM, the resource-hungry fading effect of the slide show has now been deactivated and the delay for a change between images has been increased to 5 minutes. The Script "pool2ISO" will convert a repository that has been created by the package source architect into an ISO file, which can be burnt to a CD/DVD/Blu-ray. For Ubuntu 16.04, an additional desktop profile has been created that installs a minimal Unity with German localization.


phpMyAdmin has been updated to 4.7.6. The integrated virtualization now also works with hosts running VirtualBox 5.x, uses "Debian_64" with 32MB video memory for the system profile and suggests 1GB RAM.

Downloads / Update

The latest version is now available as an update via the m23 interface, via APT (Note: package source server for packages specific to m23 is now "deb http://m23inst.goos-habermann.de ./". Setup as described in the installation guide), as ISO file for creating an m23 server installation medium, as preinstalled virtual machine or as an image file for Raspberry Pi (the latter three can be found in the download section).


From this version of m23 on, the m23 server can be installed on the new Debian 9 (Stretch), and can also install m23 clients running Debian 9. Further client-system related updates include some additional perks for Linux Mint 18.1 Serena and a preview for Devuan 1 Jessie. The new functionality for "Automatical Updates" allows you to update your m23 clients at predetermined points of time. Of course, there are also a couple more smaller changes and improvements.

Debian 9 + LinuxMint 18.1 + Devuan 1 Jessie

Cinnamon on Debian 9
Cinnamon on Debian 9

Many of the updates for this version of m23 concern the available distributions.
For the first time, the m23 server can be installed on the recently released Debian 9, a change that required many adjustments. m23 will now use the MySQL fork MariaDB, when packages for MySQL are unavailable. The m23 source code has undergone changes that make it compatible to PHP 7 and simultaneously 'fix' some inconsistent legacy code parts, which were still valid in previous PHP versions. Amongst other things, these changes were related to accessing non-initialized array elements and variables, and to class constructors in PHP4 style.
For m23 clients with Debian 9, the familar range of desktop environments is available for installation: Mate (optionally in a minimal variant with only the absolutely necessary packages), Cinnamon, Gnome, KDE, LXDE and Xfce.

For Linux Mint 18.1 Serena, the desktop environments KDE and Xfce are now available for installation on m23 clients. The package mintupdate is going to be removed, as it prevents updates initiated by the m23 server, when it is accessing the client's package database. Also, the package tilda will be removed, because it reassigns keyboard shortcuts and thus makes some desktop functionalities inaccessible. In the MDM session manager, the user list will now be hidden, which improves the orientation especially when there are lots of user accounts included via LDAP.

The systemd-free Debian fork Devuan as an additional client distribution is now in preview stage in m23. Information for available Devuan packages cannot yet reliably be downloaded by the m23 server. This prevents the selection of a kernel, and, in consequence, booting the Devuan installation. If you would like to use Devuan on your m23 clients, or if you would like to help solve the issue, please get back to us :-)

Automatical Update

Automatical Update
Automatical Update

The much-requested functionality for automated and scheduled updates for m23 clients now found its way into m23.
Now you can regularly and automatically update your m23 clients during predetermined time periods. In the new, clearly-structured dialog, you can set the number of clients which will be allowed to update fully (corresponds to apt-get dist-upgrade) or normally (corresponds to apt-get upgrade) simultaneously. You will create update groups, that may consist of an arbitrary number of client groups and that can be updated within an arbitrary number of time intervals.
The clients' protocols will contain the log entries for successful and failed update attempts.

Odds and Ends

A lot of smaller changes made it into the latest m23 version:


The software included with m23 has been updated: for the m23 web interface, the phpLDAPadmin version is now at 1.2.3/git and phpMyAdmin is at 4.6.6. The Linux kernel for the network boot images and ISO files for m23 clients and server is now available in version 4.9.32.

Convenience improvements

When you are creating package selections, you will now find the name of the last package selection that has been created preset as a name for saving a new one. This is especially useful when you want to edit an already saved package selection. For Debian Stretch and Ubuntu Xenial, m23 now offers package configuration pages where you can set the debconf values for the respective packages. When creating new user accounts via LDAP, the m23 web interface now outputs more detailed error messages (e.g. when the selected password is too short).


The script dem23Client.sh, which cuts off the connection of an m23 client to the m23 server, to enable using the client outside an m23 environment, will now also remove some lines from the sources.list. The routines that detect whether m23 server and client are running within a CloudStack environment should now work more reliably and no longer be tricked by routers that answer arbitrary HTTP requests. The function that resolves library dependencies during the build of boot media now works with a database that is created when CPU architecture and target architecture are identical. When they differ, the database can be loaded and necessary libraries can be included. This will (hopefully) ensure that all dependencies can be detected automatically, which previously required manually adding the necessary libraries when architectures didn't match.

Downloads / Update

The latest version is available as an update via the m23 interface, via APT (Note: package source server for packages specific to m23 is now "deb http://m23inst.goos-habermann.de ./", configure as is described in the installation guide.), as ISO file to create an m23 server installation medium, as preinstalled virtual machine or as image file for RaspberryPi (the latter three are available in the download section).


Chemnitzer Linux-Tage 2017

We are happy to be part of the Chemnitzer Linux-Tagen (21.3. und 22.3.) with an m23 booth for the second time :-)

At our booth, we will demonstrate m23 (live) on virtual machines and will be answering all your questions and be available for technical discussions. So if you always wanted to know why your enterprise / organisation etc. really needs to use m23, visit us at our booth ;-)
If our booth is big enough (tbd), we will also bring our Tux Droid Quiz (Watch video on YouTube: https://www.youtube.com/watch?v=j2TeivPwwGY), which allows you to demonstrate your vast knowledge about Linux, m23 and penguins.
And it may just be that we also bring m23 rock 17.2 (eg. with support for Debian 9) :-)

Don't miss our tombola with t-shirts sponsored by getDigital.

Workshop: Inkscape für Einsteiger


On Saturday, March 11 2017, you can take advantage of participating in Maren's workshop "Inkscape für Einsteiger" (Inkscape for beginners). As there is only a limited number of seats available, you should hurry to reserve yours! ;-) Reservation deadline is on March, 8th 2017.
Further info (room, needed previous knowledge etc.) and the reservation form can be found at Inkscape für Einsteiger.

Have fun - and hope to see you soon in Chemnitz!