chiark / gitweb /
889c687bacdbe1f6f88cb90ad28663faa2c7f119
[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         Default udev rules use the following standard system group names,\
105         which need to be resolvable by getgrnam() at any time, even in the
106         very early boot stages, where no other databases and network is
107         available:
108           tty, dialout, kmem, video, audio, lp, floppy, cdrom, tape, disk
109
110         During runtime the journal daemon requires the
111         "system-journal" system group to exist. New journal files will
112         be readable by this group (but not writable) which may be used
113         to grant specific users read access.
114
115         It is also recommended to grant read access to all journal
116         files to the system groups "wheel" and "adm" with a command
117         like the following in the post installation script of the
118         package:
119
120         # setfacl -nm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/
121
122 WARNINGS:
123         systemd will warn you during boot if /etc/mtab is not a
124         symlink to /proc/mounts. Please ensure that /etc/mtab is a
125         proper symlink.
126
127         systemd will warn you during boot if /usr is on a different
128         file system than /. While in systemd itself very little will
129         break if /usr is on a separate partition many of its
130         dependencies very likely will break sooner or later in one
131         form or another. For example udev rules tend to refer to
132         binaries in /usr, binaries that link to libraries in /usr or
133         binaries that refer to data files in /usr. Since these
134         breakages are not always directly visible systemd will warn
135         about this, since this kind of file system setup is not really
136         supported anymore by the basic set of Linux OS components.
137
138         For more information on this issue consult
139         http://freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
140
141         To run systemd under valgrind, compile with VALGRIND defined
142         (e.g. ./configure CPPFLAGS='... -DVALGRIND=1'). Otherwise,
143         false positives will be triggered by code which violates
144         some rules but is actually safe.