chiark / gitweb /
300a4cf8bc177770511e3c5170382eb6dd51f9e6
[elogind.git] / README
1 systemd System and Service Manager
2
3 DETAILS:
4         http://0pointer.de/blog/projects/systemd.html
5
6 WEB SITE:
7         http://www.freedesktop.org/wiki/Software/systemd
8
9 GIT:
10         git://anongit.freedesktop.org/systemd/systemd
11         ssh://git.freedesktop.org/git/systemd/systemd
12
13 GITWEB:
14         http://cgit.freedesktop.org/systemd/systemd
15
16 MAILING LIST:
17         http://lists.freedesktop.org/mailman/listinfo/systemd-devel
18         http://lists.freedesktop.org/mailman/listinfo/systemd-commits
19
20 IRC:
21         #systemd on irc.freenode.org
22
23 BUG REPORTS:
24         https://bugs.freedesktop.org/enter_bug.cgi?product=systemd
25
26 AUTHOR:
27         Lennart Poettering
28         Kay Sievers
29         ...and many others
30
31 LICENSE:
32         LGPLv2.1+ for all code
33         - except sd-daemon.[ch] and sd-readahead.[ch] which are MIT
34         - except src/udev/ which is GPLv2.0+
35
36 REQUIREMENTS:
37         Linux kernel >= 2.6.39
38                 with devtmpfs
39                 with cgroups (but it's OK to disable all controllers)
40                 optional but strongly recommended: autofs4, ipv6
41         dbus >= 1.4.0
42         libcap
43         libblkid >= 2.20 (from util-linux) (optional)
44         libkmod >= 5 (optional)
45         PAM >= 1.1.2 (optional)
46         libcryptsetup (optional)
47         libaudit (optional)
48         libacl (optional)
49         libattr (optional)
50         libselinux (optional)
51         liblzma (optional)
52         tcpwrappers (optional)
53         libgcrypt (optional)
54         libqrencode (optional)
55         libmicrohttpd (optional)
56         libpython (optional)
57         make, gcc, and similar tools
58
59         During runtime you need the following additional dependencies:
60
61         util-linux >= v2.19 (requires fsck -l, agetty -s)
62         sulogin (from util-linux >= 2.22 or sysvinit-tools, optional but recommended)
63         dracut (optional)
64         PolicyKit (optional)
65
66         For systmed-bootchart a kernel with procfs support and several
67         proc output options enabled is required:
68
69         CONFIG_PROC_FS
70         CONFIG_SCHEDSTATS
71         CONFIG_SCHED_DEBUG
72
73         When building from git you need the following additional dependencies:
74
75         docbook-xsl
76         xsltproc
77         automake
78         autoconf
79         libtool
80         intltool
81         gperf
82         gtkdocize (optional)
83         python (optional)
84         sphinx (optional)
85
86         When systemd-hostnamed is used it is strongly recommended to
87         install nss-myhostname to ensure that in a world of
88         dynamically changing hostnames the hostname stays resolvable
89         under all circumstances. In fact, systemd-hostnamed will warn
90         if nss-myhostname is not installed.
91
92         Note that D-Bus can link against libsystemd-login.so, which
93         results in a cyclic build dependency. To accommodate for this
94         please build D-Bus without systemd first, then build systemd,
95         then rebuild D-Bus with systemd support.
96
97         To build HTML documentation for python-systemd using sphinx,
98         please first install systemd (using 'make install'), and then
99         invoke sphinx-build with 'make sphinx-<target>', with <target>
100         being 'html' or 'latexpdf'. If using DESTDIR for installation,
101         pass the same DESTDIR to 'make sphinx-html' invocation.
102
103 USERS AND GROUPS:
104         During runtime the journal daemon requires the
105         "system-journal" system group to exist. New journal files will
106         be readable by this group (but not writable) which may be used
107         to grant specific users read access.
108
109         It is also recommended to grant read access to all journal
110         files to the system groups "wheel" and "adm" with a command
111         like the following in the post installation script of the
112         package:
113
114         # setfacl -nm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/
115
116 WARNINGS:
117         systemd will warn you during boot if /etc/mtab is not a
118         symlink to /proc/mounts. Please ensure that /etc/mtab is a
119         proper symlink.
120
121         systemd will warn you during boot if /usr is on a different
122         file system than /. While in systemd itself very little will
123         break if /usr is on a separate partition many of its
124         dependencies very likely will break sooner or later in one
125         form or another. For example udev rules tend to refer to
126         binaries in /usr, binaries that link to libraries in /usr or
127         binaries that refer to data files in /usr. Since these
128         breakages are not always directly visible systemd will warn
129         about this, since this kind of file system setup is not really
130         supported anymore by the basic set of Linux OS components.
131
132         For more information on this issue consult
133         http://freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
134
135         To run systemd under valgrind, compile with VALGRIND defined
136         (e.g. ./configure CPPFLAGS='... -DVALGRIND=1'). Otherwise,
137         false positives will be triggered by code which violates
138         some rules but is actually safe.