From Fedora Project Wiki
(Wrong location of for anongit clone.)
 
(3 intermediate revisions by one other user not shown)
Line 21: Line 21:
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Halt halt],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Halt halt],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Runlevel runlevel],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Runlevel runlevel],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Shutdown shutdown],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemadm systemadm],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemadm systemadm],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemctl systemctl],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemctl systemctl],
Line 40: Line 41:
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemd.target systemd.target],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemd.target systemd.target],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemd.timer systemd.timer],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemd.timer systemd.timer],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/Systemd.unit systemd.unit],
[https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/telinit telinit]


== Quick Debugging Tips ==
== Quick Debugging Tips ==
Line 84: Line 87:
After the git source code management tool has been installed, then you use anonymous git access to the Systemd repository.
After the git source code management tool has been installed, then you use anonymous git access to the Systemd repository.
<pre>
<pre>
git clone git://anongit.freedesktop.org/systemd
git clone git://anongit.freedesktop.org/systemd/systemd
</pre>
</pre>
To keep your code updated with the latest System Development.
To keep your code updated with the latest System Development.

Latest revision as of 04:59, 7 November 2012

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.

Systemd man pages

Development man pages

Here's a list man pages related to the development of Systemd itself.

daemon, pam systemd, sd-daemon, sd_booted, sd_is_fifo, sd_listen_fds, sd_notify,


End user man pages

Here's a list of man pages for various end user and administrative commands.

halt, runlevel, shutdown, systemadm, systemctl, systemd-cgls, systemd-install, systemd-notify, systemd.automount, systemd.conf, systemd.device, systemd.exec, systemd, systemd.mount, systemd.path, systemd.service, systemd.snapshot, systemd.socket, systemd.special, systemd.swap, systemd.target, systemd.timer, systemd.unit, telinit

Quick Debugging Tips

  • Add systemd.log_level=debug to the kernel command line to log systemd with debug output enabled
  • Add "systemd.log_target=kmsg" to the kernel command line to let systemd buffer to be written to the kernel log 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 --system from command line to test run init as systemd.

Read More...

Technical details

  1. TODO Gather this stuff

Communicate

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/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.

Useful commands

Listing running services

  1. TODO add description
$ systemctl
  1. TODO Sample output

Show runtime status

  1. TODO add description
$ systemctl status $foo.service
  1. TODO sample output

Tree list control groups

  1. TODO add description
$ tree -d /cgroup/systemd/ 
  1. TODO sample output

PS with cgroups

  1. TODO add description
$ ps xawf -eo pid,user,cgroup,args
  1. TODO sample output
  2. TODO write some jibber jabber about creating a handy alias for the above command named psc if it does not get added to default profiles before GA
alias psc='ps xawf -eo pid,user,cgroup,args'

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.

Systemd Team

In alphabetical order, the following people are the Systemd team and are responsible for the majority of commits.

  • Christian Ruppert
  • Dave Reisner
  • Fabian Henze
  • Kay Sievers
  • Lennart Poettering
  • Maarten Lankhorst
  • Malcolm Studd
  • Marc Antoine Perennou
  • Michael Tremer
  • Pavol Rusnak
  • Robert Gerus
  • Tollef Fog Heen
  • Tom Gundersen