]> git.ipfire.org Git - thirdparty/systemd.git/blame - README
bus-proxyd: show address nicely in --help
[thirdparty/systemd.git] / README
CommitLineData
d657c51f 1systemd System and Service Manager
31cee6f6
LP
2
3DETAILS:
4 http://0pointer.de/blog/projects/systemd.html
5
6WEB SITE:
7 http://www.freedesktop.org/wiki/Software/systemd
8
9GIT:
9fa2f410
KS
10 git://anongit.freedesktop.org/systemd/systemd
11 ssh://git.freedesktop.org/git/systemd/systemd
31cee6f6
LP
12
13GITWEB:
9fa2f410 14 http://cgit.freedesktop.org/systemd/systemd
31cee6f6
LP
15
16MAILING LIST:
17 http://lists.freedesktop.org/mailman/listinfo/systemd-devel
18 http://lists.freedesktop.org/mailman/listinfo/systemd-commits
19
20IRC:
21 #systemd on irc.freenode.org
22
23BUG REPORTS:
24 https://bugs.freedesktop.org/enter_bug.cgi?product=systemd
25
26AUTHOR:
5430f7f2
LP
27 Lennart Poettering
28 Kay Sievers
29 ...and many others
31cee6f6 30
673eab9b 31LICENSE:
5430f7f2
LP
32 LGPLv2.1+ for all code
33 - except sd-daemon.[ch] and sd-readahead.[ch] which are MIT
85424725
KS
34 - except src/shared/MurmurHash3.c which is Public Domain
35 - except src/journal/lookup3.c which is Public Domain
36 - except src/udev/* which is (currently still) GPLv2, GPLv2+
673eab9b 37
31cee6f6 38REQUIREMENTS:
e946948e 39 Linux kernel >= 3.0
713bc0cf
KS
40 CONFIG_DEVTMPFS
41 CONFIG_CGROUPS (it's OK to disable all controllers)
42 CONFIG_INOTIFY_USER
43 CONFIG_SIGNALFD
44 CONFIG_TIMERFD
45 CONFIG_EPOLL
41938693 46 CONFIG_NET
713bc0cf 47 CONFIG_SYSFS
06d461ee 48 CONFIG_PROC_FS
713bc0cf 49
ffbd2c4d
NC
50 Linux kernel >= 3.8 for Smack support
51
713bc0cf 52 Udev will fail to work with the legacy layout:
f28cbd03 53 CONFIG_SYSFS_DEPRECATED=n
713bc0cf
KS
54
55 Legacy hotplug slows down the system and confuses udev:
56 CONFIG_UEVENT_HELPER_PATH=""
57
58 Userspace firmware loading is deprecated, will go away, and
59 sometimes causes problems:
60 CONFIG_FW_LOADER_USER_HELPER=n
61
62 Some udev rules and virtualization detection relies on it:
63 CONFIG_DMIID
64
65 Mount and bind mount handling might require it:
66 CONFIG_FHANDLE
67
a5c724b2
KS
68 Support for some SCSI devices serial number retrieval, to
69 create additional symlinks in /dev/disk/ and /dev/tape:
70 CONFIG_BLK_DEV_BSG
71
713bc0cf
KS
72 Optional but strongly recommended:
73 CONFIG_IPV6
74 CONFIG_AUTOFS4_FS
75 CONFIG_TMPFS_POSIX_ACL
76 CONFIG_TMPFS_XATTR
f28cbd03 77 CONFIG_SECCOMP
713bc0cf 78
06d461ee 79 For systemd-bootchart, several proc debug interfaces are required:
713bc0cf
KS
80 CONFIG_SCHEDSTATS
81 CONFIG_SCHED_DEBUG
82
f28cbd03
KS
83 For UEFI systems:
84 CONFIG_EFI_VARS
85 CONFIG_EFI_PARTITION
86
77b6e194
LP
87 Note that kernel auditing is broken when used with systemd's
88 container code. When using systemd in conjunction with
19aadacf 89 containers, please make sure to either turn off auditing at
77b6e194
LP
90 runtime using the kernel command line option "audit=0", or
91 turn it off at kernel compile time using:
92 CONFIG_AUDIT=n
93
ff70c61b 94 glibc >= 2.14
3ede835a 95 libcap
e3043162 96 libblkid >= 2.20 (from util-linux) (optional)
a18535d9 97 libkmod >= 15 (optional)
3ede835a
LP
98 PAM >= 1.1.2 (optional)
99 libcryptsetup (optional)
100 libaudit (optional)
19d5d4cb 101 libacl (optional)
fb0951b0 102 libattr (optional)
3ede835a 103 libselinux (optional)
19d5d4cb 104 liblzma (optional)
3ede835a 105 tcpwrappers (optional)
7b17a7d7
LP
106 libgcrypt (optional)
107 libqrencode (optional)
108 libmicrohttpd (optional)
2cc86f09
ZJS
109 libpython (optional)
110 make, gcc, and similar tools
111
19aadacf
JE
112 During runtime, you need the following additional
113 dependencies:
2cc86f09 114
8be12848
ZJS
115 util-linux >= v2.19 (requires fsck -l, agetty -s),
116 v2.21 required for tests in test/
df41776d 117 dbus >= 1.4.0 (strictly speaking optional, but recommended)
8be12848
ZJS
118 sulogin (from util-linux >= 2.22 or sysvinit-tools, optional but recommended,
119 required for tests in test/)
2cc86f09 120 dracut (optional)
46ba8aae 121 PolicyKit (optional)
3ede835a 122
19aadacf
JE
123 When building from git, you need the following additional
124 dependencies:
3ede835a 125
3ede835a
LP
126 docbook-xsl
127 xsltproc
128 automake
129 autoconf
130 libtool
19d5d4cb 131 intltool
b62cfcea 132 gperf
19d5d4cb
ZJS
133 gtkdocize (optional)
134 python (optional)
9015fa64 135 sphinx (optional)
80cb917e 136 python-lxml (entirely optional)
21bc923a 137
19aadacf
JE
138 When systemd-hostnamed is used, it is strongly recommended to
139 install nss-myhostname to ensure that, in a world of
140 dynamically changing hostnames, the hostname stays resolvable
fff2e5b5 141 under all circumstances. In fact, systemd-hostnamed will warn
bf9e477c 142 if nss-myhostname is not installed.
fff2e5b5 143
9015fa64
ZJS
144 To build HTML documentation for python-systemd using sphinx,
145 please first install systemd (using 'make install'), and then
146 invoke sphinx-build with 'make sphinx-<target>', with <target>
147 being 'html' or 'latexpdf'. If using DESTDIR for installation,
148 pass the same DESTDIR to 'make sphinx-html' invocation.
149
a24c64f0 150USERS AND GROUPS:
37495eed
LP
151 Default udev rules use the following standard system group
152 names, which need to be resolvable by getgrnam() at any time,
153 even in the very early boot stages, where no other databases
154 and network are available:
155
156 tty, dialout, kmem, video, audio, lp, floppy, cdrom, tape, disk
37c0e8f3 157
19aadacf 158 During runtime, the journal daemon requires the
1a9ce3f7 159 "systemd-journal" system group to exist. New journal files will
19aadacf 160 be readable by this group (but not writable), which may be used
a24c64f0
LP
161 to grant specific users read access.
162
163 It is also recommended to grant read access to all journal
164 files to the system groups "wheel" and "adm" with a command
165 like the following in the post installation script of the
166 package:
167
168 # setfacl -nm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/
169
37495eed 170 The journal gateway daemon requires the
1a9ce3f7 171 "systemd-journal-gateway" system user and group to
37495eed
LP
172 exist. During execution this network facing service will drop
173 privileges and assume this uid/gid for security reasons.
174
21bc923a
LP
175WARNINGS:
176 systemd will warn you during boot if /etc/mtab is not a
177 symlink to /proc/mounts. Please ensure that /etc/mtab is a
178 proper symlink.
179
180 systemd will warn you during boot if /usr is on a different
181 file system than /. While in systemd itself very little will
19aadacf 182 break if /usr is on a separate partition, many of its
21bc923a 183 dependencies very likely will break sooner or later in one
19aadacf 184 form or another. For example, udev rules tend to refer to
21bc923a
LP
185 binaries in /usr, binaries that link to libraries in /usr or
186 binaries that refer to data files in /usr. Since these
19aadacf 187 breakages are not always directly visible, systemd will warn
21bc923a
LP
188 about this, since this kind of file system setup is not really
189 supported anymore by the basic set of Linux OS components.
fc7a744c 190
aa167132
LP
191 For more information on this issue consult
192 http://freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
193
1b4bb4fd
ZJS
194 To run systemd under valgrind, compile with VALGRIND defined
195 (e.g. ./configure CPPFLAGS='... -DVALGRIND=1'). Otherwise,
196 false positives will be triggered by code which violates
197 some rules but is actually safe.