Systemd is a system and session manager for Linux, compatible with SysV and LSB init scripts. systemd provides aggressive parallelization capabilities, uses socket and D-Bus activation for starting services, offers on-demand starting of daemons, keeps track of processes using Linux cgroups, supports snapshotting and restoring of the system state, maintains mount and automount points and implements an elaborate transactional dependency-based service control logic. It can work as a drop-in replacement for sysvinit.
New Kernel Command Line Parameters
Read the # TODO Add link to upstream manpages or systemd option page.
Quick Debugging Tips
- add "systemd.log_target=kmsg" to the kernel command line to let systemd buffer
- to be written to the kernel log buffer to kernel buffer
- Run dmesg from the command line to inspect systemd output
- Redirect dmesg ouput to a file for later inspection or to use as an attachment to a bug report
- run /bin/systemd --test --running-as=init from command line to test run init as systemd.
Technical details
- TODO Gather this stuff
Communicate
- Talk to other Systemd users and developers on our IRC channel
- Visit Systemd Development Archives to see the collection of prior postings to the Systemd Development mailing list
- Post a message to all Systemd Development list members
- Subscribe to the Systemd Development mailing list
Please read the mailing list guidelines before communicating on the list. See also How to use IRC if the IRC links don't work, or if you need more information.
Getting started
To install on Fedora 14 and onwards run yum install systemd
.
Add selinux=0 init=/bin/systemd either to /etc/grub.conf or pass it on the kernel command line at bootup.
Getting the Source
The primary methods of distributing the Systemd source are source RPMs in the Fedora development tree and git.
To access the current source code in in non-rpm format, you'll need to install git.
yum -y install git
Note that several related packages will be installed as well.
After the git source code management tool has been installed, then you use anonymous git access to the Systemd repository.
git clone git://anongit.freedesktop.org/systemd
To keep your code updated with the latest System Development.
cd $systemd_directory && git pull
If you have committer access to Systemd, then you will want to use the git+ssh access URL.
git clone git+ssh://git.freedesktop.org/git/systemd
Once you've committed changes locally, you can push them with git push
.
If you would just like to browse the Systemd git repository via the web, then you can use Systemd gitweb.
Reporting Problems
Before filing a bug, please read up on debugging, which will tell you how to fill out useful bug reports that will help us quickly solve your problem. Also take a look at Systemd bugs or try searching Bugzillafor other reports about your problem, as some bugs are often filed by several people.