chiark / gitweb /
hwdb: update pci data
[elogind.git] / NEWS
diff --git a/NEWS b/NEWS
index ef91f81f0afed5f36125dafd1dfcdec9960d7310..7628ba806e8202c9b809f5e27112b293dc865b9a 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,443 @@
 systemd System and Service Manager
 
+CHANGES WITH 195:
+
+        * journalctl gained new --since= and --until= switches to
+          filter by time. It also now supports nice filtering for
+          units via --unit=/-u.
+
+        * Type=oneshot services may use ExecReload= and do the
+          right thing.
+
+        * The journal daemon now supports time-based rotation and
+          vacuuming, in addition to the usual disk-space based
+          rotation.
+
+        * The journal will now index the available field values for
+          each field name. This enables clients to show pretty drop
+          downs of available match values when filtering. The bash
+          completion of journalctl has been updated
+          accordingly. journalctl gained a new switch -F to list all
+          values a certain field takes in the journal database.
+
+        * More service events are now written as structured messages
+          to the journal, and made recognizable via message IDs.
+
+        * The timedated, localed and hostnamed mini-services which
+          previously only provided support for changing time, locale
+          and hostname settings from graphical DEs such as GNOME now
+          also have a minimal (but very useful) text-based client
+          utility each. This is probably the nicest way to changing
+          these settings from the command line now, especially since
+          it lists available options and is fully integrated with bash
+          completion.
+
+        * There's now a new tool "systemd-coredumpctl" to list and
+          extract coredumps from the journal.
+
+        * We now install a README each in /var/log/ and
+          /etc/rc.d/init.d explaining where the system logs and init
+          scripts went. This hopefully should help folks who go to
+          that dirs and look into the otherwise now empty void and
+          scratch their heads.
+
+        * When user-services are invoked (by systemd --user) the
+          $MANAGERPID env var is set to the PID of systemd.
+
+        * SIGRTMIN+24 when sent to a --user instance will now result
+          in immediate termination of systemd.
+
+        * gatewayd received numerous feature additions such as a
+          "follow" mode, for live syncing and filtering.
+
+        * browse.html now allows filtering and showing detailed
+          information on specific entries. Keyboard navigation and
+          mouse screen support has been added.
+
+        * gatewayd/journalctl now supports HTML5/JSON
+          Server-Sent-Events as output.
+
+        * The SysV init script compatibility logic will now
+          heuristically determine whether a script supports the
+          "reload" verb, and only then make this available as
+          "systemctl reload".
+
+        * "systemctl status --follow" has been removed, use "journalctl
+          -u" instead.
+
+        * journald.conf's RuntimeMinSize=, PersistentMinSize= settings
+          have been removed since they are hardly useful to be
+          configured.
+
+        * And I'd like to take the opportunity to specifically mention
+          Zbigniew for his great contributions. Zbigniew, you rock!
+
+        Contributions from: Andrew Eikum, Christian Hesse, Colin
+        Guthrie, Daniel J Walsh, Dave Reisner, Eelco Dolstra, Ferenc
+        Wágner, Kay Sievers, Lennart Poettering, Lukas Nykryn, Mantas
+        Mikulėnas, Martin Mikkelsen, Martin Pitt, Michael Olbrich,
+        Michael Stapelberg, Michal Schmidt, Sebastian Ott, Thomas
+        Bächler, Umut Tezduyar, Will Woods, Wulf C. Krueger, Zbigniew
+        Jędrzejewski-Szmek, Сковорода Никита Андреевич
+
+CHANGES WITH 194:
+
+        * If /etc/vconsole.conf is non-existent or empty we will no
+          longer load any console font or key map at boot by
+          default. Instead the kernel defaults will be left
+          intact. This is definitely the right thing to do, as no
+          configuration should mean no configuration, and hard-coding
+          font names that are different on all archs is probably a bad
+          idea. Also, the kernel default key map and font should be
+          good enough for most cases anyway, and mostly identical to
+          the userspace fonts/key maps we previously overloaded them
+          with. If distributions want to continue to default to a
+          non-kernel font or key map they should ship a default
+          /etc/vconsole.conf with the appropriate contents.
+
+        Contributions from: Colin Walters, Daniel J Walsh, Dave
+        Reisner, Kay Sievers, Lennart Poettering, Lukas Nykryn, Tollef
+        Fog Heen, Tom Gundersen, Zbigniew Jędrzejewski-Szmek
+
+CHANGES WITH 193:
+
+        * journalctl gained a new --cursor= switch to show entries
+          starting from the specified location in the journal.
+
+        * We now enforce a size limit on journal entry fields exported
+          with "-o json" in journalctl. Fields larger than 4K will be
+          assigned null. This can be turned off with --all.
+
+        * An (optional) journal gateway daemon is now available as
+          "systemd-journal-gatewayd.service". This service provides
+          access to the journal via HTTP and JSON. This functionality
+          will be used to implement live log synchronization in both
+          pull and push modes, but has various other users too, such
+          as easy log access for debugging of embedded devices. Right
+          now it is already useful to retrieve the journal via HTTP:
+
+          # systemctl start systemd-journal-gatewayd.service
+          # wget http://localhost:19531/entries
+
+          This will download the journal contents in a
+          /var/log/messages compatible format. The same as JSON:
+
+          # curl -H"Accept: application/json" http://localhost:19531/entries
+
+          This service is also accessible via a web browser where a
+          single static HTML5 app is served that uses the JSON logic
+          to enable the user to do some basic browsing of the
+          journal. This will be extended later on. Here's an example
+          screenshot of this app in its current state:
+
+          http://0pointer.de/public/journal-gatewayd
+
+        Contributions from: Kay Sievers, Lennart Poettering, Robert
+        Milasan, Tom Gundersen
+
+CHANGES WITH 192:
+
+        * The bash completion logic is now available for journalctl
+          too.
+
+        * We don't mount the "cpuset" controller anymore together with
+          "cpu" and "cpuacct", as "cpuset" groups generally cannot be
+          started if no parameters are assigned to it. "cpuset" hence
+          broke code that assumed it it could create "cpu" groups and
+          just start them.
+
+        * journalctl -f will now subscribe to terminal size changes,
+          and line break accordingly.
+
+        Contributions from: Dave Reisner, Kay Sievers, Lennart
+        Poettering, Lukas Nykrynm, Mirco Tischler, Václav Pavlín
+
+CHANGES WITH 191:
+
+        * nspawn will now create a symlink /etc/localtime in the
+          container environment, copying the host's timezone
+          setting. Previously this has been done via a bind mount, but
+          since symlinks cannot be bind mounted this has now been
+          changed to create/update the appropriate symlink.
+
+        * journalctl -n's line number argument is now optional, and
+          will default to 10 if omitted.
+
+        * journald will now log the maximum size the journal files may
+          take up on disk. This is particularly useful if the default
+          built-in logic of determining this parameter from the file
+          system size is used. Use "systemctl status
+          systemd-journald.service" to see this information.
+
+        * The multi-seat X wrapper tool has been stripped down. As X
+          is now capable of enumerating graphics devices via udev in a
+          seat-aware way the wrapper is not strictly necessary
+          anymore. A stripped down temporary stop-gap is still shipped
+          until the upstream display managers have been updated to
+          fully support the new X logic. Expect this wrapper to be
+          removed entirely in one of the next releases.
+
+        * HandleSleepKey= in logind.conf has been split up into
+          HandleSuspendKey= and HandleHibernateKey=. The old setting
+          is not available anymore. X11 and the kernel are
+          distuingishing between these keys and we should too. This
+          also means the inhibition lock for these keys has been split
+          into two.
+
+        Contributions from: Dave Airlie, Eelco Dolstra, Lennart
+        Poettering, Lukas Nykryn, Václav Pavlín
+
+CHANGES WITH 190:
+
+        * Whenever a unit changes state we'll now log this to the
+          journal and show along the unit's own log output in
+          "systemctl status".
+
+        * ConditionPathIsMountPoint= can now properly detect bind
+          mount points too. (Previously, a bind mount of one file
+          system to another place in the same file system could not be
+          detected as mount, since they shared struct stat's st_dev
+          field.)
+
+        * We will now mount the cgroup controllers cpu, cpuacct,
+          cpuset and the controllers net_cls, net_prio together by
+          default.
+
+        * nspawn containers will now have a virtualized boot
+          ID. (i.e. /proc/sys/kernel/random/boot_id is now mounted
+          over with a randomized ID at container initialization). This
+          has the effect of making "journalctl -b" do the right thing
+          in a container.
+
+        * The JSON output journal serialization has been updated not
+          to generate "endless" list objects anymore, but rather one
+          JSON object per line. This is more in line how most JSON
+          parsers expect JSON objects. The new output mode
+          "json-pretty" has been added to provide similar output, but
+          neatly aligned for readability by humans.
+
+        * We dropped all explicit sync() invocations in the shutdown
+          code. The kernel does this implicitly anyway in the kernel
+          reboot() syscall. halt(8)'s -n option is now a compatibility
+          no-op.
+
+        * We now support virtualized reboot() in containers, as
+          supported by newer kernels. We will fall back to exit() if
+          CAP_SYS_REBOOT is not available to the container. Also,
+          nspawn makes use of this now and will actually reboot the
+          container if the containerized OS asks for that.
+
+        * journalctl will only show local log output by default
+          now. Use --merge (-m) to show remote log output, too.
+
+        * libsystemd-journal gained the new sd_journal_get_usage()
+          call to determine the current disk usage of all journal
+          files. This is exposed in the new "journalctl --disk-usage"
+          command.
+
+        * journald gained a new configuration setting SplitMode= in
+          journald.conf which may be used to control how user journals
+          are split off. See journald.conf(5) for details.
+
+        * A new condition type ConditionFileNotEmpty= has been added.
+
+        * tmpfiles' "w" lines now support file globbing, to write
+          multiple files at once.
+
+        * We added Python bindings for the journal submission
+          APIs. More Python APIs for a number of selected APIs will
+          likely follow. Note that we intend to add native bindings
+          only for the Python language, as we consider it common
+          enough to deserve bindings shipped within systemd. There are
+          various projects outside of systemd that provide bindings
+          for languages such as PHP or Lua.
+
+        * Many conditions will now resolve specifiers such as %i. In
+          addition, PathChanged= and related directives of .path units
+          now support specifiers as well.
+
+        * There's now a new RPM macro definition for the system preset
+          dir: %_presetdir.
+
+        * journald will now warn if it can't foward a message to the
+          syslog daemon because it's socket is full.
+
+        * timedated will no longer write or process /etc/timezone,
+          except on Debian. As we do not support late mounted /usr
+          anymore /etc/localtime always being a symlink is now safe,
+          and hence the information in /etc/timezone is not necessary
+          anymore.
+
+        * logind will now always reserve one VT for a text getty (VT6
+          by default). Previously if more than 6 X sessions where
+          started they took up all the VTs with auto-spawned gettys,
+          so that no text gettys were available anymore.
+
+        * udev will now automatically inform the btrfs kernel logic
+          about btrfs RAID components showing up. This should make
+          simple hotplug based btrfs RAID assembly work.
+
+        * PID 1 will now increase its RLIMIT_NOFILE to 64K by default
+          (but not for its children which will stay at the kernel
+          default). This should allow setups with a lot more listening
+          sockets.
+
+        * systemd will now always pass the configured timezone to the
+          kernel at boot. timedated will do the same when the timezone
+          is changed.
+
+        * logind's inhibition logic has been updated. By default,
+          logind will now handle the lid switch, the power and sleep
+          keys all the time, even in graphical sessions. If DEs want
+          to handle these events on their own they should take the new
+          handle-power-key, handle-sleep-key and handle-lid-switch
+          inhibitors during their runtime. A simple way to achiveve
+          that is to invoke the DE wrapped in an invocation of:
+
+          systemd-inhibit --what=handle-power-key:handle-sleep-key:handle-lid-switch ...
+
+        * Access to unit operations is now checked via SELinux taking
+          the unit file label and client process label into account.
+
+        * systemd will now notify the administrator in the journal
+          when he over-mounts a non-empty directory.
+
+        * There are new specifiers that are resolved in unit files,
+          for the host name (%H), the machine ID (%m) and the boot ID
+          (%b).
+
+        Contributions from: Allin Cottrell, Auke Kok, Brandon Philips,
+        Colin Guthrie, Colin Walters, Daniel J Walsh, Dave Reisner,
+        Eelco Dolstra, Jan Engelhardt, Kay Sievers, Lennart
+        Poettering, Lucas De Marchi, Lukas Nykryn, Mantas Mikulėnas,
+        Martin Pitt, Matthias Clasen, Michael Olbrich, Pierre Schmitz,
+        Shawn Landden, Thomas Hindoe Paaboel Andersen, Tom Gundersen,
+        Václav Pavlín, Yin Kangkai, Zbigniew Jędrzejewski-Szmek
+
+CHANGES WITH 189:
+
+        * Support for reading structured kernel messages from
+          /dev/kmsg has now been added and is enabled by default.
+
+        * Support for reading kernel messages from /proc/kmsg has now
+          been removed. If you want kernel messages in the journal
+          make sure to run a recent kernel (>= 3.5) that supports
+          reading structured messages from /dev/kmsg (see
+          above). /proc/kmsg is now exclusive property of classic
+          syslog daemons again.
+
+        * The libudev API gained the new
+          udev_device_new_from_device_id() call.
+
+        * The logic for file system namespace (ReadOnlyDirectory=,
+          ReadWriteDirectoy=, PrivateTmp=) has been reworked not to
+          require pivot_root() anymore. This means fewer temporary
+          directories are created below /tmp for this feature.
+
+        * nspawn containers will now see and receive all submounts
+          made on the host OS below the root file system of the
+          container.
+
+        * Forward Secure Sealing is now supported for Journal files,
+          which provide cryptographical sealing of journal files so
+          that attackers cannot alter log history anymore without this
+          being detectable. Lennart will soon post a blog story about
+          this explaining it in more detail.
+
+        * There are two new service settings RestartPreventExitStatus=
+          and SuccessExitStatus= which allow configuration of exit
+          status (exit code or signal) which will be excepted from the
+          restart logic, resp. consider successful.
+
+        * journalctl gained the new --verify switch that can be used
+          to check the integrity of the structure of journal files and
+          (if Forward Secure Sealing is enabled) the contents of
+          journal files.
+
+        * nspawn containers will now be run with /dev/stdin, /dev/fd/
+          and similar symlinks pre-created. This makes running shells
+          as container init process a lot more fun.
+
+        * The fstab support can now handle PARTUUID= and PARTLABEL=
+          entries.
+
+        * A new ConditionHost= condition has been added to match
+          against the hostname (with globs) and machine ID. This is
+          useful for clusters where a single OS image is used to
+          provision a large number of hosts which shall run slightly
+          different sets of services.
+
+        * Services which hit the restart limit will now be placed in a
+          failure state.
+
+        Contributions from: Bertram Poettering, Dave Reisner, Huang
+        Hang, Kay Sievers, Lennart Poettering, Lukas Nykryn, Martin
+        Pitt, Simon Peeters, Zbigniew Jędrzejewski-Szmek
+
+CHANGES WITH 188:
+
+        * When running in --user mode systemd will now become a
+          subreaper (PR_SET_CHILD_SUBREAPER). This should make the ps
+          tree a lot more organized.
+
+        * A new PartOf= unit dependency type has been introduced that
+          may be used to group services in a natural way.
+
+        * "systemctl enable" may now be used to enable instances of
+          services.
+
+        * journalctl now prints error log levels in red, and
+          warning/notice log levels in bright white. It also supports
+          filtering by log level now.
+
+        * cgtop gained a new -n switch (similar to top), to configure
+          the maximum number of iterations to run for. It also gained
+          -b, to run in batch mode (accepting no input).
+
+        * The suffix ".service" may now be ommited on most systemctl
+          command lines involving service unit names.
+
+        * There's a new bus call in logind to lock all sessions, as
+          well as a loginctl verb for it "lock-sessions".
+
+        * libsystemd-logind.so gained a new call sd_journal_perror()
+          that works similar to libc perror() but logs to the journal
+          and encodes structured information about the error number.
+
+        * /etc/crypttab entries now understand the new keyfile-size=
+          option.
+
+        * shutdown(8) now can send a (configurable) wall message when
+          a shutdown is cancelled.
+
+        * The mount propagation mode for the root file system will now
+          default to "shared", which is useful to make containers work
+          nicely out-of-the-box so that they receive new mounts from
+          the host. This can be undone locally by running "mount
+          --make-rprivate /" if needed.
+
+        * The prefdm.service file has been removed. Distributions
+          should maintain this unit downstream if they intend to keep
+          it around. However, we recommend writing normal unit files
+          for display managers instead.
+
+        * Since systemd is a crucial part of the OS we will now
+          default to a number of compiler switches that improve
+          security (hardening) such as read-only relocations, stack
+          protection, and suchlike.
+
+        * The TimeoutSec= setting for services is now split into
+          TimeoutStartSec= and TimeoutStopSec= to allow configuration
+          of individual time outs for the start and the stop phase of
+          the service.
+
+        Contributions from: Artur Zaprzala, Arvydas Sidorenko, Auke
+        Kok, Bryan Kadzban, Dave Reisner, David Strauss, Harald Hoyer,
+        Jim Meyering, Kay Sievers, Lennart Poettering, Mantas
+        Mikulėnas, Martin Pitt, Michal Schmidt, Michal Sekletar, Peter
+        Alfredsen, Shawn Landden, Simon Peeters, Terence Honles, Tom
+        Gundersen, Zbigniew Jędrzejewski-Szmek
+
 CHANGES WITH 187:
 
         * The journal and id128 C APIs are now fully documented as man
@@ -9,7 +447,7 @@ CHANGES WITH 187:
           the initial RAM disk to the main system to avoid accidental
           data loss.
 
-        * /etc/crypttab entrie now understand the new keyfile-offset=
+        * /etc/crypttab entries now understand the new keyfile-offset=
           option.
 
         * systemctl -t can now be used to filter by unit load state.
@@ -211,6 +649,7 @@ CHANGES WITH 186:
         Shawn Landden, Tom Gundersen
 
 CHANGES WITH 185:
+
         * "systemctl help <unit>" now shows the man page if one is
           available.
 
@@ -229,6 +668,7 @@ CHANGES WITH 185:
         Matthias Clasen
 
 CHANGES WITH 184:
+
         * logind is now capable of (optionally) handling power and
           sleep keys as well as the lid switch.
 
@@ -245,6 +685,7 @@ CHANGES WITH 184:
         Menzel, Shawn Landden, Tero Roponen, Tom Gundersen
 
 CHANGES WITH 183:
+
         * Note that we skipped 139 releases here in order to set the
           new version to something that is greater than both udev's
           and systemd's most recent version number.
@@ -432,6 +873,7 @@ CHANGES WITH 183:
         Gundersen
 
 CHANGES WITH 44:
+
         * This is mostly a bugfix release
 
         * Support optional initialization of the machine ID from the
@@ -477,6 +919,7 @@ CHANGES WITH 44:
         Reding
 
 CHANGES WITH 43:
+
         * This is mostly a bugfix release
 
         * systems lacking /etc/os-release  are no longer supported.
@@ -490,6 +933,7 @@ CHANGES WITH 43:
         Biebl
 
 CHANGES WITH 42:
+
         * This is an important bugfix release for v41.
 
         * Building man pages is now optional which should be useful
@@ -511,6 +955,7 @@ CHANGES WITH 42:
         Schmidt, Michał Górny, Piotr Drąg
 
 CHANGES WITH 41:
+
         * The systemd binary is installed /usr/lib/systemd/systemd now;
           An existing /sbin/init symlink needs to be adapted with the
           package update.
@@ -538,6 +983,7 @@ CHANGES WITH 41:
         William Douglas
 
 CHANGES WITH 40:
+
         * This is mostly a bugfix release
 
         * We now expose the reason why a service failed in the
@@ -556,6 +1002,7 @@ CHANGES WITH 40:
         Mike Kazantsev, Ray Strode
 
 CHANGES WITH 39:
+
         * This is mostly a test release, but incorporates many
           bugfixes.
 
@@ -613,6 +1060,7 @@ CHANGES WITH 39:
         Poettering, Michal Schmidt
 
 CHANGES WITH 38:
+
         * This is mostly a test release, but incorporates many
           bugfixes.