README revision a24c64f03f9c5c0304451d8542fee853187a5168
d657c51f14601d0235434ffb78cf6ac0f27cc83cLennart Poetteringsystemd System and Service Manager
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringDETAILS:
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering http://0pointer.de/blog/projects/systemd.html
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringWEB SITE:
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering http://www.freedesktop.org/wiki/Software/systemd
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringGIT:
9fa2f41077b2d76685058836f602f38715b5eef3Kay Sievers git://anongit.freedesktop.org/systemd/systemd
9fa2f41077b2d76685058836f602f38715b5eef3Kay Sievers ssh://git.freedesktop.org/git/systemd/systemd
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringGITWEB:
9fa2f41077b2d76685058836f602f38715b5eef3Kay Sievers http://cgit.freedesktop.org/systemd/systemd
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringMAILING LIST:
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering http://lists.freedesktop.org/mailman/listinfo/systemd-devel
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering http://lists.freedesktop.org/mailman/listinfo/systemd-commits
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringIRC:
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering #systemd on irc.freenode.org
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringBUG REPORTS:
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering https://bugs.freedesktop.org/enter_bug.cgi?product=systemd
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringAUTHOR:
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering Lennart Poettering
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering Kay Sievers
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering ...and many others
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart Poettering
673eab9bf0d2d79a72f3d7c430807b8786de7ee3Lennart PoetteringLICENSE:
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering LGPLv2.1+ for all code
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering - except sd-daemon.[ch] and sd-readahead.[ch] which are MIT
7c09aafd269bc04dcfc07d94c4ee583b7b0751e6Kay Sievers - except src/udev/ which is GPLv2.0+
673eab9bf0d2d79a72f3d7c430807b8786de7ee3Lennart Poettering
31cee6f634ce07aa2c3514a506f93830f91f14a5Lennart PoetteringREQUIREMENTS:
b7f44df59a7f76d2bd5302df2f5ec9be9b7fa2faLennart Poettering Linux kernel >= 2.6.39
b7f44df59a7f76d2bd5302df2f5ec9be9b7fa2faLennart Poettering with devtmpfs
b7f44df59a7f76d2bd5302df2f5ec9be9b7fa2faLennart Poettering with cgroups (but it's OK to disable all controllers)
b7f44df59a7f76d2bd5302df2f5ec9be9b7fa2faLennart Poettering optional but strongly recommended: autofs4, ipv6
c1c8ca815bb1ef040c0a84cccd51282e4ce8f4deKay Sievers dbus >= 1.4.0
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering libcap
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen libblkid >= 2.20 (from util-linux) (optional)
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen libkmod >= 5 (optional)
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering PAM >= 1.1.2 (optional)
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering libcryptsetup (optional)
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering libaudit (optional)
19d5d4cb6a89c844e298eb65bce6ba0fa9d58b91Zbigniew Jędrzejewski-Szmek libacl (optional)
fb0951b02ebf51a93acf12721d8857d31ce57ba3Lennart Poettering libattr (optional)
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering libselinux (optional)
19d5d4cb6a89c844e298eb65bce6ba0fa9d58b91Zbigniew Jędrzejewski-Szmek liblzma (optional)
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering tcpwrappers (optional)
7b17a7d72f5ba5ad838b19803534c56a46f3bce9Lennart Poettering libgcrypt (optional)
7b17a7d72f5ba5ad838b19803534c56a46f3bce9Lennart Poettering libqrencode (optional)
7b17a7d72f5ba5ad838b19803534c56a46f3bce9Lennart Poettering libmicrohttpd (optional)
2cc86f094a8c316f7feb0336df3827a3264b116dZbigniew Jędrzejewski-Szmek libpython (optional)
2cc86f094a8c316f7feb0336df3827a3264b116dZbigniew Jędrzejewski-Szmek make, gcc, and similar tools
2cc86f094a8c316f7feb0336df3827a3264b116dZbigniew Jędrzejewski-Szmek
2cc86f094a8c316f7feb0336df3827a3264b116dZbigniew Jędrzejewski-Szmek During runtime you need the following additional dependencies:
2cc86f094a8c316f7feb0336df3827a3264b116dZbigniew Jędrzejewski-Szmek
c3d2d86d4f40593a361e33b101f5384a8ea2cdb7Tom Gundersen util-linux >= v2.19 (requires fsck -l, agetty -s)
c3d2d86d4f40593a361e33b101f5384a8ea2cdb7Tom Gundersen sulogin (from util-linux >= 2.22 or sysvinit-tools, optional but recommended)
2cc86f094a8c316f7feb0336df3827a3264b116dZbigniew Jędrzejewski-Szmek dracut (optional)
46ba8aae2b82bc5c87ba347e6bf914ecd5e9d51eLennart Poettering PolicyKit (optional)
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering
f1c24fea94e19cf2108abbeed1d36ded7102ab98Zbigniew Jędrzejewski-Szmek For systmed-bootchart a kernel with procfs support and several
f1c24fea94e19cf2108abbeed1d36ded7102ab98Zbigniew Jędrzejewski-Szmek proc output options enabled is required:
f1c24fea94e19cf2108abbeed1d36ded7102ab98Zbigniew Jędrzejewski-Szmek
f1c24fea94e19cf2108abbeed1d36ded7102ab98Zbigniew Jędrzejewski-Szmek CONFIG_PROC_FS
f1c24fea94e19cf2108abbeed1d36ded7102ab98Zbigniew Jędrzejewski-Szmek CONFIG_SCHEDSTATS
f1c24fea94e19cf2108abbeed1d36ded7102ab98Zbigniew Jędrzejewski-Szmek CONFIG_SCHED_DEBUG
f1c24fea94e19cf2108abbeed1d36ded7102ab98Zbigniew Jędrzejewski-Szmek
2cc86f094a8c316f7feb0336df3827a3264b116dZbigniew Jędrzejewski-Szmek When building from git you need the following additional dependencies:
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering docbook-xsl
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering xsltproc
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering automake
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering autoconf
3ede835a0486f2ecc025dede0b33e9a1edc06d30Lennart Poettering libtool
19d5d4cb6a89c844e298eb65bce6ba0fa9d58b91Zbigniew Jędrzejewski-Szmek intltool
b62cfcea00862ccbf0e5e297f8a339f70987edefMichael Biebl gperf
19d5d4cb6a89c844e298eb65bce6ba0fa9d58b91Zbigniew Jędrzejewski-Szmek gtkdocize (optional)
19d5d4cb6a89c844e298eb65bce6ba0fa9d58b91Zbigniew Jędrzejewski-Szmek python (optional)
9015fa646e04fc3cb180bea24c33d34edbb48ed7Zbigniew Jędrzejewski-Szmek sphinx (optional)
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering
fff2e5b58bab7a5ffbb7593742d462197b06728cLennart Poettering When systemd-hostnamed is used it is strongly recommended to
fff2e5b58bab7a5ffbb7593742d462197b06728cLennart Poettering install nss-myhostname to ensure that in a world of
edca2e2348b314e2d892fe6f8ae276fdc223f014Thomas Hindoe Paaboel Andersen dynamically changing hostnames the hostname stays resolvable
fff2e5b58bab7a5ffbb7593742d462197b06728cLennart Poettering under all circumstances. In fact, systemd-hostnamed will warn
bf9e477c92506884977d6c8d761969e105528f3eKay Sievers if nss-myhostname is not installed.
fff2e5b58bab7a5ffbb7593742d462197b06728cLennart Poettering
6705c2df468a6afb4f8f834822780add123065e2Lennart Poettering Note that D-Bus can link against libsystemd-login.so, which
49f43d5f91a99b23f745726aa351d8f159774357Ville Skyttä results in a cyclic build dependency. To accommodate for this
6705c2df468a6afb4f8f834822780add123065e2Lennart Poettering please build D-Bus without systemd first, then build systemd,
6705c2df468a6afb4f8f834822780add123065e2Lennart Poettering then rebuild D-Bus with systemd support.
6705c2df468a6afb4f8f834822780add123065e2Lennart Poettering
9015fa646e04fc3cb180bea24c33d34edbb48ed7Zbigniew Jędrzejewski-Szmek To build HTML documentation for python-systemd using sphinx,
9015fa646e04fc3cb180bea24c33d34edbb48ed7Zbigniew Jędrzejewski-Szmek please first install systemd (using 'make install'), and then
9015fa646e04fc3cb180bea24c33d34edbb48ed7Zbigniew Jędrzejewski-Szmek invoke sphinx-build with 'make sphinx-<target>', with <target>
9015fa646e04fc3cb180bea24c33d34edbb48ed7Zbigniew Jędrzejewski-Szmek being 'html' or 'latexpdf'. If using DESTDIR for installation,
9015fa646e04fc3cb180bea24c33d34edbb48ed7Zbigniew Jędrzejewski-Szmek pass the same DESTDIR to 'make sphinx-html' invocation.
9015fa646e04fc3cb180bea24c33d34edbb48ed7Zbigniew Jędrzejewski-Szmek
a24c64f03f9c5c0304451d8542fee853187a5168Lennart PoetteringUSERS AND GROUPS:
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering During runtime the journal daemon requires the
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering "system-journal" system group to exist. New journal files will
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering be readable by this group (but not writable) which may be used
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering to grant specific users read access.
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering It is also recommended to grant read access to all journal
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering files to the system groups "wheel" and "adm" with a command
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering like the following in the post installation script of the
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering package:
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering # setfacl -nm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/
a24c64f03f9c5c0304451d8542fee853187a5168Lennart Poettering
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart PoetteringWARNINGS:
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering systemd will warn you during boot if /etc/mtab is not a
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering symlink to /proc/mounts. Please ensure that /etc/mtab is a
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering proper symlink.
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering systemd will warn you during boot if /usr is on a different
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering file system than /. While in systemd itself very little will
ed1c99fcc13f279eccf25fc20427eb92867da245Lennart Poettering break if /usr is on a separate partition many of its
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering dependencies very likely will break sooner or later in one
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering form or another. For example udev rules tend to refer to
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering binaries in /usr, binaries that link to libraries in /usr or
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering binaries that refer to data files in /usr. Since these
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering breakages are not always directly visible systemd will warn
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering about this, since this kind of file system setup is not really
21bc923aa35d455cdef1607eb7022608c705c9f3Lennart Poettering supported anymore by the basic set of Linux OS components.
fc7a744cc44cdb80bf9bc6304fc3f80ca2cb65f9Lennart Poettering
aa1671320df5bd8aa4108c0efb34a49fdedd0e5fLennart Poettering For more information on this issue consult
aa1671320df5bd8aa4108c0efb34a49fdedd0e5fLennart Poettering http://freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
aa1671320df5bd8aa4108c0efb34a49fdedd0e5fLennart Poettering
1b4bb4fdac4dce4e658aa3743153d77c04d1a331Zbigniew Jędrzejewski-Szmek To run systemd under valgrind, compile with VALGRIND defined
1b4bb4fdac4dce4e658aa3743153d77c04d1a331Zbigniew Jędrzejewski-Szmek (e.g. ./configure CPPFLAGS='... -DVALGRIND=1'). Otherwise,
1b4bb4fdac4dce4e658aa3743153d77c04d1a331Zbigniew Jędrzejewski-Szmek false positives will be triggered by code which violates
1b4bb4fdac4dce4e658aa3743153d77c04d1a331Zbigniew Jędrzejewski-Szmek some rules but is actually safe.