chiark / gitweb /
journald: splitt of syslog protocol support into its own file
[elogind.git] / NEWS
1 systemd System and Service Manager
2
3 CHANGES WITH 188:
4
5         * When running in --user mode systemd will now become a
6           subreaper (PR_SET_CHILD_SUBREAPER). This should make the ps
7           tree a lot more organized.
8
9         * A new PartOf= unit dependency type has been introduced that
10           may be used to group services in a natural way.
11
12         * "systemctl enable" may now be used to enable instances of
13           services.
14
15         * journalctl now prints error log levels in red, and
16           warning/notice log levels in bright white. It also supports
17           filtering by log level now.
18
19         * cgtop gained a new -n switch (similar to top), to configure
20           the maximum number of iterations to run for. It also gained
21           -b, to run in batch mode (accepting no input).
22
23         * The suffix ".service" may now be ommited on most systemctl
24           command lines involving service unit names.
25
26         * There's a new bus call in logind to lock all sessions, as
27           well as a loginctl verb for it "lock-sessions".
28
29         * libsystemd-logind.so gained a new call sd_journal_perror()
30           that works similar to libc perror() but logs to the journal
31           and encodes structured information about the error number.
32
33         * /etc/crypttab entries now understand the new keyfile-size=
34           option.
35
36         * shutdown(8) now can send a (configurable) wall message when
37           a shutdown is cancelled.
38
39         * The mount propagation mode for the root file system will now
40           default to "shared", which is useful to make containers work
41           nicely out-of-the-box so that they receive new mounts from
42           the host. This can be undone locally by running "mount
43           --make-rprivate /" if needed.
44
45         * The prefdm.service file has been removed. Distributions
46           should maintain this unit downstream if they intend to keep
47           it around. However, we recommend writing normal unit files
48           for display managers instead.
49
50         * Since systemd is a crucial part of the OS we will now
51           default to a number of compiler switches that improve
52           security (hardening) such as read-only relocations, stack
53           protection, and suchlike.
54
55         * The TimeoutSec= setting for services is now split into
56           TimeoutStartSec= and TimeoutStopSec= to allow configuration
57           of individual time outs for the start and the stop phase of
58           the service.
59
60         Contributions from: Artur Zaprzala, Arvydas Sidorenko, Auke
61         Kok, Bryan Kadzban, Dave Reisner, David Strauss, Harald Hoyer,
62         Jim Meyering, Kay Sievers, Lennart Poettering, Mantas
63         Mikulėnas, Martin Pitt, Michal Schmidt, Michal Sekletar, Peter
64         Alfredsen, Shawn Landden, Simon Peeters, Terence Honles, Tom
65         Gundersen, Zbigniew Jędrzejewski-Szmek
66
67 CHANGES WITH 187:
68
69         * The journal and id128 C APIs are now fully documented as man
70           pages.
71
72         * Extra safety checks have been added when transitioning from
73           the initial RAM disk to the main system to avoid accidental
74           data loss.
75
76         * /etc/crypttab entries now understand the new keyfile-offset=
77           option.
78
79         * systemctl -t can now be used to filter by unit load state.
80
81         * The journal C API gained the new sd_journal_wait() call to
82           make writing synchronous journal clients easier.
83
84         * journalctl gained the new -D switch to show journals from a
85           specific directory.
86
87         * journalctl now displays a special marker between log
88           messages of two different boots.
89
90         * The journal is now explicitly flushed to /var via a service
91           systemd-journal-flush.service, rather than implicitly simply
92           by seeing /var/log/journal to be writable.
93
94         * journalctl (and the journal C APIs) can now match for much
95           more complex expressions, with alternatives and
96           disjunctions.
97
98         * When transitioning from the initial RAM disk to the main
99           system we will now kill all processes in a killing spree to
100           ensure no processes stay around by accident.
101
102         * Three new specifiers may be used in unit files: %u, %h, %s
103           resolve to the user name, user home directory resp. user
104           shell. This is useful for running systemd user instances.
105
106         * We now automatically rotate journal files if their data
107           object hash table gets a fill level > 75%. We also size the
108           hash table based on the configured maximum file size. This
109           together should lower hash collisions drastically and thus
110           speed things up a bit.
111
112         * journalctl gained the new "--header" switch to introspect
113           header data of journal files.
114
115         * A new setting SystemCallFilters= has been added to services
116           which may be used to apply blacklists or whitelists to
117           system calls. This is based on SECCOMP Mode 2 of Linux 3.5.
118
119         * nspawn gained a new --link-journal= switch (and quicker: -j)
120           to link the container journal with the host. This makes it
121           very easy to centralize log viewing on the host for all
122           guests while still keeping the journal files separated.
123
124         * Many bugfixes and optimizations
125
126         Contributions from: Auke Kok, Eelco Dolstra, Harald Hoyer, Kay
127         Sievers, Lennart Poettering, Malte Starostik, Paul Menzel, Rex
128         Tsai, Shawn Landden, Tom Gundersen, Ville Skyttä, Zbigniew
129         Jędrzejewski-Szmek
130
131 CHANGES WITH 186:
132
133         * Several tools now understand kernel command line arguments,
134           which are only read when run in an initial RAM disk. They
135           usually follow closely their normal counterparts, but are
136           prefixed with rd.
137
138         * There's a new tool to analyze the readahead files that are
139           automatically generated at boot. Use:
140
141           /usr/lib/systemd/systemd-readahead analyze /.readahead
142
143         * We now provide an early debug shell on tty9 if this enabled. Use:
144
145           systemctl enable debug-shell.service
146
147         * All plymouth related units have been moved into the Plymouth
148           package. Please make sure to upgrade your Plymouth version
149           as well.
150
151         * systemd-tmpfiles now supports getting passed the basename of
152           a configuration file only, in which case it will look for it
153           in all appropriate directories automatically.
154
155         * udevadm info now takes a /dev or /sys path as argument, and
156           does the right thing. Example:
157
158           udevadm info /dev/sda
159           udevadm info /sys/class/block/sda
160
161         * systemctl now prints a warning if a unit is stopped but a
162           unit that might trigger it continues to run. Example: a
163           service is stopped but the socket that activates it is left
164           running.
165
166         * "systemctl status" will now mention if the log output was
167           shortened due to rotation since a service has been started.
168
169         * The journal API now exposes functions to determine the
170           "cutoff" times due to rotation.
171
172         * journald now understands SIGUSR1 and SIGUSR2 for triggering
173           immediately flushing of runtime logs to /var if possible,
174           resp. for triggering immediate rotation of the journal
175           files.
176
177         * It is now considered an error if a service is attempted to
178           be stopped that is not loaded.
179
180         * XDG_RUNTIME_DIR now uses numeric UIDs instead of usernames.
181
182         * systemd-analyze now supports Python 3
183
184         * tmpfiles now supports cleaning up directories via aging
185           where the first level dirs are always kept around but
186           directories beneath it automatically aged. This is enabled
187           by prefixing the age field with '~'.
188
189         * Seat objects now expose CanGraphical, CanTTY properties
190           which is required to deal with very fast bootups where the
191           display manager might be running before the graphics drivers
192           completed initialization.
193
194         * Seat objects now expose a State property.
195
196         * We now include RPM macros for service enabling/disabling
197           based on the preset logic. We recommend RPM based
198           distributions to make use of these macros if possible. This
199           makes it simpler to reuse RPM spec files across
200           distributions.
201
202         * We now make sure that the collected systemd unit name is
203           always valid when services log to the journal via
204           STDOUT/STDERR.
205
206         * There's a new man page kernel-command-line(7) detailing all
207           command line options we understand.
208
209         * The fstab generator may now be disabled at boot by passing
210           fstab=0 on the kernel command line.
211
212         * A new kernel command line option modules-load= is now understood
213           to load a specific kernel module statically, early at boot.
214
215         * Unit names specified on the systemctl command line are now
216           automatically escaped as needed. Also, if file system or
217           device paths are specified they are automatically turned
218           into the appropriate mount or device unit names. Example:
219
220           systemctl status /home
221           systemctl status /dev/sda
222
223         * The SysVConsole= configuration option has been removed from
224           system.conf parsing.
225
226         * The SysV search path is no longer exported on the D-Bus
227           Manager object.
228
229         * The Names= option is been removed from unit file parsing.
230
231         * There's a new man page bootup(7) detailing the boot process.
232
233         * Every unit and every generator we ship with systemd now
234           comes with full documentation. The self-explanatory boot is
235           complete.
236
237         * A couple of services gained "systemd-" prefixes in their
238           name if they wrap systemd code, rather than only external
239           code. Among them fsck@.service which is now
240           systemd-fsck@.service.
241
242         * The HaveWatchdog property has been removed from the D-Bus
243           Manager object.
244
245         * systemd.confirm_spawn= on the kernel command line should now
246           work sensibly.
247
248         * There's a new man page crypttab(5) which details all options
249           we actually understand.
250
251         * systemd-nspawn gained a new --capability= switch to pass
252           additional capabilities to the container.
253
254         * timedated will now read known NTP implementation unit names
255           from /usr/lib/systemd/ntp-units.d/*.list,
256           systemd-timedated-ntp.target has been removed.
257
258         * journalctl gained a new switch "-b" that lists log data of
259           the current boot only.
260
261         * The notify socket is in the abstract namespace again, in
262           order to support daemons which chroot() at start-up.
263
264         * There is a new Storage= configuration option for journald
265           which allows configuration of where log data should go. This
266           also provides a way to disable journal logging entirely, so
267           that data collected is only forwarded to the console, the
268           kernel log buffer or another syslog implementation.
269
270         * Many bugfixes and optimizations
271
272         Contributions from: Auke Kok, Colin Guthrie, Dave Reisner,
273         David Strauss, Eelco Dolstra, Kay Sievers, Lennart Poettering,
274         Lukas Nykryn, Michal Schmidt, Michal Sekletar, Paul Menzel,
275         Shawn Landden, Tom Gundersen
276
277 CHANGES WITH 185:
278         * "systemctl help <unit>" now shows the man page if one is
279           available.
280
281         * Several new man pages have been added.
282
283         * MaxLevelStore=, MaxLevelSyslog=, MaxLevelKMsg=,
284           MaxLevelConsole= can now be specified in
285           journald.conf. These options allow reducing the amount of
286           data stored on disk or forwarded by the log level.
287
288         * TimerSlackNSec= can now be specified in system.conf for
289           PID1. This allows system-wide power savings.
290
291         Contributions from: Dave Reisner, Kay Sievers, Lauri Kasanen,
292         Lennart Poettering, Malte Starostik, Marc-Antoine Perennou,
293         Matthias Clasen
294
295 CHANGES WITH 184:
296         * logind is now capable of (optionally) handling power and
297           sleep keys as well as the lid switch.
298
299         * journalctl now understands the syntax "journalctl
300           /usr/bin/avahi-daemon" to get all log output of a specific
301           daemon.
302
303         * CapabilityBoundingSet= in system.conf now also influences
304           the capability bound set of usermode helpers of the kernel.
305
306         Contributions from: Daniel Drake, Daniel J. Walsh, Gert
307         Michael Kulyk, Harald Hoyer, Jean Delvare, Kay Sievers,
308         Lennart Poettering, Matthew Garrett, Matthias Clasen, Paul
309         Menzel, Shawn Landden, Tero Roponen, Tom Gundersen
310
311 CHANGES WITH 183:
312         * Note that we skipped 139 releases here in order to set the
313           new version to something that is greater than both udev's
314           and systemd's most recent version number.
315
316         * udev: all udev sources are merged into the systemd source tree now.
317           All future udev development will happen in the systemd tree. It
318           is still fully supported to use the udev daemon and tools without
319           systemd running, like in initramfs or other init systems. Building
320           udev though, will require the *build* of the systemd tree, but
321           udev can be properly *run* without systemd.
322
323         * udev: /lib/udev/devices/ are not read anymore; systemd-tmpfiles
324           should be used to create dead device nodes as workarounds for broken
325           subsystems.
326
327         * udev: RUN+="socket:..."  and udev_monitor_new_from_socket() is
328           no longer supported. udev_monitor_new_from_netlink() needs to be
329           used to subscribe to events.
330
331         * udev: when udevd is started by systemd, processes which are left
332           behind by forking them off of udev rules, are unconditionally cleaned
333           up and killed now after the event handling has finished. Services or
334           daemons must be started as systemd services. Services can be
335           pulled-in by udev to get started, but they can no longer be directly
336           forked by udev rules.
337
338         * udev: the daemon binary is called systemd-udevd now and installed
339           in /usr/lib/systemd/. Standalone builds or non-systemd systems need
340           to adapt to that, create symlink, or rename the binary after building
341           it.
342
343         * libudev no longer provides these symbols:
344             udev_monitor_from_socket()
345             udev_queue_get_failed_list_entry()
346             udev_get_{dev,sys,run}_path()
347           The versions number was bumped and symbol versioning introduced.
348
349         * systemd-loginctl and systemd-journalctl have been renamed
350           to loginctl and journalctl to match systemctl.
351
352         * The config files: /etc/systemd/systemd-logind.conf and
353           /etc/systemd/systemd-journald.conf have been renamed to
354           logind.conf and journald.conf. Package updates should rename
355           the files to the new names on upgrade.
356
357         * For almost all files the license is now LGPL2.1+, changed
358           from the previous GPL2.0+. Exceptions are some minor stuff
359           of udev (which will be changed to LGPL2.1 eventually, too),
360           and the MIT licensed sd-daemon.[ch] library that is suitable
361           to be used as drop-in files.
362
363         * systemd and logind now handle system sleep states, in
364           particular suspending and hibernating.
365
366         * logind now implements a sleep/shutdown/idle inhibiting logic
367           suitable for a variety of uses. Soonishly Lennart will blog
368           about this in more detail.
369
370         * var-run.mount and var-lock.mount are no longer provided
371           (which prevously bind mounted these directories to their new
372           places). Distributions which have not converted these
373           directories to symlinks should consider stealing these files
374           from git history and add them downstream.
375
376         * We introduced the Documentation= field for units and added
377           this to all our shipped units. This is useful to make it
378           easier to explore the boot and the purpose of the various
379           units.
380
381         * All smaller setup units (such as
382           systemd-vconsole-setup.service) now detect properly if they
383           are run in a container and are skipped when
384           appropriate. This guarantees an entirely noise-free boot in
385           Linux container environments such as systemd-nspawn.
386
387         * A framework for implementing offline system updates is now
388           integrated, for details see:
389           http://freedesktop.org/wiki/Software/systemd/SystemUpdates
390
391         * A new service type Type=idle is available now which helps us
392           avoiding ugly interleaving of getty output and boot status
393           messages.
394
395         * There's now a system-wide CapabilityBoundingSet= option to
396           globally reduce the set of capabilities for the
397           system. This is useful to drop CAP_SYS_MKNOD, CAP_SYS_RAWIO,
398           CAP_NET_RAW, CAP_SYS_MODULE, CAP_SYS_TIME, CAP_SYS_PTRACE or
399           even CAP_NET_ADMIN system-wide for secure systems.
400
401         * There are now system-wide DefaultLimitXXX= options to
402           globally change the defaults of the various resource limits
403           for all units started by PID 1.
404
405         * Harald Hoyer's systemd test suite has been integrated into
406           systemd which allows easy testing of systemd builds in qemu
407           and nspawn. (This is really awesome! Ask us for details!)
408
409         * The fstab parser is now implemented as generator, not inside
410           of PID 1 anymore.
411
412         * systemctl will now warn you if .mount units generated from
413           /etc/fstab are out of date due to changes in fstab that
414           haven't been read by systemd yet.
415
416         * systemd is now suitable for usage in initrds. Dracut has
417           already been updated to make use of this. With this in place
418           initrds get a slight bit faster but primarily are much
419           easier to introspect and debug since "systemctl status" in
420           the host system can be used to introspect initrd services,
421           and the journal from the initrd is kept around too.
422
423         * systemd-delta has been added, a tool to explore differences
424           between user/admin configuration and vendor defaults.
425
426         * PrivateTmp= now affects both /tmp and /var/tmp.
427
428         * Boot time status messages are now much prettier and feature
429           proper english language. Booting up systemd has never been
430           so sexy.
431
432         * Read-ahead pack files now include the inode number of all
433           files to pre-cache. When the inode changes the pre-caching
434           is not attempted. This should be nicer to deal with updated
435           packages which might result in changes of read-ahead
436           patterns.
437
438         * We now temporaritly lower the kernel's read_ahead_kb variable
439           when collecting read-ahead data to ensure the kernel's
440           built-in read-ahead does not add noise to our measurements
441           of necessary blocks to pre-cache.
442
443         * There's now RequiresMountsFor= to add automatic dependencies
444           for all mounts necessary for a specific file system path.
445
446         * MountAuto= and SwapAuto= have been removed from
447           system.conf. Mounting file systems at boot has to take place
448           in systemd now.
449
450         * nspawn now learned a new switch --uuid= to set the machine
451           ID on the command line.
452
453         * nspawn now learned the -b switch to automatically search
454           for an init system.
455
456         * vt102 is now the default TERM for serial TTYs, upgraded from
457           vt100.
458
459         * systemd-logind now works on VT-less systems.
460
461         * The build tree has been reorganized. The individual
462           components now have directories of their own.
463
464         * A new condition type ConditionPathIsReadWrite= is now available.
465
466         * nspawn learned the new -C switch to create cgroups for the
467           container in other hierarchies.
468
469         * We now have support for hardware watchdogs, configurable in
470           system.conf.
471
472         * The scheduled shutdown logic now has a public API.
473
474         * We now mount /tmp as tmpfs by default, but this can be
475           masked and /etc/fstab can override it.
476
477         * Since udisks doesn't make use of /media anymore we are not
478           mounting a tmpfs on it anymore.
479
480         * journalctl gained a new --local switch to only interleave
481           locally generated journal files.
482
483         * We can now load the IMA policy at boot automatically.
484
485         * The GTK tools have been split off into a systemd-ui.
486
487         Contributions from: Andreas Schwab, Auke Kok, Ayan George,
488         Colin Guthrie, Daniel Mack, Dave Reisner, David Ward, Elan
489         Ruusamäe, Frederic Crozat, Gergely Nagy, Guillermo Vidal,
490         Hannes Reinecke, Harald Hoyer, Javier Jardón, Kay Sievers,
491         Lennart Poettering, Lucas De Marchi, Léo Gillot-Lamure,
492         Marc-Antoine Perennou, Martin Pitt, Matthew Monaco, Maxim
493         A. Mikityanskiy, Michael Biebl, Michael Olbrich, Michal
494         Schmidt, Nis Martensen, Patrick McCarty, Roberto Sassu, Shawn
495         Landden, Sjoerd Simons, Sven Anders, Tollef Fog Heen, Tom
496         Gundersen
497
498 CHANGES WITH 44:
499         * This is mostly a bugfix release
500
501         * Support optional initialization of the machine ID from the
502           KVM or container configured UUID.
503
504         * Support immediate reboots with "systemctl reboot -ff"
505
506         * Show /etc/os-release data in systemd-analyze output
507
508         * Many bugfixes for the journal, including endianess fixes and
509           ensuring that disk space enforcement works
510
511         * sd-login.h is C++ comptaible again
512
513         * Extend the /etc/os-release format on request of the Debian
514           folks
515
516         * We now refuse non-UTF8 strings used in various configuration
517           and unit files. This is done to ensure we don't pass invalid
518           data over D-Bus or expose it elsewhere.
519
520         * Register Mimo USB Screens as suitable for automatic seat
521           configuration
522
523         * Read SELinux client context from journal clients in a race
524           free fashion
525
526         * Reorder configuration file lookup order. /etc now always
527           overrides /run in order to allow the administrator to always
528           and unconditionally override vendor supplied or
529           automatically generated data.
530
531         * The various user visible bits of the journal now have man
532           pages. We still lack man pages for the journal API calls
533           however.
534
535         * We now ship all man pages in HTML format again in the
536           tarball.
537
538         Contributions from: Dave Reisner, Dirk Eibach, Frederic
539         Crozat, Harald Hoyer, Kay Sievers, Lennart Poettering, Marti
540         Raudsepp, Michal Schmidt, Shawn Landden, Tero Roponen, Thierry
541         Reding
542
543 CHANGES WITH 43:
544         * This is mostly a bugfix release
545
546         * systems lacking /etc/os-release  are no longer supported.
547
548         * Various functionality updates to libsystemd-login.so
549
550         * Track class of PAM logins to distuingish greeters from
551           normal user logins.
552
553         Contributions from: Kay Sievers, Lennart Poettering, Michael
554         Biebl
555
556 CHANGES WITH 42:
557         * This is an important bugfix release for v41.
558
559         * Building man pages is now optional which should be useful
560           for those building systemd from git but unwilling to install
561           xsltproc.
562
563         * Watchdog support for supervising services is now usable. In
564           a future release support for hardware watchdogs
565           (i.e. /dev/watchdog) will be added building on this.
566
567         * Service start rate limiting is now configurable and can be
568           turned off per service. When a start rate limit is hit a
569           reboot can automatically be triggered.
570
571         * New CanReboot(), CanPowerOff() bus calls in systemd-logind.
572
573         Contributions from: Benjamin Franzke, Bill Nottingham,
574         Frederic Crozat, Lennart Poettering, Michael Olbrich, Michal
575         Schmidt, Michał Górny, Piotr Drąg
576
577 CHANGES WITH 41:
578         * The systemd binary is installed /usr/lib/systemd/systemd now;
579           An existing /sbin/init symlink needs to be adapted with the
580           package update.
581
582         * The code that loads kernel modules has been ported to invoke
583           libkmod directly, instead of modprobe. This means we do not
584           support systems with module-init-tools anymore.
585
586         * Watchdog support is now already useful, but still not
587           complete.
588
589         * A new kernel command line option systemd.setenv= is
590           understood to set system wide environment variables
591           dynamically at boot.
592
593         * We now limit the set of capabilities of systemd-journald.
594
595         * We now set SIGPIPE to ignore by default, since it only is
596           useful in shell pipelines, and has little use in general
597           code. This can be disabled with IgnoreSIPIPE=no in unit
598           files.
599
600         Contributions from: Benjamin Franzke, Kay Sievers, Lennart
601         Poettering, Michael Olbrich, Michal Schmidt, Tom Gundersen,
602         William Douglas
603
604 CHANGES WITH 40:
605         * This is mostly a bugfix release
606
607         * We now expose the reason why a service failed in the
608           "Result" D-Bus property.
609
610         * Rudimentary service watchdog support (will be completed over
611           the next few releases.)
612
613         * When systemd forks off in order execute some service we will
614           now immediately changes its argv[0] to reflect which process
615           it will execute. This is useful to minimize the time window
616           with a generic argv[0], which makes bootcharts more useful
617
618         Contributions from: Alvaro Soliverez, Chris Paulson-Ellis, Kay
619         Sievers, Lennart Poettering, Michael Olbrich, Michal Schmidt,
620         Mike Kazantsev, Ray Strode
621
622 CHANGES WITH 39:
623         * This is mostly a test release, but incorporates many
624           bugfixes.
625
626         * New systemd-cgtop tool to show control groups by their
627           resource usage.
628
629         * Linking against libacl for ACLs is optional again. If
630           disabled, support tracking device access for active logins
631           goes becomes unavailable, and so does access to the user
632           journals by the respective users.
633
634         * If a group "adm" exists, journal files are automatically
635           owned by them, thus allow members of this group full access
636           to the system journal as well as all user journals.
637
638         * The journal now stores the SELinux context of the logging
639           client for all entries.
640
641         * Add C++ inclusion guards to all public headers
642
643         * New output mode "cat" in the journal to print only text
644           messages, without any meta data like date or time.
645
646         * Include tiny X server wrapper as a temporary stop-gap to
647           teach XOrg udev display enumeration. This is used by display
648           managers such as gdm, and will go away as soon as XOrg
649           learned native udev hotplugging for display devices.
650
651         * Add new systemd-cat tool for executing arbitrary programs
652           with STDERR/STDOUT connected to the journal. Can also act as
653           BSD logger replacement, and does so by default.
654
655         * Optionally store all locally generated coredumps in the
656           journal along with meta data.
657
658         * systemd-tmpfiles learnt four new commands: n, L, c, b, for
659           writing short strings to files (for usage for /sys), and for
660           creating symlinks, character and block device nodes.
661
662         * New unit file option ControlGroupPersistent= to make cgroups
663           persistent, following the mechanisms outlined in
664           http://www.freedesktop.org/wiki/Software/systemd/PaxControlGroups
665
666         * Support multiple local RTCs in a sane way
667
668         * No longer monopolize IO when replaying readahead data on
669           rotating disks, since we might starve non-file-system IO to
670           death, since fanotify() will not see accesses done by blkid,
671           or fsck.
672
673         * Don't show kernel threads in systemd-cgls anymore, unless
674           requested with new -k switch.
675
676         Contributions from: Dan Horák, Kay Sievers, Lennart
677         Poettering, Michal Schmidt
678
679 CHANGES WITH 38:
680         * This is mostly a test release, but incorporates many
681           bugfixes.
682
683         * The git repository moved to:
684           git://anongit.freedesktop.org/systemd/systemd
685           ssh://git.freedesktop.org/git/systemd/systemd
686
687         * First release with the journal
688           http://0pointer.de/blog/projects/the-journal.html
689
690         * The journal replaces both systemd-kmsg-syslogd and
691           systemd-stdout-bridge.
692
693         * New sd_pid_get_unit() API call in libsystemd-logind
694
695         * Many systemadm clean-ups
696
697         * Introduce remote-fs-pre.target which is ordered before all
698           remote mounts and may be used to start services before all
699           remote mounts.
700
701         * Added Mageia support
702
703         * Add bash completion for systemd-loginctl
704
705         * Actively monitor PID file creation for daemons which exit in
706           the parent process before having finished writing the PID
707           file in the daemon process. Daemons which do this need to be
708           fixed (i.e. PID file creation must have finished before the
709           parent exits), but we now react a bit more gracefully to them.
710
711         * Add colourful boot output, mimicking the well-known output
712           of existing distributions.
713
714         * New option PassCredentials= for socket units, for
715           compatibility with a recent kernel ABI breakage.
716
717         * /etc/rc.local is now hooked in via a generator binary, and
718           thus will no longer act as synchronization point during
719           boot.
720
721         * systemctl list-unit-files now supports --root=.
722
723         * systemd-tmpfiles now understands two new commands: z, Z for
724           relabelling files according to the SELinux database. This is
725           useful to apply SELinux labels to specific files in /sys,
726           among other things.
727
728         * Output of SysV services is now forwarded to both the console
729           and the journal by default, not only just the console.
730
731         * New man pages for all APIs from libsystemd-login.
732
733         * The build tree got reorganized and a the build system is a
734           lot more modular allowing embedded setups to specifically
735           select the components of systemd they are interested in.
736
737         * Support for Linux systems lacking the kernel VT subsystem is
738           restored.
739
740         * configure's --with-rootdir= got renamed to
741           --with-rootprefix= to follow the naming used by udev and
742           kmod
743
744         * Unless specified otherwise we'll now install to /usr instead
745           of /usr/local by default.
746
747         * Processes with '@' in argv[0][0] are now excluded from the
748           final shut-down killing spree, following the logic explained
749           in:
750           http://www.freedesktop.org/wiki/Software/systemd/RootStorageDaemons
751
752         * All processes remaining in a service cgroup when we enter
753           the START or START_PRE states are now killed with
754           SIGKILL. That means it is no longer possible to spawn
755           background processes from ExecStart= lines (which was never
756           supported anyway, and bad style).
757
758         * New PropagateReloadTo=/PropagateReloadFrom= options to bind
759           reloading of units together.
760
761         Contributions from: Bill Nottingham, Daniel J. Walsh, Dave
762         Reisner, Dexter Morgan, Gregs Gregs, Jonathan Nieder, Kay
763         Sievers, Lennart Poettering, Michael Biebl, Michal Schmidt,
764         Michał Górny, Ran Benita, Thomas Jarosch, Tim Waugh, Tollef
765         Fog Heen, Tom Gundersen, Zbigniew Jędrzejewski-Szmek