{{Short description|Suite of system components for Linux}} {{Lowercase title}} {{Other uses|System D (disambiguation)}} {{distinguish|System D|Systeme D}} {{Use dmy dates|date=November 2021}} {{Infobox software | name = systemd | logo = Systemd-logo.svg | logo_size = 200px | logo alt = systemd logo, showing green circle and reverse symbol enclosed by bracket | screenshot = Systemd-on-fedora.svg | screenshot alt = systemd on Fedora 17 showing multiple component startups | caption = systemd startup on Fedora 17 | author = Lennart Poettering<ref name="The New Stack">{{cite web|title=Lennart Poettering on systemd's Tumultuous Ascendancy|date=26 January 2017|url=https://thenewstack.io/unix-greatest-inspiration-behind-systemd/|access-date=7 November 2018|archive-date=8 November 2018|archive-url=https://web.archive.org/web/20181108025744/https://thenewstack.io/unix-greatest-inspiration-behind-systemd/|url-status=live}}</ref> | developer = systemd team;<ref name=README /> 345 different authors in 2018<ref>{{cite web |title=Systemd Hits A High Point For Number Of New Commits & Contributors During 2018 - Phoronix |url=https://www.phoronix.com/scan.php?page=news_item&px=Systemd-EOY2018-Stats |access-date=30 December 2018 |archive-date=21 September 2009 |archive-url=https://web.archive.org/web/20090921053923/https://www.phoronix.com/scan.php?page=news_item&px=Systemd-EOY2018-Stats |url-status=live }}</ref> and 2,032 different authors in total <ref>Used the "contributors" statistic from: {{Citation |title=systemd/systemd |date=2023-12-03 |url=https://github.com/systemd/systemd |access-date=2023-12-03 |publisher=systemd}}</ref> | released = {{Start date and age|2010|03|30|df=yes}} | latest release version = {{wikidata|property|preferred|references|edit|Q286124|P348|P548=Q2804309}} | latest release date = {{wikidata|qualifier|preferred|single|Q286124|P348|P548=Q2804309|P577}} | programming language = C | operating system = Linux | platform = | language = | genre = {{ubl|System software|Process supervisor|Service manager}} | license = LGPLv2.1+<ref name="license" /> | website = {{URL|https://systemd.io|systemd.io}} }}
'''systemd''' is a software suite for system and service management on Linux<ref>{{cite web |url=https://0pointer.de/blog/projects/systemd.html |title=Rethinking PID 1 |date=30 April 2010 |quote=systemd uses many Linux-specific features, and does not limit itself to POSIX. That unlocks a lot of functionality a system that is designed for portability to other operating systems cannot provide. |access-date=20 August 2021 |archive-date=22 February 2022 |archive-url=https://web.archive.org/web/20220222121824/https://0pointer.de/blog/projects/systemd.html |url-status=live }}</ref> built to unify service configuration and behavior across Linux distributions.<ref>{{cite web |url=https://www.freedesktop.org/wiki/Software/systemd/InterfaceStabilityPromise/ |title=InterfaceStabilityPromise |website=FreeDesktop.org |access-date=14 February 2018 |archive-date=11 December 2017 |archive-url=https://web.archive.org/web/20171211164006/https://www.freedesktop.org/wiki/Software/systemd/InterfaceStabilityPromise/ |url-status=live }}</ref> Its main component is an init system used to bootstrap user space and manage user processes. It also provides various daemons and utilities, including device management, login management, network connection management, and event logging. The name ''systemd'' adheres to the Unix convention of naming daemons by appending the letter ''d,''<ref>{{cite web |url=https://www.freedesktop.org/wiki/Software/systemd/ |title=systemd System and Service Manager |website=freedesktop.org |quote=Yes, it is written systemd, not system D or System D, or even SystemD. And it isn't system d either. Why? Because it's a system daemon, and under Unix/Linux those are in lower case, and get suffixed with a lower case d. |access-date=19 March 2016 |archive-date=15 October 2020 |archive-url=https://web.archive.org/web/20201015072536/https://www.freedesktop.org/wiki/Software/systemd/ |url-status=live }}</ref> and also plays on the French phrase ''Système D'' (a person's ability to quickly adapt and improvise in the face of problems).<ref name="control-center" />
In Linux distributions, systemd is used as a replacement for Sysvinit and other init systems. Since 2015, nearly all Linux distributions have adopted systemd. It has been praised by developers and users of distributions that adopted it for providing a stable, fast out-of-the-box solution for issues that had existed in the Linux space for years.<ref>{{Cite web |title=Debate/initsystem/systemd - Debian Wiki |url=https://wiki.debian.org/Debate/initsystem/systemd |access-date=2021-11-15 |website=wiki.debian.org |archive-date=7 December 2014 |archive-url=https://web.archive.org/web/20141207202128/https://wiki.debian.org/Debate/initsystem/systemd |url-status=live }}</ref><ref>{{Cite web |title=F15 one page release notes - Fedora Project Wiki |url=https://fedoraproject.org/wiki/F15_one_page_release_notes |access-date=2021-11-15 |website=fedoraproject.org |archive-date=27 September 2013 |archive-url=https://web.archive.org/web/20130927100737/https://fedoraproject.org/wiki/F15_one_page_release_notes |url-status=live }}</ref><ref name="arch-migration-to-systemd">{{Cite mailing list |last=Gaudreault |first=Stéphane |date=14 August 2012 |mailing-list=arch-dev-public |title=Migration to systemd |url=https://lists.archlinux.org/pipermail/arch-dev-public/2012-August/023389.html |access-date=2021-11-15 |archive-date=20 October 2020 |archive-url=https://web.archive.org/web/20201020112140/https://lists.archlinux.org/pipermail/arch-dev-public/2012-August/023389.html |url-status=live }}</ref> At the time of its adoption, it was the only parallel boot and init system offering centralized management of processes, daemons, services, and mount points.{{Citation needed|reason=Timeline should be compared with Launchd, OpenRC and possibly others.|date=October 2025}}.
Critics of systemd contend it suffers from feature creep and has damaged interoperability across Unix-like operating systems (as it does not run on non-Linux Unix derivatives like BSD or Solaris). In addition, they contend systemd's large feature set creates a larger attack surface.<ref>{{cite web |url=https://www.cvedetails.com/vulnerability-list/vendor_id-7971/product_id-38088/Freedesktop-Systemd.html |title=Freedesktop Systemd : List of security vulnerabilities |publisher=CVE Details |access-date=3 October 2021 |archive-date=3 October 2021 |archive-url=https://web.archive.org/web/20211003194619/https://www.cvedetails.com/vulnerability-list/vendor_id-7971/product_id-38088/Freedesktop-Systemd.html |url-status=live }}</ref> This has led to the development of several minor Linux distributions replacing systemd with other init systems like SysVinit or OpenRC.<ref>{{Cite web |last=McKay |first=Dave |date=2021-02-24 |title=The Best Linux Distributions Without systemd |url=https://www.howtogeek.com/713847/the-best-linux-distributions-without-systemd/ |access-date=2024-12-07 |website=How-To Geek |language=en}}</ref>
== History == Lennart Poettering and Kay Sievers, the software engineers then working for Red Hat who initially developed systemd,<ref name="README" /> started a project to replace Linux's conventional System V init in 2010.<ref> {{cite book | last1 = Simmonds | first1 = Chris | chapter = 9: Starting up - the init Program | title = Mastering Embedded Linux Programming | url = https://books.google.com/books?id=_h_lCwAAQBAJ | publisher = Packt Publishing Ltd | date = 2015 | page = 239 | isbn = 9781784399023 | access-date = 20 June 2016 | quote = systemd defines itself as a system and service manager. The project was initiated in 2010 by Lennart Poettering and Kay Sievers to create an integrated set of tools for managing a Linux system including an init daemon. }} </ref> An April 2010 blog post from Poettering, titled "Rethinking PID 1", introduced an experimental version of what would later become systemd.<ref>{{cite web|url=http://0pointer.de/blog/projects/systemd.html|title=Rethinking PID 1|author=Lennart Poettering|date=30 April 2010|access-date=28 August 2010|archive-date=15 January 2017|archive-url=https://web.archive.org/web/20170115175026/http://0pointer.de/blog/projects/systemd.html|url-status=live}}</ref> They sought to surpass the efficiency of the init daemon in several ways. They wanted to improve the software framework for expressing dependencies, to allow more processes to run concurrently or in parallel during system booting, and to reduce the computational overhead of the shell.
In May 2011, Fedora Linux became the first major Linux distribution to enable systemd by default, replacing Upstart. The reasoning at the time was that systemd provided extensive parallelization during startup, better management of processes and overall a saner, dependency-based approach to control of the system.<ref name="fedora-systemd" />
In October 2012, Arch Linux made systemd the default, switching from SysVinit.<ref>{{Cite web|title=Arch Linux - News: systemd is now the default on new installations|url=https://archlinux.org/news/systemd-is-now-the-default-on-new-installations/|access-date=11 November 2021|website=archlinux.org|archive-date=27 October 2021|archive-url=https://web.archive.org/web/20211027153620/https://archlinux.org/news/systemd-is-now-the-default-on-new-installations/|url-status=live}}</ref> Developers had debated since August 2012<ref name="arch-migration-to-systemd" /> and concluded it was faster and had more features than SysVinit and that maintaining SysVinit was not worth the effort.<ref>{{Cite mailing list|last=Groot|first=Jan de|date=14 August 2012|mailing-list=arch-dev-public|title=Migration to systemd|url=https://lists.archlinux.org/pipermail/arch-dev-public/2012-August/023392.html|access-date=11 November 2021|archive-date=17 January 2022|archive-url=https://web.archive.org/web/20220117105821/https://lists.archlinux.org/pipermail/arch-dev-public/2012-August/023392.html|url-status=live}}</ref> Some thought the criticism of systemd was not based on actual shortcomings of the software but rather personal dislike of Poettering and a general opposition to change. Several complaints about systemd—including its use of D-bus, C instead of bash, and an optional on-disk journal format—were instead described as advantages by the Arch maintainers.<ref>{{Cite web|title=Archlinux is moving to systemd (Page 2) / Arch Discussion / Arch Linux Forums|url=https://bbs.archlinux.org/viewtopic.php?pid=1149530#p1149530|access-date=2021-11-19|website=bbs.archlinux.org|archive-date=10 November 2012|archive-url=https://web.archive.org/web/20121110213749/https://bbs.archlinux.org/viewtopic.php?pid=1149530#p1149530|url-status=live}}</ref>
Between 2013 and 2014, the Debian Technical Committee engaged in a widely publicized debate on the mailing list about which init system to use as the default in Debian 8 before settling on systemd.<ref name="lwn-20131105" /><ref name="phoronix-20131230" /><ref name="debian-bug" /> Soon after, Debian developer Joey Hess,<ref name="hess-resignation" /> Technical Committee members Russ Allbery<ref name="allbery-resignation" /> and Ian Jackson,<ref name="jackson-resignation" /> and systemd package maintainer Tollef Fog Heen<ref name="heen-resignation" /> resigned from their positions, citing the extraordinary levels of stress caused by disputes on systemd integration within the Debian and FOSS community that rendered regular maintenance virtually impossible. Mark Shuttleworth announced soon afterwards that the Debian-based Ubuntu would use systemd to replace its old Upstart init system.<ref name="Shuttleworth" /><ref name="quantal" />
In August 2015, systemd started providing a login shell, callable via '''{{kbd|machinectl shell}}'''.<ref>{{cite web|url= https://tlhp.cf/lennart-poettering-su/|title= Lennart Poettering merged 'su' command replacement into systemd: Test Drive on Fedora Rawhide|date= 28 August 2015|last= Carroty|first= Paul|url-status= dead|archive-url= https://web.archive.org/web/20150904232722/https://tlhp.cf/lennart-poettering-su/|archive-date= 4 September 2015}}</ref>
In September 2016, a security bug was discovered that allowed any unprivileged user to perform a denial-of-service attack against systemd.<ref>{{cite web|url=https://github.com/systemd/systemd/issues/4234|title=Assertion failure when PID 1 receives a zero-length message over notify socket #4234|website=GitHub|date=28 September 2016|access-date=6 October 2016|archive-date=5 October 2016|archive-url=https://web.archive.org/web/20161005103508/https://github.com/systemd/systemd/issues/4234|url-status=live}}</ref> Rich Felker, developer of musl, stated that this bug reveals a major "system development design flaw".<ref>{{cite web|url=https://threatpost.com/hack-crashes-linux-distros-with-48-characters-of-code/121052/|title=Hack Crashes Linux Distros with 48 Characters of Code|publisher=Kaspersky Lab|date=3 October 2016|last=Felker|first=Rich|access-date=6 October 2016|archive-date=6 October 2016|archive-url=https://web.archive.org/web/20161006115718/https://threatpost.com/hack-crashes-linux-distros-with-48-characters-of-code/121052/|url-status=live}}</ref> In 2017 another security bug was discovered in systemd-resolved, {{CVE|2017-9445}}, which "allows disruption of service" by a "malicious DNS server".<ref>{{Citation |website = National Vulnerability Database |institution = National Institute of Standards and Technology (U.S.) |title = CVE-2017-9445 Details |url = https://nvd.nist.gov/vuln/detail/CVE-2017-9445 |date = 6 July 2017 |access-date = 6 July 2018 |archive-date = 6 July 2018 |archive-url = https://web.archive.org/web/20180706075415/https://nvd.nist.gov/vuln/detail/CVE-2017-9445 |url-status = live }}</ref><ref>{{Citation |website = The Common Vulnerabilities and Exposures database |date = 5 June 2017 |institution = The Mitre Corporation |title = CVE-2017-9445 |url = https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9445 |access-date = 6 July 2018 |archive-date = 6 July 2018 |archive-url = https://web.archive.org/web/20180706075607/https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9445 |url-status = live }}</ref> Later in 2017, the Pwnie Awards gave author Lennart Poettering a "lamest vendor response" award due to his handling of the vulnerabilities.<ref>{{cite web|title=Pwnie Awards 2017, Lamest Vendor Response: SystemD bugs|url=https://pwnies.com/systemd-bugs/|website=Pwnie Awards|access-date=10 June 2021|ref=lamestvendor|archive-date=10 June 2021|archive-url=https://web.archive.org/web/20210610074913/https://pwnies.com/systemd-bugs/|url-status=live}}</ref>
== Design == [[File:Systemd components.svg|thumb|upright=2|The architecture of systemd as it is used by Tizen. Several systemd targets, including <code>telephony</code>, <code>bootmode</code>, <code>dlog</code>, and <code>tizen service</code> are from Tizen and are not components of systemd.<ref name="Gundersen2014" />]] [[File:Linux kernel unified hierarchy cgroups and systemd.svg|thumb|upright=2|Unified-hierarchy cgroups will be accessible exclusively by systemd through <code>systemd-nspawn</code>.<ref>{{cite web |date=28 August 2015 |title=The New Control Group Interfaces |url=https://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/ |url-status=live |archive-url=https://web.archive.org/web/20160201072736/http://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/ |archive-date=1 February 2016 |access-date=6 February 2016 |publisher=Freedesktop.org}}</ref>]]
Poettering describes systemd development as "never finished, never complete, but tracking progress of technology". In May 2014, Poettering further described systemd as unifying "pointless differences between distributions", by providing the following three general functions:<ref name="gnome_asia_2014" />
* A system and service manager (manages both the system, by applying various configurations, and its services) * A software platform (serves as a basis for developing other software) * The glue between applications and the kernel (provides various interfaces that expose functionalities provided by the kernel)
{{Mono|systemd}} includes features like on-demand starting of daemons, snapshot support, process tracking<ref>{{cite web|url=https://www.linode.com/docs/quick-answers/linux-essentials/what-is-systemd/|title=What is systemd?|date=11 September 2019|website=Linode|access-date=15 September 2019|archive-date=24 January 2020|archive-url=https://web.archive.org/web/20200124190104/https://www.linode.com/docs/quick-answers/linux-essentials/what-is-systemd/|url-status=live}}</ref> and Inhibitor Locks.<ref>{{cite web|url=https://www.freedesktop.org/wiki/Software/systemd/inhibit/|title=Inhibitor Locks|website=freedesktop.org|access-date=15 September 2019|archive-date=3 May 2020|archive-url=https://web.archive.org/web/20200503183448/https://www.freedesktop.org/wiki/Software/systemd/inhibit/|url-status=live}}</ref> It is not just the name of the init daemon but also refers to the entire software bundle around it, which, in addition to the {{Mono|systemd}} init daemon, includes the daemons {{Mono|journald}}, {{Mono|logind}} and {{Mono|networkd}}, and many other low-level components. In January 2013, Poettering described systemd not as one program, but rather a large software suite that includes 69 individual binaries.<ref name="biggest_myths" /> As an integrated software suite, systemd replaces the startup sequences and runlevels controlled by the traditional init daemon, along with the shell scripts executed under its control. systemd also integrates many other services that are common on Linux systems by handling user logins, the system console, device hotplugging (see udev), scheduled execution (replacing cron), logging, hostnames and locales.
Like the init daemon, {{Mono|systemd}} is a daemon that manages other daemons, which, including {{Mono|systemd}} itself, are background processes. {{Mono|systemd}} is the first daemon to start during booting and the last daemon to terminate during shutdown. The {{Mono|systemd}} daemon serves as the root of the user space's process tree; the first process (PID 1) has a special role on Unix systems, as it replaces the parent of a process when the original parent terminates. Therefore, the first process is particularly well suited for the purpose of monitoring daemons.
{{Mono|systemd}} executes elements of its startup sequence in parallel, which is theoretically faster than the traditional startup sequence approach.<ref name="debian-debate" /> For inter-process communication (IPC), {{Mono|systemd}} makes Unix domain sockets and D-Bus available to the running daemons. The state of {{Mono|systemd}} itself can also be preserved in a snapshot for future recall.
=== Core components and libraries === Following its integrated approach, systemd also provides replacements for various daemons and utilities, including the startup shell scripts, pm-utils, inetd, {{Mono|acpid}}, syslog, watchdog, cron and {{Mono|atd}}. systemd's core components include:
* {{Mono|systemd}} is a system and service manager for Linux operating systems. * {{Mono|systemctl}} is a command to introspect and control the state of the systemd system and service manager. Not to be confused with sysctl. * {{Mono|systemd-analyze}} may be used to determine system boot-up performance statistics and retrieve other state and tracing information from the system and service manager.
{{Anchor|NSPAWN|MACHINECTL}} {{Mono|systemd}} tracks processes using the Linux kernel's cgroups subsystem instead of using process identifiers (PIDs); thus, daemons cannot "escape" {{Mono|systemd}}, not even by double-forking. {{Mono|systemd}} not only uses cgroups, but also augments them with {{Mono|systemd-nspawn}} and {{Mono|machinectl}}, two utility programs that facilitate the creation and management of Linux containers.<ref name="lwn-20131107" /> Since version 205, systemd also offers ControlGroupInterface, which is an API to the Linux kernel cgroups.<ref name="systemd-controller" /> The Linux kernel cgroups are adapted to support kernfs,<ref name="lkml-20140128" /> and are being modified to support a unified hierarchy.<ref name="lkml-20140313" />
===<span id="hostnamed"></span><span id="localed"></span><span id="machined"></span><span id="resolved"></span><span id="shutdownd"></span><span id="timesyncd"></span>Ancillary components=== Beside its primary purpose of providing a Linux init system, the systemd suite can provide additional functionality, including the following components: <!-- Further expansions should include descriptions of hostnamed, localed, machined, resolved, shutdownd, and timesyncd. -->thumb|A screenshot of {{mono|systemd-boot}} thumb|A screenshot of {{Mono|timedatectl}} ; {{Mono|{{Vanchor|journald}}}} : {{Mono|systemd-journald}} is a daemon responsible for event logging, with append-only binary files serving as its logfiles. The system administrator may choose whether to log system events with {{Mono|systemd-journald}}, {{Mono|syslog-ng}} or {{Mono|rsyslog}}. ; {{Mono|{{Vanchor|libudev}}}} : {{Mono|libudev}} is the standard library for utilizing udev, which allows third-party applications to query udev resources. ; {{Mono|{{Vanchor|localed}}}} : {{Mono|localed}} manages the system locale and keyboard layout. ; {{Anchor|CK}}{{Mono|{{Vanchor|logind}}}} : {{Mono|systemd-logind}} is a daemon that manages user logins and seats in various ways. It is an integrated login manager that offers multiseat improvements<ref name="logind-service" /> and replaces ''ConsoleKit'', which is no longer maintained.<ref name="consolekit" /> For X11 display managers the switch to {{Mono|logind}} requires a minimal amount of porting.<ref name="display-managers" /> It was integrated in systemd version 30. ; {{Mono|{{Vanchor|hostnamed}}}} : {{Mono|hostnamed}} manages the system hostname. ; {{Mono|{{Vanchor|homed}}}} : {{Mono|homed}} is a daemon that provides portable human-user accounts that are independent of current system configuration. {{Mono|homed}} moves various pieces of data such as UID/GID from various places across the filesystem into one file, {{Code|~/.identity}}. {{Mono|homed}} manages the user's home directory in various ways such as a plain directory, a btrfs subvolume, a Linux Unified Key Setup volume, an fscrypt directory, or mounted from an SMB server. ; {{Mono|{{Vanchor|networkd}}}} : {{Mono|networkd}} is a daemon to handle the configuration of the network interfaces; in version 209, when it was first integrated, support was limited to statically assigned addresses and basic support for bridging configuration.<ref name="systemd-1" /><ref name="systemd-2" /><ref name="systemd-3" /><ref name="systemd-4" /><ref name="systemd-5" /> In July 2014, systemd version 215 was released, adding new features such as a DHCP server for IPv4 hosts, and VXLAN support.<ref name="phoronix-20140704" /><ref>{{cite web|url=https://archive.fosdem.org/2013/schedule/event/dist_network/|title=Can Linux network configuration suck less?|last=Šimerda|first=Pavel|date=3 February 2013}}</ref> <code>networkctl</code> may be used to review the state of the network links as seen by systemd-networkd.<ref>{{man|1|networkctl|Linux}}</ref> Configuration of new interfaces has to be added under the /lib/systemd/network/ as a new file ending with .network extension. ; {{Mono|{{Vanchor|resolved}}}}: provides network name resolution to local applications ; {{Mono|{{Vanchor|systemd-boot}}}} : {{Mono|systemd-boot}} is a boot manager, formerly known as gummiboot. Kay Sievers merged it into systemd with rev 220. ; {{Mono|{{Vanchor|systemd-bsod}}}} : {{Mono|systemd-bsod}} is an error reporter used to generate Blue Screen of Death. ; {{Mono|{{Vanchor|systemd-nspawn}}}} : {{Mono|systemd-nspawn}} may be used to run a command or OS in a namespace container. ; {{Mono|{{Vanchor|timedated}}}} : {{Mono|systemd-timedated}} is a daemon that can be used to control time-related settings, such as the system time, system time zone, or selection between UTC and local time-zone system clock. It is accessible through D-Bus.<ref name="timedated" /> It was integrated in systemd version 30. ; {{Mono|{{Vanchor|timesyncd}}}}: {{Mono|timesyncd}} is a client NTP daemon for synchronizing the system clock across the network. ; {{Mono|{{Vanchor|tmpfiles}}}} : {{Mono|systemd-tmpfiles}} is a utility that takes care of creation and clean-up of temporary files and directories. It is normally run once at startup and then in specified intervals. ; {{Mono|{{Vanchor|udevd}}}} : udev is a device manager for the Linux kernel, which handles the {{Mono|/dev}} directory and all user space actions when adding/removing devices, including firmware loading. In April 2012, the source tree for udev was merged into the systemd source tree.<ref name="sievers-20120403" /><ref name="sievers-20120525" /> In order to match the version number of udev, systemd maintainers bumped the version number directly from 44 to 183.<ref>{{Cite web |last=Proven |first=Liam |title=Version 252 of systemd released |url=https://www.theregister.com/2022/11/03/version_252_systemd/ |access-date=2022-11-05 |website=The Register |language=en |archive-date=5 November 2022 |archive-url=https://web.archive.org/web/20221105115046/https://www.theregister.com/2022/11/03/version_252_systemd/ |url-status=live }}</ref> : On 29 May 2014, support for firmware loading through udev was dropped from systemd, as it was decided that the kernel should be responsible for loading firmware.<ref>{{cite mailing list |url=http://lists.freedesktop.org/archives/systemd-devel/2014-May/019587.html |mailing-list=systemd-devel |title=[PATCH] Drop the udev firmware loader |date=29 May 2014 |access-date=16 June 2019 |archive-date=14 August 2020 |archive-url=https://web.archive.org/web/20200814031829/https://lists.freedesktop.org/archives/systemd-devel/2014-May/019587.html |url-status=live }}</ref>
=== Configuration of systemd === thumb|systemd-manager, a tool to configure systemd|alt= {{Mono|systemd}} is configured exclusively via plain-text files although GUI tools such as systemd-manager are also available.
{{Mono|systemd}} records initialization instructions for each daemon in a configuration file (referred to as a "unit file") that uses a declarative language, replacing the traditionally used per-daemon startup shell scripts. The syntax of the language is inspired by {{Mono|.ini}} files.<ref>{{Cite web|title=systemd.syntax|url=https://www.freedesktop.org/software/systemd/man/systemd.syntax.html|access-date=27 July 2021|website=www.freedesktop.org|archive-date=27 July 2021|archive-url=https://web.archive.org/web/20210727135450/https://www.freedesktop.org/software/systemd/man/systemd.syntax.html|url-status=live}}</ref>{{example needed|date=February 2026}}
Unit-file types<ref name="unitfiles" /> include:
* {{Mono|.service}} * {{Mono|.socket}} * {{Mono|.device}} (automatically initiated by systemd<ref>{{Cite web|title=systemd.device|url=https://www.freedesktop.org/software/systemd/man/systemd.device.html|access-date=27 July 2021|website=www.freedesktop.org|archive-date=27 July 2021|archive-url=https://web.archive.org/web/20210727135454/https://www.freedesktop.org/software/systemd/man/systemd.device.html|url-status=live}}</ref>) * {{Mono|.mount}} * {{Mono|.automount}} * {{Mono|.swap}} * {{Mono|.target}} * {{Mono|.path}} * {{Mono|.timer}} (which can be used as a cron-like job scheduler<ref name="phoronix-20130128" />) * {{Mono|.snapshot}} * {{Mono|.slice}} (used to group and manage processes and resources<ref>{{cite web |url= https://www.systutorials.com/docs/linux/man/5-systemd.slice/ |title= systemd.slice (5) - Linux Man Pages |access-date= 12 March 2018 |quote= ... a slice ... is a concept for hierarchically managing resources of a group of processes. |archive-date= 19 February 2023 |archive-url= https://web.archive.org/web/20230219165506/https://www.systutorials.com/docs/linux/man/5-systemd.slice/ |url-status= live }}</ref>) * {{Mono|.scope}} (used to group worker processes, not intended to be configured via unit files<ref>{{Cite web|title=systemd.scope|url=https://www.freedesktop.org/software/systemd/man/systemd.scope.html|access-date=27 July 2021|website=FreeDesktop.org|archive-date=27 July 2021|archive-url=https://web.archive.org/web/20210727135450/https://www.freedesktop.org/software/systemd/man/systemd.scope.html|url-status=live}}</ref>)
== Adoption == <!-- TODO: permute fourth and fifth columns; "runs without" is meaningless if "enabled by default" is false --> {| class="wikitable sortable" style="margin-left: auto; margin-right: auto;" |- ! scope="col" | Linux distribution !! scope="col" | Date added to software repository{{Efn|Dates are for the general availability release.}} !! scope="col" | Enabled by default? !! scope="col" | Date released as default !! scope="col"| Runs without? |- | Alpine Linux | {{n/a|N/A (not in repository)}} | {{No}} | {{N/A|N/A}} | {{Yes}} |- | Android | {{n/a|N/A (not in repository)}} | {{No}} | {{N/A|N/A}} | {{Yes}} |- | Arch Linux | {{dts|January 2012}}<ref name="arch-git" /> | {{Yes}} | {{dts|October 2012}}<ref name="arch-systemd" /> | {{Dropped|Although Arch provides installation instructions for OpenRC and other init systems are available in the AUR, Arch officially supports only systemd.<ref>{{Cite web |title=OpenRC - ArchWiki |url=https://wiki.archlinux.org/title/OpenRC |access-date=2025-07-21 |website=wiki.archlinux.org}}</ref><ref>{{Cite web |title=init - ArchWiki |url=https://wiki.archlinux.org/title/Init |access-date=2025-07-21 |website=wiki.archlinux.org}}</ref>}} |- | antiX Linux | {{n/a|N/A (not in repository)}} | {{No}} | {{N/A|N/A}} | {{Yes}} |- | Artix Linux | {{n/a|N/A (not in repository)}} | {{No}} | {{N/A|N/A}} | {{Yes}} |- | CentOS | {{dts|July 2014}} | {{Yes}} | {{dts|July 2014}} (v7.0) | {{No}} |- | CoreOS | {{dts|July 2013}} | {{Yes}} | {{dts|October 2013}} (v94.0.0)<ref name="coreos-github" /><ref name="coreos-systemd" /> | {{No}} |- | Debian |{{dts|April 2012}}<ref name="debian-systemd" /> | {{Yes}} | {{dts|April 2015}} (v8.0)<ref name="ctte-20140211" /> | {{dropped|Jessie is the last release supporting installing without systemd}}.<ref>{{cite web|title=systemd - system and service manager|at=Installing without systemd|url=https://wiki.debian.org/systemd#Installing_without_systemd|website=Debian Wiki|access-date=3 April 2018|archive-date=4 April 2018|archive-url=https://web.archive.org/web/20180404134733/https://wiki.debian.org/systemd#Installing_without_systemd|url-status=live}}</ref> In [https://www.debian.org/releases/bullseye/amd64/release-notes.en.txt bullseye], a number of alternative init systems are supported |- | Devuan | {{n/a|N/A (not in repository)}} | {{No}} | {{N/A|N/A}} | {{Yes}} |- | Fedora Linux | {{dts|November 2010}} (v14)<ref name="Fedora 14" /> | {{Yes}} | {{dts|May 2011}} (v15) | {{No}} |- | Gentoo Linux{{Efn|systemd is supported in Gentoo as an alternative to OpenRC, the default init system<ref name="gentoo-wiki-systemd" /> for those who "want to use systemd instead, or are planning to use Gnome 3.8 and later (which requires systemd)"<ref name="gentoo-handbook" /> }} | {{dts|July 2011}}<ref name="gentoo-wiki-systemd" /><ref name="gentoo-bugzilla" /><ref name="gentoo-doc" /> | {{Optional}}<ref>{{cite web | url=https://www.gentoo.org/downloads/ | title=Downloads – Gentoo Linux }}</ref> | {{N/A|N/A}} | {{Yes}} |- | GNU Guix System | {{n/a|N/A (not in repository)}} | {{No}} | {{N/A|N/A}} | {{Yes}} |- | Knoppix | {{N/A|N/A}} | {{No}} <ref>{{cite web |url=http://www.knopper.net/knoppix/knoppix742-en.html |title=KNOPPIX 7.4.2 Release Notes |access-date=26 April 2018 |archive-url=https://web.archive.org/web/20180106123143/http://www.knopper.net/knoppix/knoppix742-en.html |archive-date=6 January 2018 |quote=...script-based KNOPPIX system start with sysvinit}}</ref><ref>{{cite web |url=https://www.golem.de/news/live-linux-knoppix-8-0-bringt-moderne-technik-fuer-neue-hardware-1703-126811-3.html |title=KNOPPIX 8.0 Die Antwort auf Systemd (German) |access-date=13 June 2018 |archive-url=https://web.archive.org/web/20180613054903/https://www.golem.de/news/live-linux-knoppix-8-0-bringt-moderne-technik-fuer-neue-hardware-1703-126811-3.html |archive-date=13 June 2018 |quote=...Knoppix 'boot process continues to run via Sys-V init with few bash scripts that start the system services efficiently sequentially or in parallel. (The original German text: Knoppix' Startvorgang läuft nach wie vor per Sys-V-Init mit wenigen Bash-Skripten, welche die Systemdienste effizient sequenziell oder parallel starten.)}}</ref> | {{N/A|N/A}} | {{Yes}} |- | Linux Mint | {{dts|June 2016}} (v18.0) | {{Yes}} | {{dts|August 2018}} (LMDE 3) | {{No}} <ref>{{cite web|url=https://blog.linuxmint.com/?p=2808#comment-116426|title=LM Blog: both Mint 18 and LMDE 3 will switch to systemd.|date=10 April 2015 |access-date=27 November 2021|archive-date=27 November 2021|archive-url=https://web.archive.org/web/20211127223909/https://blog.linuxmint.com/?p=2808#comment-116426|url-status=live}}</ref> |- | Mageia | {{dts|January 2011}} (v1.0)<ref name="mageia1" /> | {{Yes}} | {{dts|May 2012}} (v2.0)<ref name="mageia" /> | {{No}} <ref>{{Cite web|url=https://forums.mageia.org/en/viewtopic.php?f=7&t=11169|title=Mageia forum • View topic - is it possible to replace systemd?|access-date=5 May 2020|archive-date=19 February 2023|archive-url=https://web.archive.org/web/20230219165540/https://forums.mageia.org/en/viewtopic.php?f=7&t=11169|url-status=live}}</ref> |- | Manjaro Linux | {{dts|November 2013}} | {{Yes}} | {{dts|November 2013}} | {{No}} |- | openSUSE | {{dts|March 2011}} (v11.4)<ref name="opensuse" /> | {{Yes}} | {{dts|September 2012}} (v12.2)<ref name="AutoWR-1" /> | {{No}} |- | Parabola GNU/Linux-libre | {{dts|January 2012}}<ref name="arch-git" /> | {{Optional}}<ref name="parabola">{{cite web|url=https://wiki.parabola.nu/Get_Parabola|title=Parabola ISO Download Page|access-date=18 March 2019|archive-date=1 July 2016|archive-url=https://web.archive.org/web/20160701222037/https://wiki.parabola.nu/Get_Parabola|url-status=live}}</ref> | {{N/A|N/A}} | {{Yes}} |- | Red Hat Enterprise Linux | {{dts|June 2014}} (v7.0)<ref name="rhel" /> | {{Yes}} | {{dts|June 2014}} (v7.0) | {{No}} |- | Slackware | {{n/a|N/A (not in repository)}} | {{No}} | {{N/A|N/A}} | {{Yes}} |- | Solus | {{N/A|N/A}} | {{Yes}} | {{N/A|N/A}} | {{No}} |- | Source Mage | {{dts|June 2011}}<ref>{{cite web|url=http://scmweb.sourcemage.org/smgl/grimoire.git/commit/smgl/systemd?id=a635ca906741db0dcd2725fcf5fa4502693b98a4|title=Initial entry of the "systemd" spell|access-date=21 May 2019|archive-date=23 September 2020|archive-url=https://web.archive.org/web/20200923034627/http://scmweb.sourcemage.org/smgl/grimoire.git/commit/smgl/systemd?id=a635ca906741db0dcd2725fcf5fa4502693b98a4|url-status=live}}</ref> | {{No}} | {{N/A|N/A}} | {{Yes}} |- | SUSE Linux Enterprise Server | {{dts|October 2014}} (v12) | {{Yes}} | {{dts|October 2014}} (v12) | {{No}} |- | Ubuntu | {{dts|April 2013}} (v13.04) | {{Yes}} | {{dts|April 2015}} (v15.04) | {{dropped|Upstart option removed}} in Yakkety (16.10)<ref name="ubuntu-init-switch" /><ref name="launchpad-upstart-packages" />{{Efn|Missing functionality using init systems other than systemd{{citation needed|date=February 2020}}}} |- | Void Linux | {{dts|June 2011}}, removed {{dts|June 2015}}<ref>{{cite web|url = https://github.com/void-linux/void-packages/commit/dc6429e189adcaa775648c554256b877ae7fcefd|title = Void-Package: systemd: removed; no plans to resurrect this.|website = GitHub|access-date = 24 July 2018|archive-date = 19 February 2023|archive-url = https://web.archive.org/web/20230219165521/https://github.com/void-linux/void-packages/commit/dc6429e189adcaa775648c554256b877ae7fcefd|url-status = live}}</ref> | {{No}} | {{N/A|N/A}} | {{Yes}} |}
While many distributions boot systemd by default, some allow other init systems to be used; in this case switching the init system is possible by installing the appropriate packages. A fork of Debian called Devuan was developed to avoid systemd<ref>{{cite news|url = http://www.pcworld.com/article/2854717/meet-devuan-the-debian-fork-born-from-a-bitter-systemd-revolt.html|title = Meet Devuan, the Debian fork born from a bitter systemd revolt|access-date = 24 February 2015|archive-date = 9 December 2014|archive-url = https://web.archive.org/web/20141209075125/http://www.pcworld.com/article/2854717/meet-devuan-the-debian-fork-born-from-a-bitter-systemd-revolt.html|url-status = live}}</ref><ref>{{cite news|url=https://www.theregister.co.uk/2017/05/05/devuan_release_candidate_2/|title=systemd-free Devuan Linux hits RC2|date=5 May 2017|last1=Sharwood|first1=Simon|work=The Register|access-date=5 May 2017|archive-date=5 May 2017|archive-url=https://web.archive.org/web/20170505121903/http://www.theregister.co.uk/2017/05/05/devuan_release_candidate_2/|url-status=live}}</ref> and has reached version 5.0 for stable usage. In December 2019, the Debian project voted in favour of retaining systemd as the default init system for the distribution, but with support for "exploring alternatives".<ref>{{Cite web|url=https://www.phoronix.com/scan.php?page=news_item&px=Debian-Devs-Vote-For-Prop-B|title=Debian Developers Decide On Init System Diversity: "Proposal B" Wins|website=Phoronix|access-date=28 December 2019|archive-date=28 December 2019|archive-url=https://web.archive.org/web/20191228025513/https://www.phoronix.com/scan.php?page=news_item&px=Debian-Devs-Vote-For-Prop-B|url-status=live}}</ref>
=== Integration with other software === In the interest of enhancing the interoperability between systemd and the GNOME desktop environment, systemd coauthor Lennart Poettering asked the GNOME Project to consider making systemd an external dependency of GNOME 3.2.<ref name="Poettering-GNOME" />
In November 2012, the GNOME Project concluded that basic GNOME functionality should not rely on systemd.<ref name="Paters" /> However, GNOME 3.8 introduced a compile-time choice between the {{Mono|logind}} and ConsoleKit API, the former being provided at the time only by systemd. Ubuntu provided a separate {{Mono|logind}} binary, but systemd became a ''de facto'' dependency of GNOME for most Linux distributions, in particular since ConsoleKit is no longer actively maintained and upstream recommends the use of {{Mono|systemd-logind}} instead.<ref name="consolekit-abandoned" /> The developers of Gentoo Linux also attempted to adapt these changes in OpenRC, but the implementation contained too many bugs, causing the distribution to mark systemd as a dependency of GNOME.<ref name="Vitters" /><ref name="wayland" />
GNOME has further integrated {{Mono|logind}}.<ref name="systemd-gnome" /> As of Mutter version 3.13.2, {{Mono|logind}} is a dependency for Wayland sessions.<ref name="mutter-logind" />
== Reception == The design of systemd has ignited controversy within the free-software community. Critics regard systemd as overly complex and suffering from continued feature creep, arguing that its architecture violates the Unix philosophy. There is also concern that it forms a system of interlocked dependencies, thereby giving distribution maintainers little choice but to adopt systemd as more user-space software comes to depend on its components.<ref>{{cite web |url = https://www.zdnet.com/article/linus-torvalds-and-others-on-linuxs-systemd/ |title = Linus Torvalds and others on Linux's systemd |last = Vaughan-Nichols |first = Steven |date = 19 September 2014 |website = ZDNet |publisher = CBS Interactive |access-date = 24 February 2015 |archive-date = 25 February 2015 |archive-url = https://web.archive.org/web/20150225010106/http://www.zdnet.com/article/linus-torvalds-and-others-on-linuxs-systemd/ |url-status = live }}</ref>
In a 2012 interview, Slackware's lead Patrick Volkerding expressed reservations about the systemd architecture, stating his belief that its design was contrary to the Unix philosophy of interconnected utilities with narrowly defined functionalities.<ref name="volkerding-2012" /> {{As of|2018|8}}, Slackware does not support or use systemd, but Volkerding has not ruled out the possibility of switching to it.<ref name="slackware-systemd" />
In January 2013, Lennart Poettering attempted to address concerns about systemd in a blog post called ''The Biggest Myths''.<ref name="biggest_myths" />
In February 2014, musl's Rich Felker opined that PID 1 is too special to be saddled with additional responsibilities, believing that PID 1 should only be responsible for starting the rest of the init system and reaping zombie processes, and that the additional functionality added by systemd can be provided elsewhere and unnecessarily increases the complexity and attack surface of PID 1.<ref>{{cite web |url=http://ewontfix.com/14/ |title=Broken by design: systemd |author=Rich Felker |date=9 February 2014 |archive-url=https://web.archive.org/web/20191023153533/http://ewontfix.com/14/ |archive-date=23 October 2019 |url-status=live}}</ref>
In March 2014, Eric S. Raymond commented that systemd's design goals were prone to mission creep and software bloat.<ref name="esr-slashdot-2014" /> In April 2014, Linus Torvalds expressed reservations about the attitude of Kay Sievers, a key systemd developer, toward users and bug reports in regard to modifications to the Linux kernel submitted by Sievers.<ref name="lkml-20140402" /> In late April 2014, a campaign to boycott systemd was launched, with a website listing various reasons against its adoption.<ref name="upload" /><ref name="boycott" />
In an August 2014 article published in ''InfoWorld'', Paul Venezia wrote about the systemd controversy and attributed the controversy to violation of the Unix philosophy, and to "enormous egos who firmly believe they can do no wrong".<ref name="apocalypse" /> The article also characterizes the architecture of systemd as similar to that of svchost.exe, a critical system component in Microsoft Windows with a broad functional scope.<ref name="apocalypse" />
In a September 2014 ZDNet interview, prominent Linux kernel developer Theodore Ts'o expressed his opinion that the dispute over systemd's centralized design philosophy, more than technical concerns, indicates a dangerous general trend toward uniformizing the Linux ecosystem, alienating and marginalizing parts of the open-source community, and leaving little room for alternative projects. He cited similarities with the attitude he found in the GNOME project toward non-standard configurations.<ref name="zdnet-20140919" /> On social media, Ts'o also later compared the attitudes of Sievers and his co-developer, Lennart Poettering, to that of GNOME's developers.<ref name="Tso" />
== Forks and alternative implementations == Forks of systemd are closely tied to critiques of it outlined in the above section. Forks generally try to improve on at least one of portability (to other libcs and Unix-like systems), modularity, or size. A few forks have collaborated under the FreeInit banner.<ref>{{cite web |title=FreeInit.org |url=https://freeinit.org/ |website=www.freeinit.org |access-date=1 August 2021 |archive-date=1 August 2021 |archive-url=https://web.archive.org/web/20210801173221/https://www.freeinit.org/ |url-status=live }}</ref>
=== Forks of components ===
==== eudev ==== In 2012, the Gentoo Linux project created a fork of udev in order to avoid dependency on the systemd architecture. The resulting fork is called ''eudev'' and it makes udev functionality available without systemd.<ref name="eudev" /> A stated goal of the project is to keep eudev independent of any Linux distribution or init system.<ref name="gentoo-eudev" /> In 2021, Gentoo announced that support of eudev would cease at the beginning of 2022. An independent group of maintainers have since taken up eudev.<ref name="eudev-news">{{cite web |last1=Basile |first1=Anthony G. |title=eudev retirement on 2022-01-01 |url=https://www.gentoo.org/support/news-items/2021-08-24-eudev-retirement.html |website=Repository news items |publisher=Gentoo Linux |access-date=14 June 2022 |date=24 August 2021 |archive-date=30 June 2022 |archive-url=https://web.archive.org/web/20220630011112/https://www.gentoo.org/support/news-items/2021-08-24-eudev-retirement.html |url-status=live }}</ref>
==== elogind ==== Elogind is the systemd project's "logind", extracted to be a standalone daemon. It integrates with PAM to know the set of users that are logged into a system and whether they are logged in graphically, on the console, or remotely. Elogind exposes this information via the standard org.freedesktop.login1 D-Bus interface, as well as through the file system using systemd's standard {{mono|/run/systemd}} layout. Elogind also provides "libelogind", which is a subset of the facilities offered by "libsystemd". There is a "libelogind.pc" pkg-config file as well.<ref name="elogind" />
=== Alternatives to components ===
==== ConsoleKit2 ==== ConsoleKit was forked in October 2014 by Xfce developers wanting its features to still be maintained and available on operating systems other than Linux. While not ruling out the possibility of reviving the original repository in the long term, the main developer considers ConsoleKit2 a temporary necessity until systembsd matures.<ref name="consolekit2" />
=== Abandoned forks ===
==== Fork of components ====
===== LoginKit ===== LoginKit was an attempt to implement a logind (systemd-logind) shim, which would allow packages that depend on systemd-logind to work without dependency on a specific init system.<ref name="loginkit" /> The project has been defunct since February 2015.<ref>{{Cite web |title=dimkr/LoginKit (Github) |url=https://github.com/dimkr/LoginKit/tree/master |url-status=live |archive-url=https://web.archive.org/web/20230219165523/https://github.com/dimkr/LoginKit/tree/master |archive-date=19 February 2023 |access-date=8 July 2018 |website=GitHub}}</ref>
===== systembsd ===== In 2014, a Google Summer of Code project named "systembsd" was started in order to provide alternative implementations of these APIs for OpenBSD. The original project developer began it in order to ease his transition from Linux to OpenBSD.<ref name="undeadly_systembsd" /> Project development finished in July 2016.<ref>{{citation |title=projects / systembsd.git / summary |url=https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git;a=summary |access-date=8 July 2018 |archive-url=https://web.archive.org/web/20180709010055/https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git;a=summary |url-status=live |archive-date=9 July 2018}}</ref>
The systembsd project did not provide an init replacement, but aimed to provide OpenBSD with compatible daemons for {{Mono|hostnamed}}, {{Mono|timedated}}, {{Mono|localed}}, and {{Mono|logind}}. The project did not create new systemd-like functionality, and was only meant to act as a wrapper over the native OpenBSD system. The developer aimed for systembsd to be installable as part of the ports collection, not as part of a base system, stating that "systemd and *BSD differ fundamentally in terms of philosophy and development practices."<ref name="undeadly_systembsd" />
===== notsystemd ===== Notsystemd intends to implement all systemd's features working on any init system.<ref>{{cite mailing list|url=http://www.mail-archive.com/dev@lists.parabola.nu/msg03209.html|title=notsystemd v232.1 release announcement|author=Luke Shumaker|date=17 June 2017|mailing-list=Dev@lists.parabola.nu|access-date=5 August 2017|archive-date=5 August 2017|archive-url=https://web.archive.org/web/20170805140345/http://www.mail-archive.com/dev@lists.parabola.nu/msg03209.html|url-status=live}}</ref> It was forked by the Parabola GNU/Linux-libre developers to build packages with their development tools without the necessity of having systemd installed to run systemd-nspawn. Development ceased in July 2018.<ref>{{Cite web |title=notsystemd |url=https://repo.parabola.nu/other/notsystemd/ |url-status=live |archive-url=https://web.archive.org/web/20231208100721/https://repo.parabola.nu/other/notsystemd/ |archive-date=8 December 2023 |access-date=8 December 2023 |website=Parabola GNU/Linux-libre}}</ref>
==== Fork including init system ====
===== uselessd ===== In 2014, ''uselessd'' was created as a lightweight fork of systemd. The project sought to remove features and programs deemed unnecessary for an init system, as well as address other perceived faults.<ref name="phoronix_uselessd" /> Project development halted in January 2015.<ref>{{Cite web|url=http://uselessd.darknedgy.net/|title=Uselessd is dead|website=Uselessd website|access-date=17 February 2017|archive-date=16 May 2015|archive-url=https://web.archive.org/web/20150516113530/http://uselessd.darknedgy.net/|url-status=dead}}</ref>
uselessd supported the musl and μClibc libraries, so it may have been used on embedded systems, whereas systemd only supported glibc. The uselessd project had planned further improvements on cross-platform compatibility, as well as architectural overhauls and refactoring for the Linux build in the future.<ref name="uselessd_home" />
===== InitWare ===== InitWare is a modular refactor of systemd, porting the system to BSD platforms without glibc or Linux-specific system calls. It is known to work on DragonFly BSD, FreeBSD, NetBSD, and GNU/Linux. Components considered unnecessary are dropped.<ref>{{cite web |title=InitWare/InitWare: The InitWare Suite of Middleware allows you to manage services and system resources as logical entities called units. Its main component is a service management ("init") system. |url=https://github.com/InitWare/InitWare |website=GitHub |date=14 November 2021 |language=en |access-date=1 August 2021 |archive-date=1 August 2021 |archive-url=https://web.archive.org/web/20210801173921/https://github.com/InitWare/InitWare |url-status=live }}</ref>
== All Systems Go! == thumb|Lennart Poettering speaking at All Systems Go! 2024 All Systems Go! is the annual systemd conference, which is held in Berlin.<ref>{{Cite web |author=All Systems Go! Team |title=All Systems Go! |url=https://all-systems-go.io/ |access-date=2025-08-29 |website=All Systems Go! |language=en-us}}</ref> The main topic is systemd but other Linux areas are covered as well, like TPM, DBus, desktop environment, containers, eBPF etc.
== See also == {{Portal|Free and open-source software|Linux}}
* BusyBox * launchd * Linux distributions without systemd * Operating system service management * readahead * runit * Service Management Facility * GNU Daemon Shepherd * Upstart * svchost.exe
== Notes == {{Notelist}}
== References == {{Reflist|30em|refs= <ref name="README">{{citation | url = https://cgit.freedesktop.org/systemd/systemd/tree/README | website = freedesktop.org | title = systemd README | access-date = 9 September 2012 | archive-date = 7 July 2013 | archive-url = https://web.archive.org/web/20130707193625/http://cgit.freedesktop.org/systemd/systemd/tree/README | url-status = live }}</ref> <ref name="license">{{citation | url = https://0pointer.de/blog/projects/systemd-update-3.html | title = systemd Status Update | last = Poettering | first = Lennart | date = 21 April 2012 | access-date = 28 April 2012 | archive-date = 23 April 2012 | archive-url = https://web.archive.org/web/20120423183615/http://0pointer.de/blog/projects/systemd-update-3.html | url-status = live }}</ref> <ref name="unitfiles">{{cite web|url=https://www.freedesktop.org/software/systemd/man/systemd.unit.html|title=systemd.unit man page|publisher=freedesktop.org|access-date=19 March 2016|archive-date=28 March 2016|archive-url=https://web.archive.org/web/20160328202847/https://www.freedesktop.org/software/systemd/man/systemd.unit.html|url-status=live}}</ref> <ref name = control-center>{{ citation | url = http://h-online.com/-1565543 | archive-url = https://web.archive.org/web/20121014173559/http://www.h-online.com/open/features/Control-Centre-The-systemd-Linux-init-system-1565543.html | archive-date = 14 October 2012 | title = Control Centre: The systemd Linux init system | last1 = Poettering | first1 = Lennart | last2 = Sievers | first2 = Kay | last3 = Leemhuis | first3 = Thorsten | publisher = The H | date = 8 May 2012 | access-date = 9 September 2012 }}</ref> <ref name="debian-debate">{{cite web | url = https://wiki.debian.org/Debate/initsystem/systemd | title = Debate/initsystem/systemd – Debian Documentation | date = 2 January 2014 | access-date = 4 December 2014 | publisher = Debian | archive-date = 7 December 2014 | archive-url = https://web.archive.org/web/20141207202128/https://wiki.debian.org/Debate/initsystem/systemd | url-status = live }}</ref> <ref name="biggest_myths">{{cite web | url = https://0pointer.de/blog/projects/the-biggest-myths.html | title = The Biggest Myths | last = Poettering | first = Lennart | date = 26 January 2013 | access-date = 20 August 2021 | archive-date = 17 October 2021 | archive-url = https://web.archive.org/web/20211017213403/http://0pointer.de/blog/projects/the-biggest-myths.html | url-status = live }}</ref> <ref name="gnome_asia_2014">{{cite web | url = https://0pointer.de/public/gnomeasia2014.pdf | title = A Perspective for systemd: What Has Been Achieved, and What Lies Ahead | last = Poettering | first = Lennart | date = May 2014 | access-date = 30 November 2014 | archive-date = 8 February 2015 | archive-url = https://web.archive.org/web/20150208010758/http://0pointer.de/public/gnomeasia2014.pdf | url-status = live }}</ref> <ref name="Gundersen2014">{{cite web | url = http://blog.lusis.org/blog/2014/09/23/end-of-linux/#comment-1605841507 | first = Tom E. | last = Gundersen | date = 25 September 2014 | quote = It certainly is not something that comes with systemd from upstream. | title = The End of Linux | access-date = 25 October 2014 | archive-date = 26 October 2014 | archive-url = https://web.archive.org/web/20141026000511/http://blog.lusis.org/blog/2014/09/23/end-of-linux/#comment-1605841507 | url-status = live }}</ref> <ref name="phoronix-20130128">{{cite web | url = https://www.phoronix.com/scan.php?page=news_item&px=MTI4NTk | title = systemd Dreams Up New Feature, Makes It Like Cron | publisher = Phoronix | date = 28 January 2013 | access-date = 22 January 2014 | archive-date = 3 January 2014 | archive-url = https://web.archive.org/web/20140103142122/http://www.phoronix.com/scan.php?page=news_item&px=MTI4NTk | url-status = live }}</ref> <ref name="lwn-20131107">{{cite web | url = https://lwn.net/Articles/572957/ | title = Creating containers with systemd-nspawn | date = 7 November 2013 | access-date = 30 July 2014 | last = Edge | first = Jake | publisher = LWN.net | archive-date = 23 August 2014 | archive-url = https://web.archive.org/web/20140823232542/https://lwn.net/Articles/572957/ | url-status = live }}</ref> <ref name="systemd-controller">{{cite web | url = https://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/ | title = ControlGroupInterface | website = freedesktop.org | access-date = 9 November 2014 | archive-date = 12 December 2014 | archive-url = https://web.archive.org/web/20141212201345/http://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/ | url-status = live }}</ref> <ref name="lkml-20140128">{{cite mailing list | url = https://lkml.org/lkml/2014/1/28/502 | title = cgroup: convert to kernfs | last = Heo | first = Tejun | mailing-list = linux-kernel | date = 28 January 2014 | access-date = 24 May 2014 | archive-date = 12 October 2018 | archive-url = https://web.archive.org/web/20181012020951/https://lkml.org/lkml/2014/1/28/502 | url-status = live }}</ref> <ref name="lkml-20140313">{{cite mailing list | url = https://lkml.org/lkml/2014/3/13/503 | title = cgroup: prepare for the default unified hierarchy | last = Heo | first = Tejun | mailing-list = linux-kernel | date = 13 March 2014 | access-date = 24 May 2014 | archive-date = 20 March 2014 | archive-url = https://web.archive.org/web/20140320040956/http://lkml.org/lkml/2014/3/13/503 | url-status = live }}</ref> <ref name="logind-service">{{cite web | url = https://www.freedesktop.org/software/systemd/man/systemd-logind.service.html | title = systemd-logind.service | website = freedesktop.org | access-date = 17 February 2014 | archive-date = 11 April 2014 | archive-url = https://web.archive.org/web/20140411080554/http://www.freedesktop.org/software/systemd/man/systemd-logind.service.html | url-status = live }}</ref> <ref name="consolekit">{{cite web | url = https://www.freedesktop.org/wiki/Software/ConsoleKit/ | title = ConsoleKit official website | website = freedesktop.org | access-date = 9 November 2014 | archive-date = 18 October 2014 | archive-url = https://web.archive.org/web/20141018232821/http://www.freedesktop.org/wiki/Software/ConsoleKit/ | url-status = live }}</ref> <ref name="display-managers">{{cite web | url = https://www.freedesktop.org/wiki/Software/systemd/writing-display-managers/ | title = How to hook up your favorite X11 display manager with systemd | website = freedesktop.org | access-date = 19 March 2016 | archive-date = 28 March 2016 | archive-url = https://web.archive.org/web/20160328163257/https://www.freedesktop.org/wiki/Software/systemd/writing-display-managers/ | url-status = live }}</ref> <ref name="systemd-1">{{cite web | url = https://plus.google.com/+TomGundersen/posts/bDQCP5ZyQ3h | title = Networking in +systemd - 1. Background | date = 27 November 2013 | access-date = 22 February 2014 | archive-date = 13 March 2014 | archive-url = https://web.archive.org/web/20140313225816/https://plus.google.com/+TomGundersen/posts/bDQCP5ZyQ3h | url-status = live }}</ref> <ref name="systemd-2">{{cite web | url = https://plus.google.com/+TomGundersen/posts/JhaBNn8Ytwu | title = Networking in +systemd - 2. libsystemd-rtnl | date = 27 November 2013 | access-date = 22 February 2014 | archive-date = 13 March 2014 | archive-url = https://web.archive.org/web/20140313223725/https://plus.google.com/+TomGundersen/posts/JhaBNn8Ytwu | url-status = live }}</ref> <ref name="systemd-3">{{cite web | url = https://plus.google.com/+TomGundersen/posts/anS8GseSAfw | title = Networking in +systemd - 3. udev | date = 27 November 2013 | access-date = 22 February 2014 | archive-date = 13 March 2014 | archive-url = https://web.archive.org/web/20140313215617/https://plus.google.com/+TomGundersen/posts/anS8GseSAfw | url-status = live }}</ref> <ref name="systemd-4">{{cite web | url = https://plus.google.com/+TomGundersen/posts/8d1tzMJWppJ | title = Networking in +systemd - 4. networkd | date = 27 November 2013 | access-date = 22 February 2014 | archive-date = 13 March 2014 | archive-url = https://web.archive.org/web/20140313220557/https://plus.google.com/+TomGundersen/posts/8d1tzMJWppJ | url-status = live }}</ref> <ref name="systemd-5">{{cite web | url = https://plus.google.com/+TomGundersen/posts/U6Es8bpmMbP | title = Networking in +systemd - 5. the immediate future | date = 27 November 2013 | access-date = 22 February 2014 | archive-date = 13 March 2014 | archive-url = https://web.archive.org/web/20140313221459/https://plus.google.com/+TomGundersen/posts/U6Es8bpmMbP | url-status = live }}</ref> <ref name="phoronix-20140704">{{cite web | title = systemd 215 Works On Factory Reset, DHCPv4 Server Support | url = https://www.phoronix.com/scan.php?page=news_item&px=MTczNDA | last = Larabel | first = Michael | date = 4 July 2014 | access-date = 8 November 2014 | archive-date = 17 October 2014 | archive-url = https://web.archive.org/web/20141017180945/http://www.phoronix.com/scan.php?page=news_item&px=MTczNDA | url-status = live }}</ref> <ref name="timedated">{{cite web | url = https://www.freedesktop.org/wiki/Software/systemd/timedated/ | title = timedated | website = freedesktop.org | access-date = 9 November 2014 | archive-date = 11 October 2014 | archive-url = https://web.archive.org/web/20141011084359/http://www.freedesktop.org/wiki/Software/systemd/timedated/ | url-status = live }}</ref> <ref name="sievers-20120403">{{Cite mailing list |url=http://article.gmane.org/gmane.linux.hotplug.devel/17392 |title=The future of the udev source tree |mailing-list=vger.kernel.org/vger-lists.html#linux-hotplug linux-hotplug |last=Sievers |first=Kay |access-date=22 May 2013 |archive-date=16 February 2015 |archive-url=https://web.archive.org/web/20150216210816/http://article.gmane.org/gmane.linux.hotplug.devel/17392 |url-status=live }}</ref> <ref name="sievers-20120525">{{citation | last = Sievers | first = Kay | title = Commit importing udev into systemd | url = https://cgit.freedesktop.org/systemd/systemd/commit/?id=19c5f19d69bb5f520fa7213239490c55de06d99d | website = freedesktop.org | access-date = 25 May 2012 | archive-date = 20 April 2013 | archive-url = https://web.archive.org/web/20130420102547/http://cgit.freedesktop.org/systemd/systemd/commit/?id=19c5f19d69bb5f520fa7213239490c55de06d99d | url-status = live }}</ref> <ref name="fedora-systemd">{{citation | title = F15 one page release notes | work = fedoraproject.org | url = https://fedoraproject.org/wiki/F15_one_page_release_notes | date = 24 May 2001 | access-date = 24 September 2013 | archive-date = 27 September 2013 | archive-url = https://web.archive.org/web/20130927100737/https://fedoraproject.org/wiki/F15_one_page_release_notes | url-status = live }}</ref> <ref name="slackware-systemd">{{cite web | url = https://www.linuxquestions.org/questions/slackware-14/i%27m-back-after-a-break-from-slackware-sharing-thoughts-and-seeing-whats-new-4175482641/#post5054861 | title = I'm back after a break from Slackware: sharing thoughts and seeing whats new! | website = linuxquestions.org | access-date = 14 March 2014 | archive-date = 13 March 2014 | archive-url = https://web.archive.org/web/20140313042916/http://www.linuxquestions.org/questions/slackware-14/i%27m-back-after-a-break-from-slackware-sharing-thoughts-and-seeing-whats-new-4175482641/#post5054861 | url-status = live }}</ref> <ref name="arch-git">{{cite web | title = Git clone of the 'packages' repository | url = https://projects.archlinux.org/svntogit/packages.git/commit/trunk/PKGBUILD?h=packages%2Fsystemd&id=982ee75b9cda95d9357e9b80a931f7b52638c42b | website = Web interface to the Arch Linux git repositories | date = 12 January 2012 | access-date = 31 August 2014 | archive-date = 16 February 2015 | archive-url = https://web.archive.org/web/20150216210915/https://projects.archlinux.org/svntogit/packages.git/commit/trunk/PKGBUILD?h=packages%2Fsystemd&id=982ee75b9cda95d9357e9b80a931f7b52638c42b | url-status = live }}</ref> <ref name="arch-systemd">{{cite web | title = systemd is now the default on new installations | url = https://www.archlinux.org/news/systemd-is-now-the-default-on-new-installations/ | publisher = Arch Linux | access-date = 29 October 2012 | archive-date = 15 October 2012 | archive-url = https://web.archive.org/web/20121015231822/http://www.archlinux.org/news/systemd-is-now-the-default-on-new-installations/ | url-status = live }}</ref> <ref name="coreos-systemd">{{ citation | url = https://coreos.com/using-coreos/systemd/ | title = CoreOS's init system | website = coreos.com | access-date = 14 February 2014 | url-status = dead | archive-url = https://web.archive.org/web/20140214143636/https://coreos.com/using-coreos/systemd/ | archive-date = 14 February 2014}}</ref> <ref name="coreos-github">{{cite web | url = https://github.com/coreos/manifest/releases/tag/v94.0.0 | title = coreos/manifest: Releases: v94.0.0 | date = 3 October 2013 | access-date = 22 September 2014 | website = github.com | archive-date = 10 September 2020 | archive-url = https://web.archive.org/web/20200910065425/https://github.com/coreos/manifest/releases/tag/v94.0.0 | url-status = live }}</ref> <ref name="debian-systemd">{{cite web | url = https://packages.debian.org/search?keywords=systemd | website = debian.org | title = systemd | access-date = 19 November 2014 | archive-date = 29 December 2014 | archive-url = https://web.archive.org/web/20141229160255/https://packages.debian.org/search?keywords=systemd | url-status = live }}</ref> <ref name="ctte-20140211">{{cite mailing list | url = https://lists.debian.org/debian-ctte/2014/02/msg00405.html | title = Bug#727708: call for votes on default Linux init system for jessie | last = Garbee | first = Bdale | mailing-list = debian-ctte | date = 11 February 2014 | access-date = 11 February 2014 | archive-date = 22 February 2014 | archive-url = https://web.archive.org/web/20140222095554/https://lists.debian.org/debian-ctte/2014/02/msg00405.html | url-status = live }}</ref> <ref name="Fedora 14">{{cite web | title = Fedora 14 talking points | url = https://fedoraproject.org/wiki/Fedora_14_talking_points#Systemd | access-date = 28 April 2015 | archive-date = 9 June 2015 | archive-url = https://web.archive.org/web/20150609044820/https://fedoraproject.org/wiki/Fedora_14_talking_points#Systemd | url-status = live }}</ref> <ref name="gentoo-handbook">{{cite web | url = https://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=6#doc_chap3 | title = Installing the Gentoo Base System § Optional: Using systemd | access-date = 4 July 2014 | archive-date = 14 July 2014 | archive-url = https://web.archive.org/web/20140714135807/https://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=6#doc_chap3 | url-status = live }}</ref> <ref name="gentoo-bugzilla">{{citation | url = https://bugs.gentoo.org/show_bug.cgi?id=318365#c210 | website = gentoo.org | title = Comment #210 (bug #318365) | access-date = 5 July 2011 | archive-date = 16 February 2015 | archive-url = https://web.archive.org/web/20150216210945/https://bugs.gentoo.org/show_bug.cgi?id=318365#c210 | url-status = live }}</ref> <ref name="gentoo-doc">{{citation | url = https://www.gentoo.org/proj/en/base/systemd/ | website = gentoo.org | title = systemd | access-date = 5 July 2011 | archive-date = 26 June 2011 | archive-url = https://web.archive.org/web/20110626121601/http://www.gentoo.org/proj/en/base/systemd/ | url-status = live }}</ref> <ref name="gentoo-wiki-systemd">{{citation | url = https://wiki.gentoo.org/wiki/systemd | website = wiki.gentoo.org | title = systemd | access-date = 26 August 2012 | archive-date = 12 October 2012 | archive-url = https://web.archive.org/web/20121012004106/http://wiki.gentoo.org/wiki/Systemd | url-status = live }}</ref> <ref name="mageia1">{{citation | url = https://rpmfind.net//linux/RPM/mageia/1/x86_64/media/core/release/systemd-18-1.mga1.x86_64.html | title = ChangeLog of Mageia's systemd package | access-date = 19 March 2016 | archive-date = 28 March 2016 | archive-url = https://web.archive.org/web/20160328211648/https://rpmfind.net//linux/RPM/mageia/1/x86_64/media/core/release/systemd-18-1.mga1.x86_64.html | url-status = live }}</ref> <ref name="mageia">{{ citation | url = http://h-online.com/-1582479 | archive-url = https://web.archive.org/web/20131208100442/http://www.h-online.com/open/news/item/Mageia-2-arrives-with-GNOME-3-and-systemd-1582479.html | archive-date = 8 December 2013 | title = Mageia 2 arrives with GNOME 3 and systemd | last = Scherschel | first = Fabian | publisher = The H | date = 23 May 2012 | access-date = 22 August 2012 }}</ref> <ref name="opensuse">{{citation | url = http://download.opensuse.org/distribution/11.4/repo/oss/suse/i586/ | title = Directory view of the 11.4 i586 installation showing presence of the systemd v18 installables | date = 23 February 2011 | access-date = 24 September 2013 | archive-date = 28 September 2013 | archive-url = https://web.archive.org/web/20130928011817/http://download.opensuse.org/distribution/11.4/repo/oss/suse/i586/ | url-status = live }}</ref> <ref name="AutoWR-1">{{cite web | title = OpenSUSE: Not Everyone Likes systemd | url = https://www.phoronix.com/scan.php?page=news_item&px=MTE4MDY | publisher = Phoronix | quote = The recently released openSUSE 12.2 does migrate from SysVinit to systemd | access-date = 19 March 2016 | archive-date = 15 March 2016 | archive-url = https://web.archive.org/web/20160315020322/http://www.phoronix.com/scan.php?page=news_item&px=MTE4MDY | url-status = live }}</ref> <ref name="rhel">{{citation | title = Red Hat Unveils Red Hat Enterprise Linux 7 | url = https://www.redhat.com/about/news/press-archive/2014/6/red-hat-unveils-rhel-7 | date = 10 June 2014 | access-date = 19 March 2016 | archive-date = 14 July 2014 | archive-url = https://web.archive.org/web/20140714121718/http://www.redhat.com/about/news/press-archive/2014/6/red-hat-unveils-rhel-7 | url-status = live }}</ref> <!-- <ref name="ubuntu-wiki">{{ citation | url = https://wiki.ubuntu.com/systemd | website = ubuntu.com | title = systemd — An alternative boot manager | access-date = 24 June 2013 }}</ref> <ref name="ubuntu-planned-systemd">{{ cite web | last = Shuttleworth | first = Mark | url = https://www.markshuttleworth.com/archives/1316 | title = Blog Archive » Losing graciously | website = markshuttleworth.com | date = 14 February 2014 | access-date = 14 February 2014 }}</ref> --> <ref name="debian-bug">{{cite web | url = https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727708 | title = #727708 - tech-ctte: Decide which init system to default to in Debian. | date = 25 October 2013 | access-date = 14 September 2014 | archive-date = 17 April 2016 | archive-url = https://web.archive.org/web/20160417064024/https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727708 | url-status = live }}</ref> <ref name="lwn-20131105">{{cite web | url = https://lwn.net/Articles/572805/ | title = Which init system for Debian? | date = 5 November 2013 | access-date = 14 September 2014 | archive-date = 6 October 2014 | archive-url = https://web.archive.org/web/20141006143804/http://lwn.net/Articles/572805/ | url-status = live }}</ref> <ref name="phoronix-20131230">{{cite web | url = https://www.phoronix.com/scan.php?page=news_item&px=MTU1NjA | title = Debian Still Debating systemd Vs. Upstart Init System | publisher = Phoronix | date = 30 December 2013 | access-date = 14 September 2014 | archive-date = 23 August 2014 | archive-url = https://web.archive.org/web/20140823045417/http://www.phoronix.com/scan.php?page=news_item&px=MTU1NjA | url-status = live }}</ref> <ref name="Shuttleworth">{{cite web | url = https://www.markshuttleworth.com/archives/1316 | title = Losing graciously | date = 14 February 2014 | access-date = 14 September 2014 | archive-date = 8 September 2014 | archive-url = https://web.archive.org/web/20140908011326/http://www.markshuttleworth.com/archives/1316 | url-status = live }}</ref> <ref name="quantal">{{cite web | url = https://www.markshuttleworth.com/archives/1295 | title = Quantal, raring, saucy... | date = 18 October 2013 | access-date = 14 September 2014 | archive-date = 28 August 2014 | archive-url = https://web.archive.org/web/20140828024126/http://www.markshuttleworth.com/archives/1295 | url-status = live }}</ref> <ref name="Poettering-GNOME">{{cite mailing list | url = https://mail.gnome.org/archives/desktop-devel-list/2011-May/msg00427.html | last = Poettering | first = Lennart | publisher = GNOME | mailing-list = desktop-devel | title = systemd as an external dependency | date = 18 May 2011 | access-date = 26 May 2011 | archive-date = 27 May 2011 | archive-url = https://web.archive.org/web/20110527141240/https://mail.gnome.org/archives/desktop-devel-list/2011-May/msg00427.html | url-status = live }}</ref> <ref name="Paters">{{cite mailing list | url = https://mail.gnome.org/archives/release-team/2012-November/msg00015.html | title = 20121104 meeting minutes | last = Peters | first = Frederic | mailing-list = GNOME release-team | date = 4 November 2011 | access-date = 14 January 2013 | archive-date = 7 September 2014 | archive-url = https://web.archive.org/web/20140907034652/https://mail.gnome.org/archives/release-team/2012-November/msg00015.html | url-status = live }}</ref> <ref name="consolekit-abandoned">{{cite web | url = https://www.freedesktop.org/wiki/Software/ConsoleKit/ | title = ConsoleKit | access-date = 15 November 2014 | quote = ConsoleKit is currently not actively maintained. The focus has shifted to the built-in seat/user/session management of Software/systemd called systemd-logind! | archive-date = 18 October 2014 | archive-url = https://web.archive.org/web/20141018232821/http://www.freedesktop.org/wiki/Software/ConsoleKit/ | url-status = live }}</ref> <ref name="Vitters">{{cite web | last = Vitters | first = Olav | title = GNOME and logind+systemd thoughts | date = 25 September 2013 | url = https://blogs.gnome.org/ovitters/2013/09/25/gnome-and-logindsystemd-thoughts/ | access-date = 24 April 2014 | archive-date = 24 April 2014 | archive-url = https://web.archive.org/web/20140424192523/http://blogs.gnome.org/ovitters/2013/09/25/gnome-and-logindsystemd-thoughts/ | url-status = live }}</ref> <ref name="wayland">{{cite web | title = GNOME 3.10 arrives with experimental Wayland support | url = https://www.zdnet.com/article/gnome-3-10-arrives-with-experimental-wayland-support/ | work = ZDNet | access-date = 24 April 2014 | archive-date = 24 April 2014 | archive-url = https://web.archive.org/web/20140424192527/http://www.zdnet.com/gnome-3-10-arrives-with-experimental-wayland-support-7000021185/ | url-status = live }}</ref> <ref name="systemd-gnome">{{cite web | url = https://wiki.gnome.org/Initiatives/Systemd | title = GNOME initiatives: systemd | access-date = 9 May 2018 | archive-date = 2 May 2014 | archive-url = https://web.archive.org/web/20140502004010/https://wiki.gnome.org/Initiatives/Systemd | url-status = live }}</ref> <ref name="mutter-logind">{{cite web | url = https://git.gnome.org/browse/mutter/commit/?id=dcf64ca1678a2950842708bee146f09a063ed828 | title = Mutter 3.13.2: launcher: Replace mutter-launch with logind integration | date = 19 May 2014 | access-date = 28 May 2014 | archive-date = 16 February 2015 | archive-url = https://web.archive.org/web/20150216210845/https://git.gnome.org/browse/mutter/commit/?id=dcf64ca1678a2950842708bee146f09a063ed828 | url-status = live }}</ref> <ref name="volkerding-2012">{{cite web | url = https://www.linuxquestions.org/questions/interviews-28/interview-with-patrick-volkerding-of-slackware-949029/ | title = Interview with Patrick Volkerding of Slackware | website = linuxquestions.org | date = 7 June 2012 | access-date = 19 March 2014 | archive-date = 3 May 2013 | archive-url = https://web.archive.org/web/20130503140351/http://www.linuxquestions.org/questions/interviews-28/interview-with-patrick-volkerding-of-slackware-949029/ | url-status = live }}</ref> <ref name="apocalypse">{{cite web | url = http://www.infoworld.com/article/2608798/data-center/systemd--harbinger-of-the-linux-apocalypse.html | title = systemd: Harbinger of the Linux apocalypse | last = Venezia | first = Paul | date = 18 August 2014 | access-date = 20 September 2014 | archive-date = 26 September 2014 | archive-url = https://web.archive.org/web/20140926075814/http://www.infoworld.com/article/2608798/data-center/systemd--harbinger-of-the-linux-apocalypse.html | url-status = live }}</ref> <ref name="allbery-resignation">{{cite mailing list | url = https://lists.debian.org/debian-ctte/2014/11/msg00071.html | title = Resigning from the Technical Committee | last = Allbery | first = Russ | mailing-list = debian-ctte | date = 16 November 2014 | access-date = 15 July 2015 | archive-date = 11 June 2015 | archive-url = https://web.archive.org/web/20150611044740/https://lists.debian.org/debian-ctte/2014/11/msg00071.html | url-status = live }}</ref> <ref name="hess-resignation">{{cite web | url = https://joeyh.name/blog/entry/on_leaving/ | title = on leaving | last = Hess | first = Joey | access-date = 15 July 2015 | archive-date = 16 July 2015 | archive-url = https://web.archive.org/web/20150716034547/http://joeyh.name/blog/entry/on_leaving/ | url-status = live }}</ref> <ref name="jackson-resignation">{{cite mailing list | url = https://lists.debian.org/debian-ctte/2014/11/msg00091.html | title = Resignation | last = Jackson | first = Ian | mailing-list = debian-ctte | date = 19 November 2014 | access-date = 15 July 2015 | archive-date = 11 June 2015 | archive-url = https://web.archive.org/web/20150611044657/https://lists.debian.org/debian-ctte/2014/11/msg00091.html | url-status = live }}</ref> <ref name="heen-resignation">{{cite mailing list | url = https://lists.alioth.debian.org/pipermail/pkg-systemd-maintainers/2014-November/004563.html | title = Resignation from the pkg-systemd maintainer team | last = Heen | first = Tollef Fog | mailing-list = pkg-systemd-maintainers | date = 16 November 2014 | access-date = 15 July 2015 | archive-date = 11 June 2015 | archive-url = https://web.archive.org/web/20150611044725/http://lists.alioth.debian.org/pipermail/pkg-systemd-maintainers/2014-November/004563.html | url-status = live }}</ref> <ref name="lkml-20140402">{{cite mailing list | title = Re: [RFC PATCH] cmdline: Hide "debug" from /proc/cmdline | url = https://lkml.org/lkml/2014/4/2/420 | last = Torvalds | first = Linus | mailing-list = linux-kernel | access-date = 8 July 2014 | date = 2 April 2014 | archive-date = 22 October 2017 | archive-url = https://web.archive.org/web/20171022090201/https://lkml.org/lkml/2014/4/2/420 | url-status = live }}</ref> <ref name="esr-slashdot-2014">{{cite web |url=https://interviews.slashdot.org/story/14/03/10/137246/interviews-esr-answers-your-questions |title=Interviews: ESR Answers Your Questions |publisher=Slashdot.org |date=10 March 2014 |access-date=19 March 2014 |archive-date=22 March 2014 |archive-url=https://web.archive.org/web/20140322074114/http://interviews.slashdot.org/story/14/03/10/137246/interviews-esr-answers-your-questions |url-status=live }}</ref> <ref name="Tso">{{ cite web | title = A realization that I recently came to while discussing the whole systemd... | url = https://plus.google.com/+TheodoreTso/posts/4W6rrMMvhWU | archive-url = https://web.archive.org/web/20140906203212/https://plus.google.com/+TheodoreTso/posts/4W6rrMMvhWU | url-status = dead | archive-date=2014-09-06 | access-date=2025-11-17 | date=2014-03-31 }}</ref> <ref name="boycott">{{ cite web|url=http://boycottsystemd.org/ |title=Boycott systemd.org |access-date=15 July 2015 |archive-url=https://web.archive.org/web/20140506135435/http://boycottsystemd.org |archive-date=6 May 2014 |url-status=dead }}</ref> <ref name="upload">{{cite web | url = https://linuxbsdos.com/2014/09/03/is-systemd-as-bad-as-boycott-systemd-is-trying-to-make-it/ | title = Is systemd as bad as boycott systemd is trying to make it? | date = 3 September 2014 | publisher = LinuxBSDos.com | access-date = 22 September 2014 | archive-date = 24 September 2014 | archive-url = https://web.archive.org/web/20140924041531/http://www.linuxbsdos.com/2014/09/03/is-systemd-as-bad-as-boycott-systemd-is-trying-to-make-it/ | url-status = live }}</ref> <ref name="eudev">{{ cite web | url = https://github.com/gentoo/eudev/blob/master/README | title = eudev/README | website = GitHub | access-date = 1 June 2015 | url-status = dead | archive-url = https://web.archive.org/web/20150216210900/https://github.com/gentoo/eudev/blob/master/README | archive-date = 16 February 2015}}</ref> <ref name="elogind">{{cite web | url = https://github.com/andywingo/elogind/blob/master/README | title = elogind/README | website = GitHub | access-date = 2 September 2015 | archive-date = 19 February 2023 | archive-url = https://web.archive.org/web/20230219165522/https://github.com/wingo/elogind/blob/master/README | url-status = live }}</ref> <ref name="gentoo-eudev">{{cite web | url = https://wiki.gentoo.org/wiki/Project:Eudev | title = Gentoo eudev project | access-date = 1 June 2015 | archive-date = 4 September 2015 | archive-url = https://web.archive.org/web/20150904074508/https://wiki.gentoo.org/wiki/Project:Eudev | url-status = dead }}</ref> <ref name="phoronix_uselessd">{{cite web | url = https://www.phoronix.com/scan.php?page=news_item&px=MTc5MzA | title = Uselessd: A Stripped Down Version Of systemd | last = Larabel | first = Michael | publisher = Phoronix | date = 21 September 2014 | access-date = 26 October 2014 | archive-date = 17 October 2014 | archive-url = https://web.archive.org/web/20141017181711/http://www.phoronix.com/scan.php?page=news_item&px=MTc5MzA | url-status = live }}</ref> <ref name="uselessd_home">{{cite web | url = http://uselessd.darknedgy.net/ | title = uselessd :: information system | website = uselessd.darknedgy.net | access-date = 26 October 2014 | archive-date = 16 May 2015 | archive-url = https://web.archive.org/web/20150516113530/http://uselessd.darknedgy.net/ | url-status = dead }}</ref> <ref name="undeadly_systembsd">{{cite web | url = http://undeadly.org/cgi?action=article&sid=20140915064856 | title = GSoC 2014: systemd replacement utilities (systembsd) | publisher = OpenBSD Journal | access-date = 28 November 2014 | archive-date = 29 November 2014 | archive-url = https://web.archive.org/web/20141129023547/http://undeadly.org/cgi?action=article&sid=20140915064856 | url-status = live }}</ref> <ref name="consolekit2">{{cite web | url = https://erickoegel.wordpress.com/2014/10/20/consolekit2/ | title = ConsoleKit2 | first = Eric | last = Koegel | date = 20 October 2014 | access-date = 7 March 2015 | archive-date = 2 April 2015 | archive-url = https://web.archive.org/web/20150402143447/https://erickoegel.wordpress.com/2014/10/20/consolekit2/ | url-status = live }}</ref> <ref name="loginkit">{{cite web | url = https://github.com/dimkr/LoginKit/blob/master/README | title = loginkit/README | website = GitHub | access-date = 4 December 2014 | archive-date = 19 February 2023 | archive-url = https://web.archive.org/web/20230219165540/https://github.com/dimkr/LoginKit/blob/master/README | url-status = live }}</ref> <ref name="zdnet-20140919">{{cite news | url=https://www.zdnet.com/article/linus-torvalds-and-others-on-linuxs-systemd/ | title=Linus Torvalds and others on Linux's systemd | website=ZDNet | access-date=21 November 2014 | archive-date=20 November 2014 | archive-url=https://web.archive.org/web/20141120010728/http://www.zdnet.com/linus-torvalds-and-others-on-linuxs-systemd-7000033847/ | url-status=live }}</ref> <!-- <ref name="ubuntu-vivid-switch">{{ cite mailing list | last = Pitt | first = Martin | url = https://lists.ubuntu.com/archives/ubuntu-devel-announce/2015-March/001130.html | title = Announce: Vivid will switch to booting with systemd next Monday, brace for impact | mailing-list = ubuntu-devel-announce | date = 5 March 2015 | access-date = 6 May 2015 }}</ref> --> <ref name="ubuntu-init-switch">{{cite web | url = https://wiki.ubuntu.com/SystemdForUpstartUsers#Switching_init_systems | title = Ubuntu Wiki: Switching init systems | access-date = 3 July 2016 | archive-date = 3 June 2016 | archive-url = https://web.archive.org/web/20160603035738/https://wiki.ubuntu.com/SystemdForUpstartUsers#Switching_init_systems | url-status = live }}</ref> <!-- <ref name="official_website">{{ cite web | url = https://www.freedesktop.org/wiki/Software/systemd/ | title = systemd | access-date = 14 February 2018 }}</ref> <ref name="official_systemd_system_and_service_manager_github">{{ cite web | url = https://github.com/systemd/systemd | title = Github systemd/systemd - systemd System and Service Manager | access-date = 14 February 2018 }}</ref>--> <ref name="launchpad-upstart-packages">{{cite web |title=Linked packages : upstart |url=https://launchpad.net/upstart/+packages#packages-1-x |website=Launchpad |access-date=17 June 2019 |language=en |archive-date=12 May 2021 |archive-url=https://web.archive.org/web/20210512152728/https://launchpad.net/upstart/+packages#packages-1-x |url-status=live }}</ref>
}}
== External links == * {{Official website}} * {{GitHub|systemd}} * [https://0pointer.de/blog/projects/systemd.html Rethinking PID 1]
{{Service management in Unix}} {{Freedesktop.org}} {{Linux kernel}}
Category:Freedesktop.org Category:Linux kernel-related software Category:Linux-only free software Category:Software that uses Meson Category:Unix process- and task-management-related software Category:Network time-related software