systemd 254-rc1 Deprecates SysV Scripts, Adds Soft Reboots & systemd-battery-check

Written by Michael Larabel in systemd on 6 July 2023 at 05:11 PM EDT. 55 Comments
SYSTEMD
Out today is the first release candidate of systemd 254. This systemd update is another big feature release with new settings, new components, and many additions to existing systemd components. Plus there is some deprecations and breakage ahead for future releases.

Before getting to new features, there is some deprecation/breakages planned moving forward. The plan for systemd 255 is to remove support for unmerged /usr systems. This shouldn't impact at least any prominent Linux distributions as those using systemd have already moved to a merged-usr system layout. Also the systemd developers plan to remove cgroup v1 support after the end of 2023. Thus moving forward make sure you have cgroups v2 compatibility. Systemd has also deprecated support for System-V service scripts and will be removed in a future release. All software moving forward should have native systemd unit files rather than legacy System V scripts.

systemd logo


Moving onto the new features and improvements coming for systemd 254, they include:

- A new "soft-reboot" mechanism has been added to the systemd service manager. A soft reboot is similar to a regular reboot but that it affects user-space only. Initiating a systemd soft reboot will shutdown any running services and other units and then optionally switch to any new root file-system and then bring back up all the user-space services without rebooting the kernel.

- Startup memory settings are now supported.

- systemctl list-paths is now an option top show all currently active .path units.

- PID 1 will automatically load the virtio_console kernel module during early initialization if running in a relevant virtual machine. The virtio-vsock module will also be similarly loaded where relevant.

- The systemctl clean command can be used to clear the FDSTORE of a service.

- A new "MemoryKSM" service setting to enable kernel same-page merging individually for services.

- systemd-stub now allows optionally loading UEFI PE add-on images that may contain additional kernel command-line information. Ukify has also been extended to allow building UEFI PE add-on images.

- The systemd kernel-install script has been rewritten in C.

- Service units gained MemoryPressureWatch= and MemoryPressureThresholdSec= options to configure the PSI memory pressure logic individually.

- A new "systemd-battery-check" command that is run during the early boot phase and checks the battery level of the system if available. This is used to warn the user then via the Plymouth splash screen integration for example if the battery level is very low and to then turn off the system after a 10 second delay.

There is a whole lot more with systemd 254 too with numerous smaller features and fixes. More details and to download the systemd 254-rc1 sources via GitHub.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week