The new version of m23 rock 12.4 comes with an IP manager for computers and devices (e.g. network printers) which are not m23 clients. m23 can now also install and administer m23 clients in subnets that are not in the subnet of the m23 server. Apart from these obvious changes, there are also some developments 'under the hood'. For example, I have started to write the object-oriented m23 API 2 that will replace the old API in the long term. We have developed a script (hwptool) for the m23 hardware certification, which identifies the components of the systems that shall be certified and conducts several tests. And of course, as always, there are also several other smaller and bigger changes and novelties ;-).
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.
For the support of subnetworks, the format of the dhcpd.conf file, which contains the client settings of the DHCP server, had to be adjusted. When the m23 server is updated, the format will be converted automatically. To make a network boot and the further administration in subnetworks possible, there has to be a DHCP relay on the routers, which hands over the DHCP requests of the m23 clients to the m23 server and passes the server's answers on to the m23 client.
The m23 API 2 currently includes the classes
CClient for the administration of specific m23 clients and their properties,
CClientLister for the retrieval of all m23 clients and the search for these,
CIPRanges for the treatment and blocking of IP ranges and the two basic classes
CMessageManager for the collection and outputting of info-, warning- and error messages and
CChecks for the validity check of entries. The functions of the m23 API 2 are already introduced in parallel to the old API in m23. This is accomplished, for example, in the IP management and in the clients' overview.
To be able to ensure a "constant quality" for the m23 hardware certification and to avoid working through all points manually, there is now the hwptool which conducts hardware tests completely automatically or semi-automatically. For example, all USB ports, optical drives, graphic cards or the hard disk are tested for proper functioning. Aside from the basic tests, there are also load tests, which shall determine if the system remains stable when CPU, graphic card, RAM, network and hard disk accesses are working under full capacity.
There have also been introduced several smaller novelties: The complete real time protocol can now be displayed in a new window or be downloaded. m23 clients can now not only be fully reset, but it is also possible to re-execute all client jobs ever assigned to those clients or to reset the status of the jobs to the status they had directly after the client was added to m23. Because of the linear execution of the PHP scripts, it has not been possible (or only with great effort) to position boxes for error or info messages at will in the m23 interface. The new function
HTML_manipulateOutputBuffer makes it possible to manipulate the output buffer afterwards, to embed error or info messages in the upper regions of the m23 interface. There is now an additional partitioning scheme which sets a size for the swap partition between 2 GB and 4 GB. In the control center short tooltips appear when the mouse pointer hovers over an icon for a longer time. The dialog for the partitioning and formatting now also uses jQuery for the opening and closing of the menu and saves the position on the page so you could almost believe that m23 is a locally installed program. And last but not least: Software RAIDs can now also be deleted from the m23 interface.
Of course, there are also some bugfixes ;-). One of those allows to change the MAC address and the package proxy settings of a client without getting an alarm from the variable firewall. The script m23-xorg-configurator.conf for the setup of Xorg now also works on Ubuntu 12.04 in all tested scenarios by stopping instantly when Xorg is found in version 1.11.3 or higher. In this case no xorg.conf is written, which wasn't necessary on the tested systems. In Ubuntu, the necessary "locales" should now be created. The grub installation routine was extended by a function which ensures the installation of grub in case of an error. Packages for Debian and Ubuntu will now be searched for all architectures which are indicated in the package sources list. Even if all packages of a distribution are available for all supported architectures, it can happen that in a local package source only packages with an architecture different from that of the m23 server are available. In the previous m23 versions, these packages could not be found in the m23 interface. The outdated syntax of several m23 functions concerning the transfer of reference variables was adjusted.
The latest version is available as an update from the m23 interface, via APT, as ISO file to burn the m23 server installation CD or as a preinstalled virtual machine (the last two can be found in the Download section).