Systemd 259 RC1 Previews SysV Script Removal

Systemd 259 RC1 previews the removal of SysV init script support and introduces major compatibility changes ahead of the v260 transition.

Systemd 259 is just around the corner, and the recently released RC1 gives us a clear look at what to expect in the final version of this Linux’s most widely used init system and service manager.

One of the most significant steps is the final deprecation of System V init script support. The SysV generators, rc-local generator, and sysv-install helpers are all marked for removal in the next 260 version, with maintainers urging distributions and software authors to provide native unit files.

A notable behavioral change appears in the default journal configuration. Systemd now defaults to persistent storage rather than switching automatically based on the presence of /var/log/journal.

Memory accounting also evolves: the cgroup2 filesystem is mounted with HugeTLB usage tracking enabled, requiring at least kernel 6.6. In networking, systemd-networkd and systemd-nspawn drop iptables and libiptc-based NAT creation entirely, with nftables becoming the only supported backend.

At the same time, systemd-networkd adds DHCP lease domain configuration options, hostname fields for static leases, a Describe() method for interface properties, and a resolve hook enabling local name resolution for attached containers and VMs.

Systemd-resolved gains a Varlink DumpDNSConfiguration() method and support for local resolve hooks via sockets placed in /run/systemd/resolve.hook, allowing privileged services to influence name resolution results.

Moreover, systemd-boot and systemd-stub remove TPM 1.2 support, retaining only TPM 2.0. Security policy around firmware-accessible partitions tightens, as XBOOTLDR partitions must now use VFAT when automatically dissected, matching requirements already applied to ESP.

Across the codebase, many shared library dependencies move to dlopen() to reduce mandatory runtime requirements, and libcap is removed entirely in favor of internal implementations. Systemd-importd switches tar handling fully to libarchive and now supports per-user instances.

Additional updates include parallel module loading in systemd-modules-load, new cryptographic options in systemd-integrity-setup, expanded mountfsd capabilities, a short -W flag for journalctl, and new userdb UUID lookups.

For more information on all the changes, see here.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Leave a Reply

Your email address will not be published. Required fields are marked *