A stable release of SKUF 25 (Suckless Kexec Using Fileshare) is available, a toolkit for diskless network booting of Arch Linux from a SAMBA network storage without using PXE. The project is based on mkinitcpio and allows you to set up an environment for booting the Arch Linux distribution using sparse root images with a file system (e.g., ext4) located on the SAMBA server. The boot process occurs in two stages: in the first stage, the user is given the opportunity to change the SAMBA/ root FS mounting parameters, and in the second stage, a new kernel is booted using kexec. For obtaining an IP address dhcpcd is used in both stages.
Meanwhile, the project's repository is developing the update_remote_systems script, which allows for sequentially updating multiple Arch Linux systems.

The toolkit can be useful for use in educational institutions or other enterprises where, for example, there is already an occupied DHCP/PXE server or where an agreement with the system administrator cannot be reached, but access to server SAMBA exists. In the latter case, a student can set up the environment for launching independently without configuring the server side. A USB Flash drive or CD/DVD with a minimum size of 150 MB (or, in the case of using EFI — a FAT32 partition with the kernel and its own initramfs) is used for booting.
In addition to the absence of the need to set up a DHCP/PXE server, another useful feature can be kexec, which allows loading a new OS kernel 'hot', without physically rebooting the hardware. This allows different kernels to be used on the client machine without worrying about modifying the bootloader configuration in the case of the traditional PXE method.
Other features:
- Support for graphical boot screens using Plymouth.
- Support for mounting swap files over the network.
- Support for booting the system using a wireless Bluetooth keyboard on Macintosh computers.
Changes in SKUF 25:
- No extra block device drivers are added to the generated initramfs.
- The '--console-vga' option is no longer used when booting a new kernel, which may help with debugging using the console.
- The busybox package is built with the 'KCONFIG_NOTIMESTAMP=1' parameter, which allows for the building of reproducible binary files.
- The script "update_remote_systems.sh" has been introduced, allowing for the sequential update of multiple Arch Linux systems. Features include a shared package cache storage (which prevents downloading the same package multiple times for different systems), generating update reports in CSV format, supporting the installation of third-party packages, and a tmux mode for monitoring the update status in a graphical interface.
- Code formatting has been improved and minor bugs have been fixed.
Source: opennet.ru
