systemd
DESCRIPTION
systemdTRANSCRIPT
![Page 1: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/1.jpg)
Beyond Init: systemd
LinuxKongress 2010
Lennart [email protected]
September 2010
Lennart Poettering Beyond Init: systemd
![Page 2: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/2.jpg)
Who Am I?
Software Engineer at Red Hat, Inc.
Developer of PulseAudio, Avahi and a few other Free Softwareprojects
http://0pointer.de/lennart/
IRC: mezcalero
Lennart Poettering Beyond Init: systemd
![Page 3: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/3.jpg)
“systemd is a system and session manager for Linux,
compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups, supports snapshotting andrestoring of the system state, maintains mount and automount
points and implements an elaborate transactionaldependency-based service control logic. It can work as a drop-in
replacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 4: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/4.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts.
systemd provides aggressiveparallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups, supports snapshotting andrestoring of the system state, maintains mount and automount
points and implements an elaborate transactionaldependency-based service control logic. It can work as a drop-in
replacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 5: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/5.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities,
uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups, supports snapshotting andrestoring of the system state, maintains mount and automount
points and implements an elaborate transactionaldependency-based service control logic. It can work as a drop-in
replacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 6: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/6.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services,
offers on-demand starting of daemons, keepstrack of processes using Linux cgroups, supports snapshotting and
restoring of the system state, maintains mount and automountpoints and implements an elaborate transactional
dependency-based service control logic. It can work as a drop-inreplacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 7: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/7.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons,
keepstrack of processes using Linux cgroups, supports snapshotting and
restoring of the system state, maintains mount and automountpoints and implements an elaborate transactional
dependency-based service control logic. It can work as a drop-inreplacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 8: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/8.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups,
supports snapshotting andrestoring of the system state, maintains mount and automount
points and implements an elaborate transactionaldependency-based service control logic. It can work as a drop-in
replacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 9: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/9.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups, supports snapshotting andrestoring of the system state,
maintains mount and automountpoints and implements an elaborate transactional
dependency-based service control logic. It can work as a drop-inreplacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 10: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/10.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups, supports snapshotting andrestoring of the system state, maintains mount and automount
points
and implements an elaborate transactionaldependency-based service control logic. It can work as a drop-in
replacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 11: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/11.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups, supports snapshotting andrestoring of the system state, maintains mount and automount
points and implements an elaborate transactionaldependency-based service control logic.
It can work as a drop-inreplacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 12: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/12.jpg)
“systemd is a system and session manager for Linux, compatiblewith SysV and LSB init scripts. systemd provides aggressive
parallelization capabilities, uses socket and D-Bus activation forstarting services, offers on-demand starting of daemons, keeps
track of processes using Linux cgroups, supports snapshotting andrestoring of the system state, maintains mount and automount
points and implements an elaborate transactionaldependency-based service control logic. It can work as a drop-in
replacement for sysvinit.”
Lennart Poettering Beyond Init: systemd
![Page 13: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/13.jpg)
init(8)
Lennart Poettering Beyond Init: systemd
![Page 14: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/14.jpg)
Parallelization
Lennart Poettering Beyond Init: systemd
![Page 15: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/15.jpg)
Lennart Poettering Beyond Init: systemd
![Page 16: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/16.jpg)
Socket-Based Activation
The kernel orders and buffers requests for us!
Implicit dependencies!
Patching daemons
Lennart Poettering Beyond Init: systemd
![Page 17: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/17.jpg)
Socket-Based Activation
The kernel orders and buffers requests for us!
Implicit dependencies!
Patching daemons
Lennart Poettering Beyond Init: systemd
![Page 18: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/18.jpg)
Socket-Based Activation
The kernel orders and buffers requests for us!
Implicit dependencies!
Patching daemons
Lennart Poettering Beyond Init: systemd
![Page 19: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/19.jpg)
Socket-Based Activation
The kernel orders and buffers requests for us!
Implicit dependencies!
Patching daemons
Lennart Poettering Beyond Init: systemd
![Page 20: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/20.jpg)
Bus-Based Activation
Lennart Poettering Beyond Init: systemd
![Page 21: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/21.jpg)
Starting Less: On-Demand Loading
Lennart Poettering Beyond Init: systemd
![Page 22: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/22.jpg)
Parallelizing File System Jobs
autofs!
Lennart Poettering Beyond Init: systemd
![Page 23: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/23.jpg)
Parallelizing File System Jobs
autofs!
Lennart Poettering Beyond Init: systemd
![Page 24: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/24.jpg)
Shell is evil
Move to systemd, daemons, kernel, udev, . . .
Provide proper debugging facilities
Lennart Poettering Beyond Init: systemd
![Page 25: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/25.jpg)
Shell is evil
Move to systemd, daemons, kernel, udev, . . .
Provide proper debugging facilities
Lennart Poettering Beyond Init: systemd
![Page 26: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/26.jpg)
Shell is evil
Move to systemd, daemons, kernel, udev, . . .
Provide proper debugging facilities
Lennart Poettering Beyond Init: systemd
![Page 27: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/27.jpg)
The best babysitter.
Control Groups!
Lennart Poettering Beyond Init: systemd
![Page 28: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/28.jpg)
The best babysitter.
Control Groups!
Lennart Poettering Beyond Init: systemd
![Page 29: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/29.jpg)
The best babysitter II
Environment, resource limits, working directory, chroot(), umask,OOM adjustment, nice level, IO priority and class, CPU schedulerpriority and policy/reset-on-fork, CPU affinity, timer slack, stdio tosyslog/tty/null/kmsg, uid, gid, supplementary groups, file system
namespacing (r/o file systems, inaccessible systems, mountpropagation, private /tmp), capabilities (inherited set, bounding
set, secure bits), . . .
Lennart Poettering Beyond Init: systemd
![Page 30: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/30.jpg)
The best babysitter II
Environment, resource limits, working directory, chroot(), umask,OOM adjustment, nice level, IO priority and class, CPU schedulerpriority and policy/reset-on-fork, CPU affinity, timer slack, stdio tosyslog/tty/null/kmsg, uid, gid, supplementary groups, file system
namespacing (r/o file systems, inaccessible systems, mountpropagation, private /tmp), capabilities (inherited set, bounding
set, secure bits), . . .
Lennart Poettering Beyond Init: systemd
![Page 31: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/31.jpg)
Unit types: service, socket, device, mount, automount, target,snapshot, timer, swap, path
Lennart Poettering Beyond Init: systemd
![Page 32: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/32.jpg)
Don’t reinvent the wheel:
Read SysV/LSB init script headers, read /etc/fstab, supporttraditional inetd modes, support /dev/initctl, utmp, wtmp,
support double-fork()ing daemons.
.desktop files.
Lennart Poettering Beyond Init: systemd
![Page 33: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/33.jpg)
Don’t reinvent the wheel:
Read SysV/LSB init script headers, read /etc/fstab, supporttraditional inetd modes, support /dev/initctl, utmp, wtmp,
support double-fork()ing daemons.
.desktop files.
Lennart Poettering Beyond Init: systemd
![Page 34: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/34.jpg)
Don’t reinvent the wheel:
Read SysV/LSB init script headers, read /etc/fstab, supporttraditional inetd modes, support /dev/initctl, utmp, wtmp,
support double-fork()ing daemons.
.desktop files.
Lennart Poettering Beyond Init: systemd
![Page 35: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/35.jpg)
Snapshots
Lennart Poettering Beyond Init: systemd
![Page 36: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/36.jpg)
Transaction System
Lennart Poettering Beyond Init: systemd
![Page 37: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/37.jpg)
D-Bus!
Lennart Poettering Beyond Init: systemd
![Page 38: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/38.jpg)
systemadm
Lennart Poettering Beyond Init: systemd
![Page 39: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/39.jpg)
systemd as basic OS building block
systemd for cross-distribution standardization
Lennart Poettering Beyond Init: systemd
![Page 40: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/40.jpg)
systemd as basic OS building block
systemd for cross-distribution standardization
Lennart Poettering Beyond Init: systemd
![Page 41: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/41.jpg)
systemd in the distributions
Lennart Poettering Beyond Init: systemd
![Page 42: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/42.jpg)
Future: managing sessions
Lennart Poettering Beyond Init: systemd
![Page 43: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/43.jpg)
Say No! to Copyright Assignment.
Lennart Poettering Beyond Init: systemd
![Page 44: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/44.jpg)
That’s all, folks.
Any questions?
Lennart Poettering Beyond Init: systemd
![Page 45: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/45.jpg)
That’s all, folks.
Any questions?
Lennart Poettering Beyond Init: systemd
![Page 46: Systemd](https://reader033.vdocument.in/reader033/viewer/2022060115/5577b56dd8b42a1c068b46a9/html5/thumbnails/46.jpg)
systemd
http://www.freedesktop.org/wiki/Software/systemd
http://0pointer.de/blog/projects/systemd
git://anongit.freedesktop.org/systemd
#systemd on irc.freenode.org
Lennart Poettering Beyond Init: systemd